使用httpx创建客户端的方式:
with httpx.Client(headers=headers,params=params) as client:
r = client.post(url, data=data)
但是,我想将其配置为使用 openai 包:
client = openai.OpenAI(api_key='...',
http_client=httpx.Client(headers=headers,params=params))
我不确定是否要使用其中之一:
client.chat.completions.create()
client.post()
您可以在创建
http_client
类的实例时使用 openai.OpenAI
参数。以下是如何使用 httpx
配置 HTTP 客户端的示例:
import httpx
import openai
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}
params = {
"param1": "value1",
"param2": "value2"
}
http_client = httpx.Client(headers=headers, params=params)
client = openai.OpenAI(api_key='YOUR_API_KEY', http_client=http_client)
在上面的示例中,您使用所需的标头和参数创建
httpx.Client
的实例。然后,在创建 openai.OpenAI 客户端时,将此 http_client
实例作为 http_client
参数传递。
配置客户端后,您可以使用
client.chat.completions.create()
方法发出用于聊天完成的 API 请求,并使用 client.post()
方法向 OpenAI API 发出其他 HTTP POST 请求。
使用 OpenAI 客户端创建聊天完成的示例:
model="davinci",
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?"}
]
)
print(response["choices"][0]["message"]["content"])
这是使用客户端发出通用 POST 请求的示例:
print(response.json())
请记住将“YOUR_API_KEY”替换为您的实际 OpenAI API 密钥。