OpenAI Python SDK 用于开发与 OpenAI RESTful API 进行交互的客户端应用程序,包含了 OpenAI 的各种人工智能模型的 API。
OpenAI Python SDK 提供了多个模块,每个模块都具有一套自包含的 APIs,包括:
OpenAI ChatCompletion 模块用于访问 ChatGPT 语言模型,用于实现对话式(Chat)AI 应用程序。
函数作用:与 ChatGPT 进行 C/S 交互,返回 AI 模型生成的对话文本。注意,该接口是 Stateless 的,每次调用都不包含对话的上下文。这意味着需要客户端应用程序自己维护 “聊天记录“。
函数原型:
def create(
model: str,
messages: str,
max_tokens: Optional[int] = None,
temperature: Union[int, float] = 0.5,
top_p: Union[int, float] = 1.0,
frequency_penalty: Union[int, float] = 0,
presence_penalty: Union[int, float] = 0,
stop: Optional[Union[str, List[str]]] = None,
n: Optional[int] = 1,
max_examples: Optional[int] = None,
logprobs: Optional[int] = None,
echo: bool = True,
**kwargs,
) -> Dict[str, Union[str, List[str]]]:
pass
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "Say this is a test!"}],
"temperature": 0.7
}'
{
"id":"chatcmpl-abc123",
"object":"chat.completion",
"created":1677858242,
"model":"gpt-3.5-turbo-0301",
"usage":{
"prompt_tokens":13,
"completion_tokens":7,
"total_tokens":20
},
"choices":[
{
"message":{
"role":"assistant",
"content":"\n\nThis is a test!"
},
"finish_reason":"stop",
"index":0
}
]
}
messages = [
{"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?"}
]