簡介
OpenAI的GPT-3和GPT-3.5 Turbo模型不僅能用於單一任務,也非常適用於多輪對話。在這篇文章中,我們將探討如何使用openai.ChatCompletion.create API來實現這一目的。
前置準備
安裝openai Python庫:
pip install openai
從OpenAI官網取得API金鑰。
設定API金鑰環境變數:export OPENAI_API_KEY=你的API金鑰
常用參數
- model: 使用的模型,例如 "gpt-3.5-turbo"。
- messages: 包含對話訊息的列表。
- role: 可以是 "system"、"user" 或 "assistant"。
- content: 對話的實際內容。
- max_tokens: 生成的最大令牌(token)數量。
- n: 生成多少個不同的回應。
- stop: 哪些字符或字符串會停止生成。
- temperature: 控制生成的隨機性。
範例代碼
以下是一個簡單的Python範例,展示如何使用API進行多輪對話。
import openai
# 設定API金鑰
openai.api_key = "你的API金鑰"
# 初始化對話列表
conversation = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Who won the world series in 2020?"},
{"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."},
{"role": "user", "content": "Where was it played?"}
]
# 呼叫API
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=conversation,
max_tokens=150,
n=1,
stop=None,
temperature=0.7
)
# 輸出回應
print(response['choices'][0]['message']['content'])
總結
透過openai.ChatCompletion.create API,我們可以輕鬆實現多輪對話。只需繼續添加到messages列表中的對話即可進行更多回合的互動。