如何在OpenAI中配置HTTP客户端

问题描述 投票:0回答:1

使用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()
openai-api httpx
1个回答
0
投票

您可以在创建

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 密钥。

© www.soinside.com 2019 - 2024. All rights reserved.