Chat Completions 是用於 OpenAI 最新模型的標準 API。你可以透過我們的文字生成開發人員指南了解如何開始使用。
截至 2025 年 3 月 11 日,我們已發佈全新智能代理平台的構建區塊。詳情請參閱我們的 Responses API API 文件、包括網頁搜尋、檔案搜尋和電腦使用在內的工具,以及我們配備追蹤功能的智能代理 SDK。
從提示詞改用訊息
如要與模型進行更具互動性和靈活的對話,你可以使用對話格式的訊息,取代 Completions 所用的舊式提示詞格式。
運作方式如下:
輸入時,你不再傳送單一提示詞字串,而是傳送訊息物件清單。
每則訊息都有一個 role,通常亦有 content。
常見角色包括 system、user、assistant、developer 和 tool。工具訊息用於傳回工具或函數的結果,並且必須對應 assistant 發出的工具調用。為保持向後兼容,系統仍可能接受函數訊息,並在伺服器處理期間將其轉換為工具訊息。視乎模型支援情況,系統可能會重新映射開發者訊息。
content 包含該角色所發訊息的文字。
系統指示可為對話提供高層次指引
系統會按訊息在清單中的先後次序處理,assistant 亦會作出相應回應。
即使是基本的 Completions 請求,也可透過 Chat Completions 完成,如下所示:
| 以往 | 現在 |
|---|---|
'prompt' : 'tell me a joke' | 'messages': [{'role':'user', 'content':'tell me a joke'}] |
現在,只需擴充對話中的訊息清單,即可輕鬆與模型來回對話。
'messages': [{'role':'user', 'content':'講個笑話給我聽'},
{'role':'assistant', 'content':'點解隻雞要過馬路'},
{'role':'user', 'content':'我唔知,點解隻雞要過馬路'}]系統指示
你亦可以使用系統層級指示,在整段對話中引導模型的行為。例如,使用系統指示和如下訊息
'messages': [{'role':'system', 'content':'你是一位說話風格像莎士比亞的助理。'},
{'role':'user', 'content':'講個笑話給我聽'}, 將會產生類似以下的結果
{...
'message': {'role':'assistant',
'content':'點解隻雞要過馬路?為咗去對面,但說真的,對面滿是危險與凶險,所以牠很快就從來處折返,誠然如此!'}
...}如果你想探索毋須自行管理訊息對話記錄的選項,請查看 Assistants API。
