媒体集成
媒体集成负责把 Anyy 接到已经实现的媒体服务。它们不会替代主模型,而是为图像生成、文字转语音和音频转写提供专门的能力路径。
图像生成
图像生成使用 media_generation toolset 中的 image_generate tool。
最小配置:
auxiliary_models:
image_generation:
- provider_id: image-provider
model: image-model
media_generation:
image:
enabled: true
default_aspect_ratio: square
timeout_ms: 120000
max_bytes: 5242880
运行行为、artifact metadata、路由顺序和失败模式见 图像生成。
文字转语音
TTS 使用 tts toolset 中的 text_to_speech tool。
最小 OpenAI-compatible 配置:
tts:
enabled: true
provider: openai
timeout_ms: 60000
max_chars: 4096
openai:
model: tts-1
voice: alloy
base_url: https://api.openai.com/v1
api_key_ref: env:OPENAI_API_KEY
response_format: mp3
voice:
auto_tts: false
Provider 类型、artifact、preview 和投递说明见 文字转语音。
音频转写
音频转写属于 media understanding。入站附件标记为 audio 或 voice 时,它会在 assistant turn 前运行。
media_understanding:
enabled: true
audio:
enabled: true
provider: openai
mode: auto
on_failure: annotate
timeout_ms: 60000
max_bytes: 25000000
max_chars: 12000
providers:
openai:
type: openai
model: gpt-4o-mini-transcribe
base_url: https://api.openai.com/v1
api_key_ref: env:OPENAI_API_KEY
Attachment 规则、失败策略和 provider 配置见 Transcription。
Toolsets 与可见性
媒体能力不是全部默认可见:
| 能力 | Runtime 路径 | Toolset |
|---|---|---|
| 图像生成 | model-visible tool | media_generation |
| 文字转语音 | model-visible tool | tts |
| 音频转写 | inbound preprocessing | 无 chat tool |
只启用当前 session 或默认 toolset profile 需要的能力。
故障排查
- 看不到图像 tool:检查
media_generation.image.enabled、图像模型选择和media_generationtoolset。 - 看不到 TTS tool:检查
tts.provider、provider credentials 和ttstoolset。 - 音频没有转写:检查
media_understanding.audio.enabled、audio.provider、attachment kind 和 size limit。 - Provider auth 失败:使用
env:NAME、file:/path或secret:name,不要把 raw secret 写进 YAML。