You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法更新OpenAI Realtime会话转录提示的技术咨询

问题解答

1. 为何无法在Realtime WebSocket会话中更新转录设置?

  • OpenAI的transcription_session.update事件仅适用于独立的转录会话服务,而非Realtime对话的WebSocket会话。你当前使用的是Realtime API的WebSocket连接,这类会话不支持通过该事件更新转录配置。
  • 文档中关于transcription_session.update的说明,针对的是单独调用转录服务的场景,并非Realtime对话场景。Realtime会话的转录相关设置(包括input_audio_transcription.prompt)只能在会话初始化阶段(发送session.create事件时)指定,一旦会话建立,无法后续修改。

替代方案

如果需要动态更新转录提示的上下文,可通过以下方式实现:

  • 在发送用户消息时,将历史对话上下文直接包含在user.message.content中,让GPT模型结合上下文理解当前输入;
  • 若必须修改转录模型参数,只能关闭当前WebSocket连接,重新创建一个新的Realtime会话,在session.create中传入更新后的配置。

2. turn_detection.create_response参数报错的原因

  • create_response不属于Realtime API中turn_detection的合法参数,该参数仅存在于其他特定API场景中。Realtime API的turn_detection仅支持以下参数:
    • type:仅支持server_vad或none
    • threshold
    • prefix_padding_ms
    • silence_duration_ms
  • 因此必须移除该参数,否则会触发"未知参数"错误。

修正后的Realtime会话初始化配置示例

// 会话创建时的配置(仅能在此阶段设置转录参数)
const sessionCreate = {
  type: "session.create",
  session: {
    input_audio_format: "g711_ulaw",
    input_audio_transcription: {
      model: "gpt-4o-transcribe",
      prompt: conversationHistoryForPrompt, // 初始化时设置提示
      language: "fr",
    },
    turn_detection: {
      type: "server_vad",
      threshold: 0.5,
      prefix_padding_ms: 300,
      silence_duration_ms: 500,
    },
    input_audio_noise_reduction: {
      type: "near_field",
    },
  },
};

内容的提问来源于stack exchange,提问作者toto_tata

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 20:22:24