图片和语音接到会话服务时,哪一段不进历史?

简介: 已有 Node 服务要给业务系统加巡检助手时,先按运行位置拆开,而不是先选一个「多模态开关」。Tansr 里,用户照片、用户自己的转写按钮、助手自己调用的媒体工具,落在不同进程和不同记录上。

已有 Node 服务要给业务系统加巡检助手时,先按运行位置拆开,而不是先选一个「多模态开关」。Tansr 里,用户照片、用户自己的转写按钮、助手自己调用的媒体工具,落在不同进程和不同记录上。

三层各留什么

设计示例:巡检后端用自托管 @tansr/serve 持有会话,终端只上传照片或音频。下表按资料站的边界拆开。

层 负责的事 不负责的事
终端 保留图文草稿和原始音频,决定转写要不要成为下一条输入 在手机上运行 Node 会话内核
令牌档进程内 SDK sendBlocks 在空闲时启动新轮;platform.transcribe / speak 直打 /t1/asr、/t1/tts 把直连语音写入历史或事件流
自托管会话服务 代打 POST /v2/sessions/:id/audio/transcriptions 与 audio/speech;从 0.10.0 起在历史工具结果里保留 artifact 把这两条音频路由签进事件流;把旧纯文本历史自动补成媒体
平台 bundle 下发能力位和 platformModels。空数组表示未配置 由服务在本地猜一个媒体模型名
业务库 工单、权限和最终贴进去的示意图 用会话卡片代替业务记录

sendBlocks 返回 started 才表示新轮已启动。rejected 为零消费,原因只包括 turn_running、operation_running、empty_input、invalid_blocks、invalid_image、image_too_large、context_budget_exceeded。原生音频、视频块在写入历史和调用模型之前就是 invalid_blocks。运行中向会话服务注入图文块,是 422 midturn_blocks_rejected。

托管档和注入档没有 session.platform 这面连接,调用会 invalid_options,并指向令牌档,不会静默改道。令牌档的能力位只来自 bundle,选项里再传 capabilities 会被拒绝。

媒体工具默认不在服务进程的工具全集里

imageGen、videoGen、speechToText、textToSpeech 必须写进 builtin。不传 tools 时,能力位允许的本地内置工具会装上,这四个名字仍然不在里面。能力位默认关闭;点名但位是关的,装配期 capability_disabled,不会悄悄少一个工具。它们的定义进入每次提示,并且计费。

0.19.0 起的 realtimeAudio 等六个平台位只授权非聊天 HTTP,不装配聊天工具,也不进入会话。不要用这个位代替转写路由。

ImageGenData 给界面的是图片地址。错误时地址为空。异步 taskId 用 GET /t1/imagegen/tasks/{taskId} 查看,页面写明 7 天可查;预算耗尽或中断时服务端照跑照扣。artifact 用来在恢复后重建卡片。存储升到版本 2 后,旧的 tansr serve、自托管服务和 SDK 宿主不能继续写该卷,升级前要一起换。

语音转文字原始音频超过错误页所举的 24 MiB 时,返回 payload_too_large,按 detail.maxRawBytes 切分或压缩,不要原样重试。这个数字不是 image_too_large 的图片上限。

一次纯文本接口不必装这四个工具。2026-10-21 的 npm 版本是 @tansr/sdk 0.19.0、@tansr/serve 0.15.1。本文没有在服务器上跑通这些调用。说明见 v2 协议与 webhook 和 平台装配与 bundle。

相关文章
|
22天前
|
存储 人工智能 JavaScript
企业 AI 工具调用审计:PermissionOptions、事件和业务回执如何分工
用 PermissionOptions、PermissionRules、会话事件与 onDecision 说明 AI 工具权限审计的接线契约。
|
1天前
|
人工智能 安全 开发工具
克隆陌生仓库就开智能体:项目层 hooks 缺省该不该跑?
克隆陌生仓库就开智能体时,项目层 hooks 缺省该不该跑?对照 Datadog/VS Code Workspace Trust,映射 Tansr createSession({ trustProjectHooks }) 缺省关闭与 project_hooks_untrusted 通报。
|
1天前
|
JSON 人工智能 安全
智能体「没报错却少了工具」:怎样接非致命降级通道?
会话成功却工具变少、裁决降级时,如何把 onPlatformWarning/sdk.notice 非致命通道接入宿主,与硬失败分流,避免静默降级被当成正常成功。
|
6天前
|
人工智能 安全 Shell
给客户分发 AI 功能时,怎样按应用控制工具与联网能力?
把 AI 助手交给客户后,安全评审最先关心的是:这个应用能不能写文件、跑 Shell、联网、接 MCP/Skills,以及默认开还是默认关。本文说明如何按应用配置能力位、让高风险面默认关闭,并在代码硬要打开已关能力时立刻失败,而不是静默少一个工具继续跑。
|
6天前
|
人工智能 JSON 缓存
现有软件接入 AI 后,调用报 401/429/余额不足/能力关闭时怎样逐级排障?
把 AI 助手嵌进现有软件之后,线上最常见的不是「模型答不出」,而是调用链突然停住:HTTP 401、429,或提示余额不足、某项能力关闭。行业里这类信号越来越细——同一 HTTP 状态码背后往往是完全不同的处置,再把所有失败统一当成「稍后重试」会把故障放大。
|
8天前
|
人工智能 缓存 安全
Skills over MCP 落地后,现有软件接入远端工作流前怎样做完整性校验与宿主边界?
远端 MCP 服务器用 skill:// 下发 Agent Skills 之后,接入现有软件前要先分清两件事:清单里的 size/SHA-256 只证明读到的字节与清单一致,宿主必须走带校验的加载路径,不能把裸 resources/read 当成已激活、已可信的 Skill。校验通过不等于内容可信,也不等于业务已授权。
|
12天前
|
存储 人工智能 自然语言处理
Agent Skills 开放标准后,接入生产前怎样做版本、权限和回滚治理?
要把 Agent Skill 接入生产,需要同时管理 Skill 版本、工具契约、用户与租户权限,以及业务系统最终确认的状态。本文把一次上线拆成五类依赖,并用发布卡、灰度顺序和回滚原则说明接入生产前怎样做版本、权限和回滚治理。
|
18天前
|
存储 人工智能 安全
给客户分发 AI 功能时,为什么要先关掉联网和写文件?
企业把 AI 助手分发给客户或内部终端用户时,安全评审常先问两件事:它能不能联网,以及能不能写文件、跑命令。更稳妥的顺序是先按这个应用定死能力边界,再谈每次调用要不要弹确认。本文说明写文件、Shell、联网和 MCP 等能力为什么应默认关闭,以及它和运行时权限确认差在哪里。
|
18天前
|
人工智能 缓存 API
Electron 里的 AI 助手,API Key 放客户端为什么等于公开?
Electron 安装包可解包、asar 可提取,渲染进程在开发者工具下可读。把上游模型 API Key 或平台 appkey 写进客户端配置或打包结果,效果上接近公开额度入口。推荐只在服务端保存长寿命密钥,由已登录用户换发短期令牌。
|
20天前
|
JSON 监控 API
429 出现在进程内、会话服务还是控制台账单?
进程内 SDK、会话服务和控制台账单看到的拒绝不一样。并发满了到手机上可能只显示 rate_limited,要再看 scope。

热门文章

最新文章