name: “转录” description: “将音频文件转录为文本,支持可选的话者分离和已知话者提示。当用户要求转录音频/视频中的语音、从录音中提取文本或在访谈或会议中标记话者时使用。” author: openai
音频转录
使用OpenAI进行音频转录,支持可选的话者分离功能。建议使用捆绑的CLI以获得确定性和可重复的运行。
工作流
- 收集输入:音频文件路径、期望的响应格式(文本/json/话者分离_json)、可选的语言提示,以及任何已知话者参考。
- 验证
OPENAI_API_KEY是否设置。如果缺失,请用户本地设置(不要要求用户粘贴密钥)。 - 使用合理的默认值(快速文本转录)运行捆绑的
transcribe_diarize.pyCLI。 - 验证输出:转录质量、话者标签和片段边界;如有需要,进行单一有针对性的更改迭代。
- 当在此仓库中工作时,将输出保存到
output/transcribe/下。
决策规则
- 默认使用
gpt-4o-mini-transcribe和--response-format text进行快速转录。 - 如果用户需要话者标签或话者分离,使用
--model gpt-4o-transcribe-diarize --response-format diarized_json。 - 如果音频长度超过约30秒,保持
--chunking-strategy auto。 gpt-4o-transcribe-diarize不支持提示。
输出约定
- 使用
output/transcribe/<job-id>/进行评估运行。 - 使用
--out-dir处理多个文件以避免覆盖。
依赖(如果缺失则安装)
优先使用uv进行依赖管理。
uv pip install openai
如果uv不可用:
python3 -m pip install openai
环境
OPENAI_API_KEY必须设置以进行实时API调用。- 如果密钥缺失,指导用户在OpenAI平台UI中创建一个,并在其shell中导出。
- 永远不要在聊天中要求用户粘贴完整密钥。
技能路径(设置一次)
export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
export TRANSCRIBE_CLI="$CODEX_HOME/skills/transcribe/scripts/transcribe_diarize.py"
用户范围的技能安装在$CODEX_HOME/skills下(默认:~/.codex/skills)。
CLI快速开始
单文件(快速文本默认):
python3 "$TRANSCRIBE_CLI" \
path/to/audio.wav \
--out transcript.txt
话者分离与已知话者(最多4个):
python3 "$TRANSCRIBE_CLI" \
meeting.m4a \
--model gpt-4o-transcribe-diarize \
--known-speaker "Alice=refs/alice.wav" \
--known-speaker "Bob=refs/bob.wav" \
--response-format diarized_json \
--out-dir output/transcribe/meeting
纯文本输出(明确):
python3 "$TRANSCRIBE_CLI" \
interview.mp3 \
--response-format text \
--out interview.txt
参考地图
references/api.md:支持的格式、限制、响应格式和已知话者笔记。