npm package: @qapm/sse-minitor
Description: qapm js sse monitor client
Author: nickyliu,smithdeng
Latest version: 1.0.4

# RUM大模型体验分析web-sdk使用文档

sdk版本：1.0.4

## 1、接入参数说明

| 字段名                  | 是否必填 | 类型          | 说明                                                                           | 默认值                  |
| ----------------------- | -------- | ------------- | ------------------------------------------------------------------------------ | ----------------------- |
| ​**app_key**​           | 是       | string        | 上报的ID，需在RUM产品创建并获取，https://console.cloud.tencent.com/monitor/app |                         |
| ​**llm_ver**​           | 是       | string        | 大模型版本号，可通过 `setLLMVer` 动态设置                                      |                         |
| ​**include_url_reg**​   | 是       | array<regex>  | 需要监控的URL正则表达式数组                                                    |                         |
| ​**use_fetch**​         | 否       | boolean       | 是否监控 `window.fetch` 的流式请求                                             | true                    |
| ​**use_xhr**​           | 否       | boolean       | 是否监控 `window.XMLHttpRequest` 的流式请求                                    | true                    |
| ​**user_event_source**​ | 否       | boolean       | 是否监控 `window.EventSource`                                                  | true                    |
| ​**user_id**​           | 否       | string        | 用户ID，可通过 `setUserID` 动态设置                                            |                         |
| ​**qapm_base_url**​     | 否       | string        | 性能数据上报地址                                                               | https://app.rumt-zh.com |
| ​**version**​           | 否       | string        | 前端版本号                                                                     |                         |
| ​**host_ip**​           | 否       | string        | 接口服务端IP，可通过 `setHostIP` 动态设置                                      | UNSUPPORTED             |
| ​**log_level**​         | 否       | string (枚举) | 日志级别：none（关闭）、error、warn、info、debug、log                          | none                    |

## 2、接入方式

### （1）使用script标签的方式接入

```html
    <script src="https://qapmcdn-1253358381.cos.ap-guangzhou.myqcloud.com/web-sdk/latest/sse.qapm.js"></script>
    <script>
        const option = {
            app_key: "5f68970f-10248",
            llm_ver: "deepseek-7b",
            include_url_reg: [/conversation/, /https\:\/\/fibona\.woa\.com\/v1\/component\/session\/\d+$/],

            use_fetch: true,
            use_xhr: true,
            use_event_source: true,
            user_id: "smithabc",
            qapm_base_url: "https://app.rumt-zh.com",
            version: "1.0.0",
            host_ip: "10.2.3.40"
        }
        window.QAPM.initLLMMonitor(option)
    </script>
```

### （2）npm安装后，使用import接入

安装依赖：
```npm install @qapm/sse-minitor```

引入：

```javascript
import {
    initLLMMonitor
} from "@qapm/sse-minitor"
const option = {
    app_key: "5f68970f-10248",
    llm_ver: "deepseek-7b",
    include_url_reg: [/conversation/, /https\:\/\/fibona\.woa\.com\/v1\/component\/session\/\d+$/],

    use_fetch: true,
    use_xhr: true,
    use_event_source: true,
    user_id: "smithabc",
    qapm_base_url: "https://app.rumt-zh.com",
    version: "1.0.0",
    host_ip: "10.2.3.40"
}
initLLMMonitor(option)
```

## 3、可用接口

### （1）设置用户ID

```javascript
import {
    setUserID
} from "@qapm/sse-minitor";
setUserID("OA::smithdeng");
或者
window.QAPM.setUserID("OA::smithdeng");
```

### （2）设置模型版本

```javascript
import {
    setLLMVer
} from "@qapm/sse-minitor";
setLLMVer("hunyuan-7b");
或者
window.QAPM.setLLMVer("hunyuan-7b");
```

### （3）设置模型接口的服务端IP

```javascript
import {
    setHostIP
} from "@qapm/sse-minitor";
setHostIP("10.2.3.40");
或者
window.QAPM.setHostIP("10.2.3.40");
```