t-agent-plugin-aistream
概述
t-agent-plugin-aistream 是 t-agent 的核心插件,提供了对接小程序 AI 智能体平台的能力。该插件替代了已废弃的 @ray-js/t-agent-plugin-assistant,提供了更强大的功能,包括流式对话、语音合成、语音识别和多模态支持等。
⚠️ 重要提示:@ray-js/t-agent-plugin-assistant 已被废弃,请使用 @ray-js/t-agent-plugin-aistream 替代。
想了解更多详细信息,请访问官方文档。
核心概念
withAIStream
withAIStream 是该插件的主要入口函数,用于创建与小程序 AI 智能体平台的连接。它支持流式对话、语音合成、语音识别等功能。
主要配置参数:
agentId:智能体 ID(必填)clientType:客户端类型,默认为 APP (2)deviceId:设备 ID,当 clientType 为 DEVICE (1) 时必填enableTts:是否开启语音合成,默认为 falsewireInput:是否将输入块传递给智能体,默认为 truehistorySize:历史消息大小,默认为 1000indexId:索引 ID,默认为 'default'homeId:家庭 ID,不填默认当前家庭earlyStart:是否在 onAgentStart 阶段就建立连接tokenOptions:获取 agent token 的参数api:API 接口名version:接口版本extParams:额外参数
使用示例:
const agent = createChatAgent(
withUI(),
withAIStream({
agentId: 'your-agent-id',
enableTts: true,
earlyStart: true,
historySize: 500,
tokenOptions: {
api: 'm.life.ai.token.get',
version: '1.0',
},
})
);
withBuildIn
withBuildIn 提供了一系列内置的功能,包括智能家居控制、知识库搜索等。必须在应用 withAIStream 插件后使用。
主要功能:
- 智能家居:设备控制、场景管理
- 知识库搜索:关联文档展示
- 推荐行动:智能推荐用户操作
- 按钮交互:动态按钮响应
- 工作流引导:流程化操作指导
- 智能卡片:丰富的卡片展示
使用示例:
const agent = createChatAgent(
withUI(),
withAIStream({ agentId: 'your-agent-id' }),
withBuildIn()
);
核心功能
语音合成 (TTS)
支持将 AI 回复转换为语音播放,提供更自然的交互体验。
withAIStream({
agentId: 'your-agent-id',
enableTts: true, // 开启语音合成
})
语音识别 (ASR)
内置 AsrAgent 语音识别代理,支持实时语音转文字。
import { createAsrAgent } from '@ray-js/t-agent-plugin-aistream';
const asrAgent = createAsrAgent({
agentId: 'your-agent-id',
tokenOptions: {
api: 'm.life.ai.token.get',
version: '1.0',
},
onMessage: message => {
if (message.type === 'text') {
console.log('识别结果:', message.text);
}
},
});
Hook 机制
提供了丰富的 Hook 来自定义行为:
onMessageParse:消息解析时触发onSkillCompose:收到技能数据时触发onSkillsEnd:所有技能处理完成时触发onTTTAction:tile 使用 sendAction 时触发onCardsReceived:收到卡片数据时触发
Mock 机制
为了方便开发,提供了 mock 机制:
import { mock } from '@ray-js/t-agent-plugin-aistream';
// Mock AI Stream 响应
mock.hooks.hook('sendToAIStream', context => {
if (context.options.blocks?.some(block => block.text?.includes('hello'))) {
context.responseText = 'Hello! How can I help you?';
}
});
// Mock ASR 语音识别
mock.hooks.hook('asrDetection', context => {
context.responseText = 'Hello world! I am a virtual assistant.';
});
总结
t-agent-plugin-aistream 是 t-agent 的核心插件,相比已废弃的 assistant 插件,提供了更强大的功能和更好的开发体验。它支持流式对话、语音合成、语音识别、多模态交互等现代 AI 应用所需的核心功能。
该插件与 t-agent 核心库和 t-agent-ui-ray 组件库无缝集成,让开发者能够轻松构建功能丰富的智能对话应用。通过丰富的配置选项和 Hook 机制,开发者可以根据具体需求进行深度定制。
更多详细信息和 API 说明,请访问官方文档。
通用智能体开发解决方案——AI助手开发教程(四)
973

被折叠的 条评论
为什么被折叠?



