文档中心>实时音视频

开始AI对话任务

最近更新时间:2024-11-11 02:14:16

我的收藏

1. 接口描述

接口请求域名: trtc.tencentcloudapi.com 。

启动AI对话任务,AI通道机器人进入TRTC房间,与房间内指定的成员进行AI对话,适用于智能客服,AI口语教师等场景

TRTC AI对话功能内置语音转文本能力,同时提供通道服务,即客户可灵活指定第三方AI模型(LLM)服务和文本转音频(TTS)服务,更多功能说明

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:StartAIConversation。
Version String 公共参数,本接口取值:2019-07-22。
Region String 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-beijing, ap-guangzhou, ap-shanghai, ap-singapore 。
SdkAppId Integer TRTC的SdkAppId,和开启转录任务的房间使用的SdkAppId相同。
RoomId String TRTC的RoomId,表示开启对话任务的房间号。
AgentConfig AgentConfig 机器人参数
SessionId String 调用方传入的唯一Id,可用于客户侧防止重复发起任务以及可以通过该字段查询任务状态。
示例值:conversation_1_2
RoomIdType Integer TRTC房间号的类型,0代表数字房间号,1代表字符串房间号。不填默认是数字房间号。
STTConfig STTConfig 语音识别配置。
LLMConfig String LLM配置。需符合openai规范,为JSON字符串,示例如下:
 { 
  "LLMType": “大模型类型", // String 必填,如:"openai"
  "Model": "您的模型名称", // String 必填,指定使用的模型
"APIKey": "您的LLM API密钥", // String 必填
  "APIUrl": "https://api.xxx.com/chat/completions", // String 必填,LLM API访问的URL
  "Streaming": true // Boolean 非必填,指定是否使用流式传输
 }


示例值:{"LLMType": "openai", "Model": "gpt-xxx", "APIKey": "xxxxxxxx", "APIUrl": "https://api.xxx.com/v1\", "Streaming": true}
TTSConfig String TTS配置,为JSON字符串,腾讯云TTS示例如下:
{ 
  "AppId": 您的应用ID, // Integer 必填
  "TTSType": "TTS类型", // String TTS类型, 固定为"tencent"
  "SecretId": "您的密钥ID", // String 必填
  "SecretKey": "您的密钥Key", // String 必填
  "VoiceType": 101001, // Integer 必填,音色 ID,包括标准音色与精品音色,精品音色拟真度更高,价格不同于标准音色,请参见语音合成计费概述。完整的音色 ID 列表请参见语音合成音色列表
  "Speed": 1.25, // Integer 非必填,语速,范围:[-2,6],分别对应不同语速: -2: 代表0.6倍 -1: 代表0.8倍 0: 代表1.0倍(默认) 1: 代表1.2倍 2: 代表1.5倍 6: 代表2.5倍 如果需要更细化的语速,可以保留小数点后 2 位,例如0.5/1.25/2.81等。 参数值与实际语速转换,可参考 语速转换
  "Volume": 5, // Integer 非必填,音量大小,范围:[0,10],分别对应11个等级的音量,默认值为0,代表正常音量。
  "PrimaryLanguage": "zh-CN" // String 非必填,主要语言
 }

示例值:{"TTSType": "tencent", "AppId": 136666666, "SecretId": "xxxxxxx", "SecretKey": "xxxxxxx", "VoiceType": 1008, "Speed": 1}

3. 输出参数

参数名称 类型 描述
TaskId String 用于唯一标识对话任务。
示例值:SV1FR+XTtvzAjRxZZ+aof1DfJF00VSBBNE0zR9W-PEpgCPBmt402BbnqMCdom79LtZO-VbLyV1nhVY1pFauWgrW12BevPvJ5Zn010nD6vj3hgfbVH0.
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 启动一个AI机器人对话

输入示例

POST / HTTP/1.1
Host: trtc.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: StartAIConversation
<公共请求参数>

{
    "SdkAppId": 12345678,
    "RoomId": "room_987654321",
    "RoomIdType": 1,
    "AgentConfig": {
        "UserId": "user_12345",
        "UserSig": "user_signature_example",
        "MaxIdleTime": 120,
        "TargetUserId": "target_user_54321"
    },
    "SessionId": "session_1234567890abcdef",
    "STTConfig": {
        "Language": "en-US",
        "AlternativeLanguage": [
            "en-US",
            "zh"
        ]
    },
    "LLMConfig": "{\"LLMType\": \"openai\", \"Model\": \"gpt-3.5-turbo\", \"APIKey\": \"xxx\", \"APIUrl\": \"http://xxxx-api.woa.com/v1/chat/completions\", \"Streaming\": true}",
    "TTSConfig": "{\"TTSType\": \"tencent\", \"AppId\": 130000000, \"SecretId\": \"AKIDxxxxx\", \"SecretKey\": \"HlDxxxxxx\", \"VoiceType\": 1008, \"Speed\": 1}"
}

输出示例

{
    "Response": {
        "TaskId": "abc",
        "RequestId": "abc"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
FailedOperation.NotAbility 需要解锁所需能力位
FailedOperation.NotAllowed 不允许此操作,请提交工单联系我们
FailedOperation.TaskExist 任务已存在
InvalidParameter.UserSig UserSig过期或错误。
ResourceInsufficient.RequestRejection 资源不足。