构建实时API智能代理:快速构建多代理语音应用

简介

OpenAI的实时API智能代理是一个简单的多代理语音应用示例,展示了如何利用实时API构建更复杂的智能代理模式。主要特点包括:

  • 代理转移:根据定义的代理图,顺序转移代理(灵感来自OpenAI Swarm)。
  • 背景升级:在高风险决策中使用更智能的模型,如o1-mini。
  • 状态机提示:使用状态机逐步收集用户信息,如姓名和电话号码,并逐字符确认以进行用户认证。

快速开始

  1. 环境准备

    • 安装依赖:npm i
    • 添加OpenAI API密钥到环境变量中:OPENAI_API_KEY
    • 启动服务器:npm run dev
    • 访问应用:http://localhost:3000
  2. 代理配置

    typescript 复制代码
    import { AgentConfig } from "@/app/types";
    import { injectTransferTools } from "./utils";
    
    // 定义代理
    const haiku: AgentConfig = {
      name: "haiku",
      publicDescription: "生成俳句的代理。",
      instructions: "请用户输入主题,然后回复一个关于该主题的俳句。",
      tools: [],
    };
    
    const greeter: AgentConfig = {
      name: "greeter",
      publicDescription: "问候用户的代理。",
      instructions: "请问候用户,并询问是否需要俳句。如果是,则转移到'haiku'代理。",
      tools: [],
      downstreamAgents: [haiku],
    };
    
    // 添加转移工具
    const agents = injectTransferTools([greeter, haiku]);
    
    export default agents;

下一步

  • 查看配置 :在src/app/agentConfigs中查看更多配置示例。
    • frontDeskAuthentication:引导用户通过逐步确认的方式进行认证。
    • customerServiceRetail:引导用户通过复杂的退货流程,包括订单查询和政策检查。

自定义代理

  1. 创建新代理:复制现有配置,创建自己的多代理语音应用。
  2. 添加新代理配置 :将新代理配置添加到src/app/agentConfigs/index.ts中,以便在UI中选择。
  3. 定义工具和逻辑 :查看customerServiceRetail/returns.ts了解如何定义背景LLM调用。
  4. 定义个性和语气 :查看frontDeskAuthentication/authentication.ts了解如何使用状态机收集用户信息。

UI操作

  • 选择代理场景:使用下拉菜单选择代理场景和代理。
  • 查看对话记录:左侧显示对话记录,包括工具调用和代理切换。
  • 查看事件日志:右侧显示客户端和服务器事件。

示例代码

typescript 复制代码
// 示例:定义一个简单的问候代理
const simpleGreeter: AgentConfig = {
  name: "simpleGreeter",
  publicDescription: "简单问候代理",
  instructions: "问候用户并询问是否需要帮助",
  tools: [],
};

// 示例:定义一个需要转移的代理
const needHelp: AgentConfig = {
  name: "needHelp",
  publicDescription: "需要帮助的代理",
  instructions: "提供帮助并转移到其他代理",
  tools: [],
  downstreamAgents: [simpleGreeter],
};

数值指标

  • 响应时间:API响应时间应控制在100ms以内,以确保用户体验的流畅。
  • 错误率:目标是保持错误率低于1%,以确保系统的可靠性。
  • 吞吐量:系统应能够处理每秒至少50个请求,以满足高峰期需求。
相关推荐
qianmoQ2 小时前
GitHub 趋势日报 (2025年07月02日)
github
凌肖战2 小时前
力扣网编程55题:跳跃游戏之逆向思维
算法·leetcode
88号技师3 小时前
2025年6月一区-田忌赛马优化算法Tianji’s horse racing optimization-附Matlab免费代码
开发语言·算法·matlab·优化算法
前端小巷子3 小时前
Web开发中的文件上传
前端·javascript·面试
ゞ 正在缓冲99%…4 小时前
leetcode918.环形子数组的最大和
数据结构·算法·leetcode·动态规划
Kaltistss5 小时前
98.验证二叉搜索树
算法·leetcode·职场和发展
知己如祭5 小时前
图论基础(DFS、BFS、拓扑排序)
算法
mit6.8245 小时前
[Cyclone] 哈希算法 | SIMD优化哈希计算 | 大数运算 (Int类)
算法·哈希算法
c++bug5 小时前
动态规划VS记忆化搜索(2)
算法·动态规划
哪 吒5 小时前
2025B卷 - 华为OD机试七日集训第5期 - 按算法分类,由易到难,循序渐进,玩转OD(Python/JS/C/C++)
python·算法·华为od·华为od机试·2025b卷