GPT‑Live‑1 + Agora 实战教程:做一个能参会、操作看板的 AI 助手

2026年9月10日,OpenAI 正式宣布 GPT‑Live‑1 在 API 中可用,将全双工语音体验带给开发者。模型能够同时听说,并将需要推理和工具调用的任务委派给后端处理。
Agora 作为 OpenAI 的合作伙伴,已通过 Conversational AI 支持 GPT‑Live‑1 接入,帮助开发者在应用中实现实时语音交互。
本文将介绍 GPT‑Live‑1 的核心特性,并以开源项目 Agora Meeting Copilot 为例,展示如何结合 Agora,让 AI 参与多人会议、通过语音指令操作共享看板。
GPT‑Live‑1:全双工语音与后台任务委派
2024 年的 Realtime API 已经支持直接语音输入输出和自动打断。GPT‑Live‑1 此次更值得关注的是同时听说的交互方式,以及语音模型与后端推理模型的分工。
全双工:同时接收和生成语音
GPT‑Live‑1 在同一模型中处理输入和输出音频,支持同时听说。用户可以在回答过程中插话、补充条件或改变问题,模型也需要处理停顿和“嗯”“对”这样的简短附和。
这类交互的难点在于判断声音的含义:一句“嗯”可能表示继续听,一句“等一下”可能要求停止当前回答。仅仅检测到用户发声,还不足以决定下一步如何响应。GPT‑Live‑1 的全双工能力,着重改善的就是这些对话时机与交互行为。
GPT‑Live‑1 同时支持轮次检测,开发者仍可按一次发言的起止边界组织交互。
发布说明也提到了背景噪声、静默处理和长会话上下文保持方面的改进。
推理与工具委派:语音层和任务处理分工
GPT‑Live‑1 可以把深度推理和工具调用委派给后端文本模型,包括第三方模型。开发者可以选择后端模型、工具和执行框架,后台工作进行时,语音对话可以继续。
选择后端模型时,高频、简单的任务可以优先考虑响应速度和成本,复杂任务则可以使用推理能力更强的模型。
转写与表达控制:文本输出、关键词偏置和语音风格
除了语音输入输出,这次 API 发布还提供了几项直接影响产品设计的能力:
原生转写与回复文本:同时提供用户发言的 ASR 转写和模型回复文字,便于接入字幕、会话记录和后续文本处理。
关键词偏置(keyword biasing):为识别提供词汇提示。人名、品牌名、产品缩写等专有词汇,是值得重点测试的对象。
语气、语速和对话风格:可以通过系统提示词调整。例如,要求回答简短、语速放缓,或先回答重点再展开解释,都是比“表现自然”更具体的设计要求。
性能评测:交互行为、轮次交接延迟与任务完成能力
OpenAI 在原 blog 中分别展示了交互行为、轮次交接延迟和语音任务完成能力的评测。
交互行为:
在 Full Duplex Bench v1.5 Interactivity 中,GPT‑Live‑1 得分为 80.10%,GPT‑Realtime‑2.1 为 45.4%。这项测试关注模型对背景讲话、面向他人的讲话、附和和打断的反应。
图 1:OpenAI 原 blog 图表
Average score 为平均得分,越高越好
轮次交接延迟:
Full Duplex Bench v1 测量的是用户结束一轮发言后,模型多久开始回复。GPT‑Live‑1 为 0.798 秒,GPT‑Realtime‑2.1 为 1.41 秒;这是该测试条件下的结果。
图 2:OpenAI 原 blog 图表
延迟单位为秒,越低越好
端到端任务:
GPT‑Live‑1 与 GPT‑6 Astra 的组合在 Tau3 中排名第一,后端推理强度为 medium。Tau3 衡量语音 Agent 完成端到端任务的能力,阅读结果时需要同时看语音模型和后端配置。
GPT‑Live‑1 也提供电话场景支持。
定价
GPT‑Live‑1 已在 API 中可用,发布时语音层价格为 0.05 美元/分钟。后端模型成本需另行计算,因此预算需要同时考虑语音时长与委派任务的开销。
开源实践:让 AI 加入会议,把讨论结果写进看板
Agora Meeting Copilot 是一个基于 GPT‑Live‑1 和 Agora 构建的开源会议助手示例,它可以加入多人会议,回答问题,并根据语音指令创建或更新看板任务。
这个示例项目实现了三个核心功能:
· AI 会议对话:邀请 Copilot 加入会议,参与发言、回答问题。
· 语音操作看板:通过指令创建、移动和修改任务。
· 会议记录与总结:实时转写发言,生成纪要,并在会后下载。
GPT‑Live‑1 在其中承担两个主要作用。
一是让 AI 能够参与会议对话。 Copilot 通过 Agora Conversational AI 接入会议,由 GPT‑Live‑1 接收音频并生成语音回复。参会者每轮点名后,它再回答问题,减少对正常讨论的打断。
二是让语音指令能够触发看板操作。GPT‑Live‑1 通过 Responses 委派模型调用看板工具,由后端执行任务变更。AI 和真人操作同一块看板,参会者也可以手动编辑;当前 AI 不支持删除任务。
会议记录由另一套流程完成:Agora 转写真人发言,与 Copilot 的回复文本合并后,由独立分析模型生成纪要。这项功能在不邀请 Copilot 时也能使用。
如何上手
仓库链接:
https://github.com/zicojiao/agora-meeting-copilot
架构总览
系统由前端和编排服务(orchestrator)组成,通过 Agora 接入会议音视频、AI 参会者和实时转写。
图中,浏览器通过 HTTP 提交真人字幕和 AI 回复文本,后端归并转写,并通过 SSE 同步看板等状态。AI 语音链路由 Agora Conversational AI 经后端 WebSocket 网关连接 GPT‑Live‑1;看板委派与纪要分析使用各自的模型。
结合上图,几个关键部分如下。
房间里有两个系统参会者:转写服务和 Copilot。 两者使用独立的 UID 接入,转写服务可独立运行,Copilot 则由主持人邀请后加入,负责语音对话和看板操作。前端通过 UID 区分系统参会者与真人,分别接收真人发言的转写和 Copilot 的回复文本,再提交后端合并为会议记录。
AI 通过 Agora Conversational AI 接入房间:它负责让语音模型接收房间音频、将回复发布到会议。项目通过 agora-agents 服务端 SDK 进行调用。 接入说明可参考 Agora 的 GPT Live 文档(https://docs.agora.io/en/ai/models/mllm/openai-gpt-live )。
GPT‑Live‑1 的会话由后端管理: orchestrator 中的 WebSocket 网关保管 OpenAI 凭证,维持模型连接,并在函数结果返回后继续响应。
看板操作通过 Tool Calling 执行: Copilot 的语音请求通过 Responses delegation 生成函数调用,后端校验参数、执行操作并回传结果。创建、移动、修改和添加标签对应四个函数;删除需要由主持人或卡片创建者手动完成。
目录结构如下
agora-meeting-copilot/
├─ app/ # Next.js 页面:会议 / 看板 / summary
├─ src/ # 前端:RTC/RTM 接入、STT 字幕、看板状态
├─ services/
│ └─ orchestrator/ # Fastify 编排服务
│ ├─ src/ # token 签发、GPT Live 网关、看板与纪要
│ ├─ vendor/ # 内置的 agora-agents SDK
│ ├─ Dockerfile
│ └─ .env.example
├─ tests/ # Playwright e2e
├─ .env.example # 前端环境变量
└─ railway.json # orchestrator 部署配置环境准备
开始前需要准备以下环境和凭证。
· Node.js 22+,以及 npm。
· Agora 账号:准备 App ID、App Certificate(签发 RTC/RTM token)和一组 REST API 凭证(实时转写鉴权),并开通项目所需的 RTC、信令、实时转写与 Conversational AI 服务。
· OpenAI API key: 用于接入 GPT‑Live‑1,以及看板委派和纪要分析所用的 Responses 模型。
· PostgreSQL: 用于保存看板和会议记录,本地或 Railway 均可。初次运行可以先使用内存存储。
本地运行
项目包含前端和 orchestrator 两个进程,分别在两个终端中运行。
下载项目代码并安装依赖。
git clone https://github.com/zicojiao/agora-meeting-copilot.git
cd agora-meeting-copilot
npm install配置前端环境变量,指定 orchestrator 地址。
cp .env.example .env.localNEXT_PUBLIC_ORCHESTRATOR_URL=http://localhost:8787
DEMO_ACCESS_PASSWORD= # 本地不启用口令时,两项均留空
DEMO_ACCESS_TOKEN= # 启用口令时,与 PASSWORD 一起设置配置 orchestrator 环境变量,保存服务凭证。
cd services/orchestrator
npm install
cp .env.example .envprintf("hello worldPORT=8787
STORAGE_DRIVER=memory # 本地先使用内存存储
DATABASE_URL= # 使用 postgres 时填写
CAPABILITY_SECRET= # 必填,至少 24 字符的随机值
WEBHOOK_SECRET= # 必填,至少 16 字符的随机值
# Agora,两组凭证从控制台获取
AGORA_APP_ID=
AGORA_APP_CERTIFICATE=
AGORA_CUSTOMER_ID= # REST 凭证,转写用
AGORA_CUSTOMER_SECRET=
AGORA_STT_PUBLISHER_UID=900003 # STT 默认 UID
AGORA_STT_LANGUAGES=en-US # 转写语种
# OpenAI
OPENAI_API_KEY=
OPENAI_GPT_LIVE_GREETING= # Copilot 入会开场白,可留空
OPENAI_GPT_LIVE_DELEGATION_MODEL=gpt-5.5 # 看板工具的委派模型
OPENAI_ANALYSIS_MODEL=gpt-5.4-mini # 结构化纪要的分析模型
GPT_LIVE_PROXY_PUBLIC_URL=wss://your-orchestrator.example.com!");分别执行 openssl rand -hex 32,为两个 SECRET 生成随机值,并填写 Agora、OpenAI 凭证。
GPT_LIVE_PROXY_PUBLIC_URL 需要指向 Agora 云端可访问的后端 WSS 地址;本地运行可使用公网隧道转发到 8787 端口。
将 STORAGE_DRIVER 设为 memory,可以先验证音频、转写和 Copilot,再接入数据库。内存模式下,重启后端会丢失已有数据。
分别启动两个服务。后端需要先加载 .env。
# 终端 A,接着上面的步骤,在 services/orchestrator 目录运行
set -a
source .env
set +a
npm run dev# 终端 B,从仓库根目录运行前端
npm run dev打开 http://localhost:3000 ,创建会议并开启麦克风。开启会议字幕后,发言会以带说话人信息的文字显示在页面中。
主持人邀请 Copilot 加入后,可以点名向它提问,也可以让它创建一项任务,再将任务移到“进行中”。对应卡片会出现在看板上,并随指令更新状态;打开完整看板也可以手动编辑。
会议期间至少保留一个开启字幕的客户端,以持续保存转写。主持人结束整个会议后,即可查看会议总结,并下载转写和纪要。
二次开发从哪里改起
鉴权和 token: services/orchestrator/src 负责签发 RTC/RTM token 和房间能力凭证。接入自己的账号体系时,需要在这里调整身份和权限逻辑。
业务工具: 当前 AI 支持创建、移动、更新卡片和添加标签。扩展到工单、订单或 CRM 时,可参考现有工具添加函数描述、参数和 Zod 校验,并在 orchestrator 中实现业务操作。
自定义页面: 用户可在 src/ 中修改页面组件和前端交互。
验证
修改代码后,可运行以下构建和自动化检查。会议功能是否正常,先按上面的实际操作确认。
# 仓库根目录
npm run build
npm run test:e2e
# orchestrator
cd services/orchestrator
npm test
npm run build首次运行 Playwright 时需执行 npx playwright install chromium。前端测试使用模拟后端,运行前应停止占用 8787 端口的开发服务;真实音频与模型连接仍需在会议中验证。
最后
这个开源示例展示了 AI 作为参会者加入实时会议、通过语音操作看板,以及生成会议记录的完整流程。
更多详细代码可参考 GitHub 仓库 :
https://github.com/zicojiao/agora-meeting-copilot

阅读更多 Voice Agent 学习笔记:了解最懂 AI 语音的头脑都在思考什么