# 交互式AIGC场景 AIGC Demo 此 Demo 为简化版本, 如您有 1.5.x 版本 UI 的诉求, 可切换至 1.5.1 分支。 跑通阶段时, 无须关心代码实现,仅需按需完成 `src/config/scenes/*.json` 的填充以及 `Server/sensitive.js` 中的信息填充即可。 ## 简介 - 在 AIGC 对话场景下,火山引擎 AIGC-RTC Server 云端服务,通过整合 RTC 音视频流处理,ASR 语音识别,大模型接口调用集成,以及 TTS 语音生成等能力,提供基于流式语音的端到端AIGC能力链路。 - 用户只需调用基于标准的 OpenAPI 接口即可配置所需的 ASR、LLM、TTS 类型和参数。火山引擎云端计算服务负责边缘用户接入、云端资源调度、音视频流压缩、文本与语音转换处理以及数据订阅传输等环节。简化开发流程,让开发者更专注在对大模型核心能力的训练及调试,从而快速推进AIGC产品应用创新。 - 同时火山引擎 RTC拥有成熟的音频 3A 处理、视频处理等技术以及大规模音视频聊天能力,可支持 AIGC 产品更便捷的支持多模态交互、多人互动等场景能力,保持交互的自然性和高效性。 ## 【必看】环境准备 **Node 版本: 16.0+** ### 1. 运行环境 需要准备两个 Terminal,分别启动服务端和前端页面。 ### 2. 服务开通 开通 ASR、TTS、LLM、RTC 等服务,可参考 [开通服务](https://www.volcengine.com/docs/6348/1315561?s=g) 进行相关服务的授权与开通。 ### 3. 参数配置 #### 3.1 服务端配置(`Server/sensitive.js`) - 必填参数: - `ACCOUNT_INFO`:填写[火山引擎控制台](https://console.volcengine.com/iam/keymanage)的 AK、SK - `RTC_INFO`:填写[应用管理](https://console.volcengine.com/rtc/aigc/listRTC)的 AppID、AppKey - `ASRConfig`:填写 ASR AppID - `TTSConfig`:填写 TTS AppID - 按需填充(未使用的部分可不填充): - `LLMConfig`: 根据使用场景填写 CozeBot、CustomLLM。 - `ASRConfig`: 如您使用 `bigmodel` 模式, 需填写 ASRAccessToken。 - `TTSConfig`: 按需填充 TTSAppID、TTSToken。 #### 3.2 场景配置(`src/config/scenes/*.json`) 您可以自定义具体场景, 并按需根据模版填充 OpenAPI 需要的参数。 Demo 中以 `Custom`、`VirtualGirlfriend`(视觉) 场景为例,您可以自行新增场景,并在代码中导入即可使用(`src/config/index.ts`)。 注意: - `EndPointId`:在 [火山方舟-在线推理](https://console.volcengine.com/ark/region:ark+cn-beijing/endpoint) 中创建接入点获取。 - 敏感信息建议填充到 `Server/sensitive.js` 中。 - Demo 会根据 JSON 参数中是否包含视觉理解相关的参数从而展示 视频采集/屏幕采集 相关的 UI。 ### 4. 自定义服务端 如果您已自行完成服务端逻辑,可以: 1. 修改 `src/config/index.ts` 中的 `AIGC_PROXY_HOST` 请求域名和接口 2. 在 `src/app/api.ts` 中修改接口参数配置 `APIS_CONFIG` ## 快速开始 请注意,服务端和 Web 端都需要启动, 启动步骤如下: ### 服务端 进到项目根目录 #### 安装依赖 ```shell cd Server yarn ``` #### 运行项目 ```shell yarn dev ``` ### 前端页面 进到项目根目录 #### 安装依赖 ```shell yarn ``` #### 运行项目 ```shell yarn dev ``` ### 常见问题 | 问题 | 解决方案 | | :-- | :-- | | 如何使用第三方模型、Coze Bot | 模型相关配置代码对应目录 `src/config/scenes/` 下json 文件,填写对应官方模型/ Coze/ 第三方模型的参数后,可点击页面上的 "修改 AI 人设" 进行切换。 | | **启动智能体之后, 对话无反馈,或者一直停留在 "AI 准备中, 请稍侯"** |