记录香港个人语音输入验收及 JSON 响应限制

This commit is contained in:
Codex
2026-10-25 01:01:32 -07:00
parent 71ccac6d72
commit 443ed46bf9
+2 -1
View File
@@ -23,8 +23,9 @@
- 转写完整地址:`https://api.opfo.xyz/v1/audio/transcriptions`。
- 模型:`gemini-transcribe-personal`,真实上游为 `vertex_ai/gemini-3.5-transcribe`,区域 `global`,复用 HK ADC。
- API Key:HK 现有 LiteLLM 主密钥,不是 tools-pve 客户端 key,也不是 ZenMux key。
- 响应选 `json` 或 `text`;不请求时间戳、说话人分离或 `verbose_json`。额外 prompt 留空;去口语化由 SMART 负责,不靠提示词。
- 响应使用 `json`;不请求时间戳、说话人分离或 `verbose_json`。当前 LiteLLM 请求 `text` 时实测仍返回 JSON 包装,因此不要选 text。额外 prompt 留空;去口语化由 SMART 负责,不靠提示词。
- 仅显式带 `personal_dictation: true` 的这条路由经 `vertex_dictation.py` 添加 `generationConfig.audioTranscriptionConfig.mode=SMART` 和 `customVocabulary`。其他转写路线、会议录音以及 tools-pve 配置不改。
- 个人词库从既有 ASR SQLite 中导出 100 个已确认 canonical 目标词;不把误识别别名或整个公共术语库发给 Google。用户已批准该个人词库用于 HK Vertex 语音输入。
- `PERSONAL_VOCABULARY_B64` 只存 Arcane Project 环境(Base64 不是加密);init 将其解码至现有私有凭据卷 `/credentials/personal-vocabulary.json`,umask 077,LiteLLM 只读挂载,不进入 Git。
- 更新词库时使用项目 `scripts/export-personal-asr-vocabulary.py`,替换 Arcane 中上述变量并重建 init;单改环境变量不会更新已生成文件。升级 LiteLLM 前重跑 `scripts/test-vertex-dictation-wire.py`,确认原生 SMART/热词和普通路线隔离。
- 验收:OpenAI multipart 音频端点接受一秒静音及 Google 公开 Brooklyn Bridge 语音示例,json 均返回 200,公开样本正确输出 `How old is the Brooklyn Bridge?`。测试证明接口和原生参数有效,不代表中文口语及个人名词已进行识别质量对比。