核心功能
openai 是 OpenAI 官方 Python 库,为 REST API 提供类型化封装。创建客户端后可用 responses.create() 或 chat.completions.create() 发起请求,也支持 AsyncOpenAI 异步调用与流式输出,需 Python 3.10+。
功能亮点
两套接口
既支持 Responses 接口,也兼容 chat.completions 写法
异步支持
AsyncOpenAI 与同步客户端功能一致,直接用 await 调用
流式输出
加上 stream=True 后可逐个事件遍历,边生成边展示结果
后端可选
装 openai[aiohttp] 额外依赖即可切换底层 HTTP 后端
自定义模型 / 模型接入
支持自定义网关
官方SDK,默认读OPENAI_API_KEY;可用base_url或OPENAI_BASE_URL指向任意兼容端点,另有AzureOpenAI类。
接入方式
- 官方API:读OPENAI_API_KEY构造OpenAI()
- 自定义端点:base_url参数或OPENAI_BASE_URL环境变量
- Azure:用AzureOpenAI类,配azure_endpoint
- 变量:AZURE_OPENAI_ENDPOINT、OPENAI_API_VERSION
- 异步客户端:AsyncOpenAI同样支持base_url与api_key
支持模型
gpt-5.5gpt-4ogpt-realtime-2Azure部署名Bedrock上的OpenAI模型兼容端点自定义模型
bash
把官方SDK指向国产模型或自建网关的OpenAI兼容端点
pip install openai
export OPENAI_BASE_URL="https://<compatible-endpoint>/v1"
export OPENAI_API_KEY="your_api_key_here"
代码中直接构造,SDK自动读取环境变量
from openai import OpenAI
client = OpenAI()
resp = client.chat.completions.create(model="<model-name>", messages=[{"role": "user", "content": "Hello!"}])
也可在代码里显式指定端点
client = OpenAI(base_url="http://my.test.server.example.com:8083/v1")
走Azure OpenAI时换客户端类
from openai import AzureOpenAI
client = AzureOpenAI(api_version="2023-07-01-preview", azure_endpoint="https://example-endpoint.openai.azure.com")适用场景
• 在 Python 服务中接入 GPT 模型
• 批量生成或改写文本内容
• 异步并发处理大量模型请求
• 对接 OpenAI 兼容的自建端点
安装配置
bash
pip install openai # 使用 aiohttp 异步后端 pip install openai[aiohttp] # Amazon Bedrock 可选依赖 pip install 'openai[bedrock]'
使用方法
python
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ.get("OPENAI_API_KEY"),
)
response = client.responses.create(
model="gpt-5.5",
instructions="You are a coding assistant that talks like a pirate.",
input="How do I check if a Python object is an instance of a class?",
)
print(response.output_text)
# Chat Completions 写法
completion = client.chat.completions.create(
model="gpt-5.5",
messages=[
{"role": "developer", "content": "Talk like a pirate."},
{"role": "user", "content": "How do I check if a Python object is an instance of a class?"},
],
)
print(completion.choices[0].message.content)关键指标
尚未核验对标产品,此处只列本工具自身指标,不做对比结论。
指标openai-python
价格免费
开源是
上手难度入门
Token 消耗低
相关工具
同类工具
优点
- OpenAI 官方维护,新接口和新参数发布后基本第一时间可用
- 全量类型标注,IDE 里能直接补全请求参数与响应字段
- 同步 OpenAI 与异步 AsyncOpenAI 用法一致,改造并发只需少量改动
- 可按需装 openai[aiohttp] 或 openai[bedrock] 等额外依赖扩展能力
缺点
- 只面向 OpenAI 及兼容端点,要接别家模型得换库或前置网关
- 库免费但 API 调用按 token 计费,还需自备可用的付费账号
- 要求 Python 3.10 及以上,较老的生产环境需先升级解释器
- Responses 与 chat.completions 两套接口并存,新手容易选错