feat: 添加realtime_dialog和realtime_dialog_external_rag_test项目,更新test2项目
This commit is contained in:
92
realtime_dialog_external_rag_test/java/README.md
Normal file
92
realtime_dialog_external_rag_test/java/README.md
Normal file
@@ -0,0 +1,92 @@
|
||||
# Realtime Dialog External RAG Test
|
||||
|
||||
一个新的独立测试项目,参考 `realtime_dialog/java` 的实现方式,直接通过 WebSocket 接入实时对话服务,验证 `external_rag` 外接知识库输入是否能稳定产生音频回复。
|
||||
|
||||
## 能力
|
||||
|
||||
- 文本模式测试
|
||||
- 麦克风模式测试
|
||||
- 音频文件模式测试
|
||||
- 原始音频播放
|
||||
- 通过 `external_rag` 注入外接知识库内容
|
||||
- 将服务端返回音频保存为 `output.pcm`
|
||||
|
||||
## 环境要求
|
||||
|
||||
- Java 8+
|
||||
- Maven 3.8+
|
||||
|
||||
## 运行前准备
|
||||
|
||||
准备一个 JSON 文件,内容是数组,例如:
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"title": "公司介绍",
|
||||
"content": "我们是一家专注于企业数字化服务的公司。"
|
||||
},
|
||||
{
|
||||
"title": "核心产品",
|
||||
"content": "核心产品包括智能客服平台、知识库系统和企业自动化工具。"
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
默认情况下,程序会自动尝试读取 `../../test2/server/.env`,并复用其中的:
|
||||
|
||||
- `VOLC_S2S_APP_ID`
|
||||
- `VOLC_S2S_TOKEN`
|
||||
|
||||
也可以通过 `--test2-env` 显式指定路径。
|
||||
|
||||
## 常用命令
|
||||
|
||||
编译:
|
||||
|
||||
```bash
|
||||
mvn clean package
|
||||
```
|
||||
|
||||
文本模式:
|
||||
|
||||
```bash
|
||||
mvn exec:java -Dexec.args="--mod=text --app_id=你的AppId --access_key=你的AccessKey --rag-file=sample_rag.json"
|
||||
```
|
||||
|
||||
文本模式(直接复用 `test2/server/.env`):
|
||||
|
||||
```bash
|
||||
mvn exec:java -Dexec.args="--mod=text --rag-file=sample_rag.json"
|
||||
```
|
||||
|
||||
麦克风模式:
|
||||
|
||||
```bash
|
||||
mvn exec:java -Dexec.args="--app_id=你的AppId --access_key=你的AccessKey --rag-file=sample_rag.json"
|
||||
```
|
||||
|
||||
音频文件模式:
|
||||
|
||||
```bash
|
||||
mvn exec:java -Dexec.args="--audio=whoareyou.wav --app_id=你的AppId --access_key=你的AccessKey --rag-file=sample_rag.json"
|
||||
```
|
||||
|
||||
## 参数
|
||||
|
||||
- `--app_id`:实时对话应用 ID
|
||||
- `--access_key`:实时对话 Access Key
|
||||
- `--audio`:音频文件路径
|
||||
- `--mod`:`audio` 或 `text`
|
||||
- `--format`:`pcm` 或 `pcm_s16le`
|
||||
- `--rag-file`:外接知识库 JSON 文件路径
|
||||
- `--rag-delay-ms`:发送 external_rag 前延迟,默认 3000ms
|
||||
- `--test2-env`:显式指定 `test2/server/.env` 路径
|
||||
|
||||
## 说明
|
||||
|
||||
这个项目保留了 `realtime_dialog` 的核心思路:
|
||||
|
||||
- 用真实音频包判断回复是否发生
|
||||
- 用 `external_rag` 验证外接知识库是否能直接进入主回复链路
|
||||
- 不依赖 RTC 字幕判断是否有音频返回
|
||||
Reference in New Issue
Block a user