OpenAI sdk可以通过设置部署地址base_url和令牌api_key的方式,访问第三方部署的模型。

1 参数设置

OpenAI sdk支持OpenAI()对象中通过参数设置部署地址base_url和令牌api_key,示例程序如下。

from openai import OpenAI
 
client = OpenAI(
    base_url="https://model_provider_url", # 部署地址
    api_key="sk-xxxxxxxxxxxxxx" # 令牌
)
response = client.chat.completions.create(
    model="deepseek-r1", 
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Who won the world series in 2020?"},
        {"role": "assistant", "content": "The LA Dodgers won in 2020."},
        {"role": "user", "content": "Where was it played?"}
      ],
    temperature=0.7,  
    max_tokens=512  
)
print(response.choices[0].message.content)

2 环境变量

OpenAI sdk支持通过环境变量设置部署地址base_url和令牌api_key:

OPENAI_API_KEY环境变零对应api_key

OPENAI_BASE_URL环境变量对应base_url

OpenAI()创建时若未提供base_url和api_key,则通过上述环境变量获取api_key和base_url。

示例程序如下

import os
os.environ['OPENAI_API_KEY'] = "sk-xxxxxxxxxxxxxxxxa" # 令牌
os.environ['OPENAI_BASE_URL'] = "https://model_prodider_url" # 部署地址

from openai import OpenAI

client = OpenAI()
response = client.chat.completions.create(
    model="deepseek-r1",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Who won the world series in 2020?"},
        {"role": "assistant", "content": "The LA Dodgers won in 2020."},
        {"role": "user", "content": "Where was it played?"}
      ],
    temperature=0.7,  
    max_tokens=512  
)
print(response.choices[0].message.content)

reference

---

Logo

加入社区!打开量化的大门,首批课程上线啦!

更多推荐