前面我們玩了文字聊天、Function Calling、FAQ 系統,甚至還讓 AI 說話更自然。
今天要進入 Audio 功能,讓 AI 聽得懂我們說的話!
這就是 Speech-to-Text (STT),
把一段語音檔轉換成文字。
格式可以是 .wav
、.mp3
、.m4a
等常見音訊檔。
你可以錄一段自己的聲音,接下來是程式碼的部分
import os
from openai import OpenAI
from dotenv import load_dotenv
load_dotenv()
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
# 打開音訊檔
with open("test.wav", "rb") as audio_file:
transcript = client.audio.transcriptions.create(
model="gpt-4o-transcribe", # 語音轉文字模型
file=audio_file
)
print("轉換結果:", transcript.text)
譬如說我們錄音個:鐵人賽測試
Whisper 模型會自動偵測語言,不需要指定中文或英文。
例如你錄英文,輸出也會是英文:
除了轉錄文字,還能做:
翻譯(把中文語音翻譯成英文文字):
transcript = client.audio.translations.create(
model="gpt-4o-transcribe",
file=open("test.wav", "rb")
)
print("翻譯結果:", transcript.text)
搭配 Chat。模型語音轉文字再丟進 Chat 模型,就能做「語音對話助理」
今天我們學會了 語音轉文字 (STT):如何讀取音訊檔並轉換成文字Whisper、模型能自動辨識語言還能做翻譯與進階應用。
明天我們要反過來,玩文字轉語音(TTS),讓 AI 說話!