chore: fix doc url for comments
parent
97667817cb
commit
8e8267b0a6
20
README.md
20
README.md
|
|
@ -10,8 +10,8 @@
|
|||
1. 需要准备两个 Terminal,分别启动服务端、前端页面。
|
||||
2. **根据你自定义的
|
||||
RoomId、UserId 以及申请的 AppID、BusinessID(如有)、Token、ASR AppID、TTS AppID,修改 `src/config/config.ts` 文件中 `ConfigFactory` 中 `BaseConfig` 的配置信息**。
|
||||
3. 使用火山引擎控制台账号的 [AK、SK](https://console.volcengine.com/iam/keymanage)、[SessionToken](https://www.volcengine.com/docs/6348/1315561#sub)(临时token, 子账号才需要), 修改 `Server/app.js` 文件中的 `ACCOUNT_INFO`。
|
||||
4. 您需要在 [火山方舟-在线推理](https://console.volcengine.com/ark/region:ark+cn-beijing/endpoint?config=%7B%7D) 中创建接入点, 并将模型对应的接入点 ID 填入 `src/config/common.ts` 文件中的 `ARK_V3_MODEL_ID`, 否则无法正常启动智能体。
|
||||
3. 使用火山引擎控制台账号的 [AK、SK](https://console.volcengine.com/iam/keymanage?s=g)、[SessionToken](https://www.volcengine.com/docs/6348/1315561#sub?s=g)(临时token, 子账号才需要), 修改 `Server/app.js` 文件中的 `ACCOUNT_INFO`。
|
||||
4. 您需要在 [火山方舟-在线推理](https://console.volcengine.com/ark/region:ark+cn-beijing/endpoint?config=%7B%7D&s=g) 中创建接入点, 并将模型对应的接入点 ID 填入 `src/config/common.ts` 文件中的 `ARK_V3_MODEL_ID`, 否则无法正常启动智能体。
|
||||
5. 如果您已经自行完成了服务端的逻辑,可以不依赖 Demo 中的 Server,直接修改前端代码文件 `src/config/index.ts` 中的 `AIGC_PROXY_HOST` 请求域名和接口,并在 `src/app/api.ts` 中修改接口的参数配置 `APIS_CONFIG`。
|
||||
|
||||
## 快速开始
|
||||
|
|
@ -42,18 +42,18 @@ yarn dev
|
|||
### 常见问题
|
||||
| 问题 | 解决方案 |
|
||||
| :-- | :-- |
|
||||
| **启动智能体之后, 对话无反馈,或者一直停留在 "AI 准备中, 请稍侯"** | <li>可能因为控制台中相关权限没有正常授予,请参考[流程](https://www.volcengine.com/docs/6348/1315561)再次确认下是否完成相关操作。此问题的可能性较大,建议仔细对照是否已经将相应的权限开通。</li><li>参数传递可能有问题, 例如参数大小写、类型等问题,请再次确认下这类型问题是否存在。</li><li>相关资源可能未开通或者用量不足,请再次确认。</li><li>**请检查当前使用的模型 ID 等内容都是正确且可用的。**</li> |
|
||||
| `Server/app.js` 中的 `sessionToken` 是什么,该怎么填,为什么要填 | `sessionToken` 是火山引擎子账号发起 OpenAPI 请求时所必须携带的临时 Token,获取方式可参考 [此文章末尾](https://www.volcengine.com/docs/6348/1315561)。 |
|
||||
| **启动智能体之后, 对话无反馈,或者一直停留在 "AI 准备中, 请稍侯"** | <li>可能因为控制台中相关权限没有正常授予,请参考[流程](https://www.volcengine.com/docs/6348/1315561?s=g)再次确认下是否完成相关操作。此问题的可能性较大,建议仔细对照是否已经将相应的权限开通。</li><li>参数传递可能有问题, 例如参数大小写、类型等问题,请再次确认下这类型问题是否存在。</li><li>相关资源可能未开通或者用量不足,请再次确认。</li><li>**请检查当前使用的模型 ID 等内容都是正确且可用的。**</li> |
|
||||
| `Server/app.js` 中的 `sessionToken` 是什么,该怎么填,为什么要填 | `sessionToken` 是火山引擎子账号发起 OpenAPI 请求时所必须携带的临时 Token,获取方式可参考 [此文章末尾](https://www.volcengine.com/docs/6348/1315561?s=g)。 |
|
||||
| **浏览器报了 `Uncaught (in promise) r: token_error` 错误** | 请检查您填在项目中的 RTC Token 是否合法,检测用于生成 Token 的 UserId、RoomId 是否与项目中填写的一致。 |
|
||||
| [StartVoiceChat]Failed(Reason: The task has been started. Please do not call the startup task interface repeatedly.) 报错 | 由于目前设置的 RoomId、UserId 为固定值,重复调用 startAudioBot 会导致出错,只需先调用 stopAudioBot 后再重新 startAudioBot 即可。 |
|
||||
| 为什么我的麦克风正常、摄像头也正常,但是设备没有正常工作? | 可能是设备权限未授予,详情可参考 [Web 排查设备权限获取失败问题](https://www.volcengine.com/docs/6348/1356355)。 |
|
||||
| 为什么我的麦克风正常、摄像头也正常,但是设备没有正常工作? | 可能是设备权限未授予,详情可参考 [Web 排查设备权限获取失败问题](https://www.volcengine.com/docs/6348/1356355?s=g)。 |
|
||||
| 接口调用时, 返回 "Invalid 'Authorization' header, Pls check your authorization header" 错误 | `Server/app.js` 中的 AK/SK/SessionToken 不正确 |
|
||||
| 什么是 RTC | **R**eal **T**ime **C**ommunication, RTC 的概念可参考[官网文档](https://www.volcengine.com/docs/6348/66812)。 |
|
||||
| 不清楚什么是主账号,什么是子账号 | 可以参考[官方概念](https://www.volcengine.com/docs/6257/64963?hyperlink_open_type=lark.open_in_browser) 。|
|
||||
| 什么是 RTC | **R**eal **T**ime **C**ommunication, RTC 的概念可参考[官网文档](https://www.volcengine.com/docs/6348/66812?s=g)。 |
|
||||
| 不清楚什么是主账号,什么是子账号 | 可以参考[官方概念](https://www.volcengine.com/docs/6257/64963?hyperlink_open_type=lark.open_in_browser&s=g) 。|
|
||||
|
||||
如果有上述以外的问题,欢迎联系我们反馈。
|
||||
|
||||
### 相关文档
|
||||
- [场景介绍](https://www.volcengine.com/docs/6348/1310537)
|
||||
- [Demo 体验](https://www.volcengine.com/docs/6348/1310559)
|
||||
- [场景搭建方案](https://www.volcengine.com/docs/6348/1310560)
|
||||
- [场景介绍](https://www.volcengine.com/docs/6348/1310537?s=g)
|
||||
- [Demo 体验](https://www.volcengine.com/docs/6348/1310559?s=g)
|
||||
- [场景搭建方案](https://www.volcengine.com/docs/6348/1310560?s=g)
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ export enum ACTIONS {
|
|||
/**
|
||||
* @brief 请求参数类型
|
||||
* @note OpenAPI 接口参数结构可能更新, 请参阅最新文档内容。
|
||||
* https://www.volcengine.com/docs/6348/1404673
|
||||
* https://www.volcengine.com/docs/6348/1404673?s=g
|
||||
*/
|
||||
export interface RequestParams {
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ export enum CustomParamsType {
|
|||
* @brief AI 音色可选值
|
||||
* @default 通用女声
|
||||
* @notes 通用女声、通用男声为默认音色, 其它皆为付费音色。
|
||||
* 音色 ID 可于 https://console.volcengine.com/speech/service/8 中开通获取。
|
||||
* 音色 ID 可于 https://console.volcengine.com/speech/service/8?s=g 中开通获取。
|
||||
* 对应 "音色详情" 中, "Voice_type" 列的值。
|
||||
*/
|
||||
export enum VOICE_TYPE {
|
||||
|
|
@ -104,7 +104,7 @@ export const AI_MODE_MAP: Partial<Record<AI_MODEL, AI_MODEL_MODE>> = {
|
|||
|
||||
/**
|
||||
* @brief 豆包模型的 ID
|
||||
* @note 具体的模型 ID 请至 https://console.volcengine.com/ark/region:ark+cn-beijing/endpoint?config=%7B%7D 参看/创建
|
||||
* @note 具体的模型 ID 请至 https://console.volcengine.com/ark/region:ark+cn-beijing/endpoint?config=%7B%7D&s=g 参看/创建
|
||||
* 模型 ID 即接入点 ID, 在上述链接中表格内 "接入点名称" 列中, 类似于 "ep-2024xxxxxx-xxx" 格式即是模型 ID。
|
||||
*/
|
||||
export const ARK_V3_MODEL_ID: Partial<Record<AI_MODEL, string>> = {
|
||||
|
|
|
|||
|
|
@ -23,12 +23,12 @@ export const CONVERSATION_SIGNATURE = 'conversation';
|
|||
/**
|
||||
* @brief RTC & AIGC 配置。
|
||||
* @notes 更多参数请参考
|
||||
* https://www.volcengine.com/docs/6348/1404673
|
||||
* https://www.volcengine.com/docs/6348/1404673?s=g
|
||||
*/
|
||||
export class ConfigFactory {
|
||||
BaseConfig = {
|
||||
/**
|
||||
* @note 必填, RTC AppId 可于 https://console.volcengine.com/rtc/listRTC 中获取。
|
||||
* @note 必填, RTC AppId 可于 https://console.volcengine.com/rtc/listRTC?s=g 中获取。
|
||||
*/
|
||||
AppId: 'Your RTC AppId',
|
||||
/**
|
||||
|
|
@ -45,20 +45,20 @@ export class ConfigFactory {
|
|||
UserId: 'User123',
|
||||
/**
|
||||
* @brief 必填, RTC Token, 由 AppId、RoomId、UserId、时间戳等等信息计算得出。
|
||||
* 测试跑通时,可于 https://console.volcengine.com/rtc/listRTC 列表中,
|
||||
* 测试跑通时,可于 https://console.volcengine.com/rtc/listRTC?s=g 列表中,
|
||||
* 找到对应 AppId 行中 "操作" 列的 "临时Token" 按钮点击进行生成, 用于本地 RTC 通信进房鉴权校验。
|
||||
* 正式使用时可参考 https://www.volcengine.com/docs/6348/70121 通过代码生成 Token。
|
||||
* 正式使用时可参考 https://www.volcengine.com/docs/6348/70121?s=g 通过代码生成 Token。
|
||||
* 建议先使用临时 Token 尝试跑通。
|
||||
* @note 生成临时 Token 时, 页面上的 RoomId / UserId 填的与此处的 RoomId / UserId 保持一致。
|
||||
*/
|
||||
Token: 'Your RTC Token',
|
||||
/**
|
||||
* @brief 必填, TTS(语音合成) AppId, 可于 https://console.volcengine.com/speech/app 中获取, 若无可先创建应用。
|
||||
* @brief 必填, TTS(语音合成) AppId, 可于 https://console.volcengine.com/speech/app?s=g 中获取, 若无可先创建应用。
|
||||
* @note 创建应用时, 需要选择 "语音合成" 服务, 并选择对应的 App 进行绑定。
|
||||
*/
|
||||
TTSAppId: 'Your TTS AppId',
|
||||
/**
|
||||
* @brief 必填, ASR(语音识别) AppId, 可于 https://console.volcengine.com/speech/app 中获取, 若无可先创建应用。
|
||||
* @brief 必填, ASR(语音识别) AppId, 可于 https://console.volcengine.com/speech/app?s=g 中获取, 若无可先创建应用。
|
||||
* @note 创建应用时, 需要按需根据语言选择 "流式语音识别" 服务, 并选择对应的 App 进行绑定。
|
||||
*/
|
||||
ASRAppId: 'Your ASR AppId',
|
||||
|
|
@ -138,13 +138,13 @@ export class ConfigFactory {
|
|||
ProviderParams: {
|
||||
/**
|
||||
* @note 本示例代码使用的是小模型语音识别, 如感觉 ASR 效果不佳,可尝试使用大模型进行语音识别。
|
||||
* 大模型的使用详情可参考 https://www.volcengine.com/docs/6348/1404673#volcanolmasrconfig
|
||||
* 大模型的使用详情可参考 https://www.volcengine.com/docs/6348/1404673#volcanolmasrconfig?s=g
|
||||
*/
|
||||
Mode: 'smallmodel',
|
||||
AppId: this.BaseConfig.ASRAppId,
|
||||
/**
|
||||
* @note 具体流式语音识别服务对应的 Cluster ID,可在流式语音服务控制台开通对应服务后查询。
|
||||
* 具体链接为: https://console.volcengine.com/speech/service/16
|
||||
* 具体链接为: https://console.volcengine.com/speech/service/16?s=g
|
||||
*/
|
||||
Cluster: 'volcengine_streaming_common',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@ export const useMessageHandler = () => {
|
|||
const maps = {
|
||||
/**
|
||||
* @brief 接收状态变化信息
|
||||
* @note https://www.volcengine.com/docs/6348/1415216
|
||||
* @note https://www.volcengine.com/docs/6348/1415216?s=g
|
||||
*/
|
||||
[MESSAGE_TYPE.BRIEF]: (parsed: AnyRecord) => {
|
||||
const { Stage } = parsed || {};
|
||||
|
|
@ -102,7 +102,7 @@ export const useMessageHandler = () => {
|
|||
},
|
||||
/**
|
||||
* @brief 字幕
|
||||
* @note https://www.volcengine.com/docs/6348/1337284
|
||||
* @note https://www.volcengine.com/docs/6348/1337284?s=g
|
||||
*/
|
||||
[MESSAGE_TYPE.SUBTITLE]: (parsed: AnyRecord) => {
|
||||
const data = parsed.data?.[0] || {};
|
||||
|
|
@ -123,7 +123,7 @@ export const useMessageHandler = () => {
|
|||
},
|
||||
/**
|
||||
* @brief Function calling
|
||||
* @note https://www.volcengine.com/docs/6348/1359441
|
||||
* @note https://www.volcengine.com/docs/6348/1359441?s=g
|
||||
*/
|
||||
[MESSAGE_TYPE.FUNCTION_CALL]: (parsed: AnyRecord) => {
|
||||
const name: string = parsed?.tool_calls?.[0]?.function?.name;
|
||||
|
|
|
|||
Loading…
Reference in New Issue