Stream Vision Agents
用于构建低延迟实时语音与视频智能体的 Python SDK。
- Star 数
- ★ 8.2k
- 最近更新
- 今天
- License
- Apache-2.0
- 主语言
- Python
- FA 评分
- 43/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配OpenAI API · Claude API
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 为高尔夫或健身教练构建实时姿态识别与语音反馈应用,使用 YOLO Pose 和 Gemini Live。
- 不适合
- 只想做纯文本对话、不需要实时音视频能力的开发者
- 无法提供 GPU 或不愿接入多家付费模型 API 的个人用户
这个 Agent 能做什么,适合哪些场景?
Vision Agents 是 Stream 提供的开源 Python 项目,用于构建能观看、聆听并理解实时视频的多模态智能体。它以 Agent 为核心,结合边缘网络、实时模型和可插拔的视频处理器执行音视频交互。README 展示了 getstream.Edge()、gemini.Realtime() 与 ultralytics.YOLOPoseProcessor 等组件的组合方式。项目覆盖 WebRTC 视频流、语音转写、语音合成、轮次检测、工具调用与 MCP、电话接入、RAG 和跨会话记忆等能力。它也列出 HTTP 服务、Prometheus 指标、水平扩展和 Kubernetes 部署作为生产相关能力;基础入门仍要求 Stream API 凭据。
开发者通过 uv add vision-agents 安装 SDK,并创建 Agent。示例中的 Agent 接收 edge=getstream.Edge()、agent_user、instructions、llm=gemini.Realtime(fps=10) 以及 processors=[ultralytics.YOLOPoseProcessor(model_path="yolo11n-pose.pt", device="cuda")]。该流程把实时音视频接入模型提供商,并可先后经过 YOLO、Roboflow 或自定义 PyTorch/ONNX 视频处理管线,再由实时模型产生交互响应。项目还声明可在对话中调用代码、外部 API 或 MCP 服务器,并支持经 Twilio 或 Telnyx 进行双向音频电话流。
- 为高尔夫或健身教练构建实时姿态识别与语音反馈应用,使用 YOLO Pose 和 Gemini Live。
- 为需要边说边检索知识或文件的客服团队构建低延迟语音助手。
- 为安防或内容审核团队接入 Roboflow、YOLO 或自定义视觉模型,处理实时视频流。
- 为电话自动化团队通过 Twilio 或 Telnyx 构建入呼、外呼与双向音频工作流。
- 为虚拟试穿或风格化视频产品团队接入 Decart Lucy 等视频重塑模型。
如何安装或部署这个 Agent?
在 Python 项目中执行 uv add vision-agents。如需 README 列出的可选集成,可执行 uv add "vision-agents[getstream, openai, elevenlabs, deepgram]"。然后从 Stream 获取 API 凭据;README 明确要求此项。
如何使用这个 Agent?
先安装软件包并配置 Stream API 凭据。可按示例创建 Agent(edge=getstream.Edge(), agent_user=agent_user, instructions="Read @golf_coach.md", llm=gemini.Realtime(fps=10), processors=[ultralytics.YOLOPoseProcessor(model_path="yolo11n-pose.pt", device="cuda")])。该片段来自 examples/02_golf_coach_example/golf_coach_example.py,但所提供材料未给出 agent_user 的创建方式、导入语句或启动调用;要得到完整的首个可运行调用,需要该示例文件或快速入门的内容。
这个 Agent 有哪些优点和局限?
- 将实时 WebRTC、视频模型、语音能力和 LLM 调用集中到 Agent 与处理器管线中。
- 支持多个 LLM、实时模型、STT、TTS 和视觉提供商,并保留 OpenAI、Gemini 与 Claude 的原生 SDK 方法。
- 可在模型调用前后插入 YOLO、Roboflow、PyTorch 或 ONNX 视频处理器,适合需要专业视觉模型的场景。
- README 列出了电话、RAG、MCP、HTTP 服务、Prometheus、水平扩展和 Kubernetes 等生产集成方向。
- 入门步骤明确要求 Stream API 凭据,即使项目宣称可与任意视频边缘网络协作。
- 实时视频理解在约 30 秒以上的持续会话中会出现上下文退化。
- 小文字、比分和标识等视觉内容可能导致模型幻觉。
- 多数场景需要将 YOLO 或 Roboflow 等专用模型与更大的 LLM 组合;实时模型也需要音频或文本触发,视频本身不会触发输出。
这个 Agent 与同类方案有什么区别?
项目未将自身与单一直接竞品进行对比,但其集成列表表明可在 OpenAI、Gemini、xAI、OpenRouter、Hugging Face、Kimi AI、MiniMax 等模型路径之间选择;实时路径还包括 OpenAI Realtime、Gemini Live、AWS Nova Sonic、Qwen 与 Inworld。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Stream Vision Agents 当前 | 43 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 8.2k | 今天 | Python | OpenAI API · Claude API |
| Voice AI 语音智能体学习路线 | 63 · 存在缺口 | 代码库 / SDK免费 | ★ 338 | 8 天前 | Astro | — |
| Patter Voice SDK | 52 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 1.1k | 2 个月前 | Python | OpenAI API · Claude API |
| Android Voice AI SDK(MVVM架构) | 47 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 2.6k | 5 个月前 | Kotlin | Claude API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:README 提到工具调用和 MCP,可执行代码和 API,但未说明权限最小化或用户确认机制;数据流透明度部分,README 描述了视频流和处理器管道,但未明确数据流向和存储;敏感数据处理未提及;依赖安全方面,pyproject.toml 有依赖列表,但未提供安全审计或漏洞扫描证据;外部影响方面,工具调用和电话集成可能产生外部副作用,但未说明限制或确认;回滚机制未提及;来源归属方面,README 和 SECURITY.md 提供了联系邮箱,但未验证发布者身份。扣分原因:缺乏权限最小化、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响、回滚和来源归属的具体证据。
证据显示:README 和测试文件(如 test_anam_avatar.py)展示了内部一致性,但未提供失败消息的详细说明;依赖可用性方面,pyproject.toml 列出了大量依赖,但未提供版本锁定或可用性保证;失败消息方面,测试中有错误消息断言,但未覆盖所有场景。扣分原因:依赖可用性和失败消息的证据不足。
证据显示:README 描述了多种场景(语音、视频、电话、RAG 等),受众明确;能力边界方面,README 列出了集成和功能,但未明确限制;触发精度方面,README 提到实时触发,但未详细说明;环境适配方面,README 提到 Kubernetes 部署和水平扩展,但未提供具体配置。扣分原因:触发精度证据不足。
证据显示:README 提供了清晰的信息架构,包括快速开始、功能、集成、文档和示例;安装说明明确(uv add);命名稳定性方面,README 和 pyproject.toml 使用一致的命名,但未提供版本历史;示例和 FAQ 方面,README 提供了多个示例,但未提供 FAQ;已知限制部分明确列出;许可证为 Apache-2.0,完整;版本变更日志未提供;维护责任方面,README 提供了联系邮箱,但未明确维护者。扣分原因:命名稳定性、版本变更日志和维护责任的证据不足。
证据显示:README 展示了输出可用性,如实时视频和语音代理;边际价值方面,提供了多种集成和功能;成本效益方面,README 提到免费 API 密钥和 Maker 计划,但未提供详细成本分析。扣分原因:成本效益证据不足。
证据显示:README 中的声明(如低延迟)未提供可验证的测试结果;跨来源验证方面,README 引用了外部文档和示例,但未提供独立验证;事实与推断分离方面,README 混合了事实和营销声明。扣分原因:声明可追溯性、跨来源验证和事实推断分离的证据不足。
- 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
- 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
- 发布者身份未验证,需谨慎对待来源。
- 依赖众多且未提供安全审计,需自行检查依赖安全性。
- 工具调用和电话集成可能产生外部副作用,需确保用户确认机制。
- 数据流和敏感数据处理不透明,需审查数据流向和存储。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
发布说明摘录
What's Changed * [Speechify] Add support for Speechify as a TTS provider by @DaemonLoki in https://github.com/GetStream/Vision-Agents/pull/615 * fix(speechify): send Speechify-Caller attribution header by @luke-speechify in https://github.com/GetStream/Vision-Agents/pull/617 * [xAI] Add support for grok-voice-think-fast-2.0 by @DaemonLoki in https://github.com/GetStream/Vision-Agents/pull/624 * fix(nvidia): default VLM to llama-3.2-11b-vision-instruct by @Nash0x7E2 in https://github.com/GetStream/Vision-Agents/pull/625 …在 GitHub 查看 ↗ -
发布说明摘录
What's Changed * Support the new stateful AudioStreamTrack from getstream by @dangusev in https://github.com/GetStream/Vision-Agents/pull/612 Full Changelog: https://github.com/GetStream/Vision-Agents/compare/v0.6.7...v0.6.8在 GitHub 查看 ↗ -
发布说明摘录
What's Changed * CI: add least-privilege permissions to GitHub Actions workflows by @peter-matkovski in https://github.com/GetStream/Vision-Agents/pull/609 * fix(twelvelabs): wait for asset ready and stamp clip duration for Pegasus by @Nash0x7E2 in https://github.com/GetStream/Vision-Agents/pull/610 * chore: clean up open-model TTS plugins (Kokoro warmup, Pocket deps, drop moonshine extra) by @Nash0x7E2 in https://github.com/GetStream/Vision-Agents/pull/613 * chore(anam): bump Anam SDK to 0.6.0 by @Nash0x7E2 in https://github.com/GetStream/Vision-Agents/pull/614 …在 GitHub 查看 ↗
常见问题
是否必须使用 Stream?
getstream.Edge();README 同时称该项目可与任意视频边缘网络协作,但所提供材料没有给出替换边缘网络的具体配置步骤。