OpenAI
此頁面由機器翻譯。查看原始英文文章

在 OpenAI API 中從 Completions 轉移至 Chat Completions

如何從舊版 OpenAI Completions API 遷移至 Chat Completions

更新日期:7 days ago

Chat Completions 是搭配 OpenAI 最新模型使用的標準 API。你可以透過我們的 文字生成開發者指南,了解如何開始使用。

截至 2025 年 3 月 11 日,我們已發布全新智慧體平台的建構模組。如需詳細資訊,請參閱我們的 Responses API API 文件、包含 網頁搜尋檔案搜尋電腦使用 的工具,以及我們含有 追蹤智慧體 SDK

從提示詞改用訊息

若要與模型進行更具互動性、更靈活的對話,您可以改用聊天格式的訊息,不再使用舊版補全功能採用的提示詞格式。

運作方式如下:

  • 輸入時,您不再傳送單一提示詞字串,而是傳送一組訊息物件。

  • 每則訊息都有一個 role,通常也有 content

  • 常見的角色包括 systemuserassistantdevelopertool。工具訊息用於傳回工具/函式的結果,且必須對應至助理發出的工具呼叫。為了向後相容,伺服器仍可能接受函式訊息,並在處理時將其轉換為工具訊息。開發者訊息可能會依模型支援情況重新對應。

  • content 包含該角色所傳訊息的文字內容。

  • 系統指示可為對話提供高層次指引

  • 訊息會按照其在清單中的順序處理,助理也會據此回應。

即使是基本的補全請求,也能透過聊天補全完成,如下所示:

以前現在
'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

這篇文章有幫助嗎?