Python
Python 是接入 零派智能API 最常用的语言之一。通过官方 openai SDK,你可以用极少的代码完成 API 调用。
安装 SDK
使用 pip 安装 OpenAI Python SDK:
pip install openai建议使用 Python 3.8 或更高版本。如果使用虚拟环境,请先激活后再安装。
配置 Client
通过环境变量配置 API Key 和 Base URL,避免在代码中硬编码敏感信息:
export API_KEY="sk-your-api-key"export BASE_URL="https://your-domain.com/v1"export MODEL="gpt-4o"在代码中读取环境变量并初始化客户端:
import osfrom openai import OpenAI
client = OpenAI( api_key=os.environ.get("API_KEY"), base_url=os.environ.get("BASE_URL"),)Chat Completions 示例
以下是一个完整的同步请求示例:
import osfrom openai import OpenAI
client = OpenAI( api_key=os.environ.get("API_KEY"), base_url=os.environ.get("BASE_URL"),)
response = client.chat.completions.create( model=os.environ.get("MODEL"), messages=[ {"role": "system", "content": "你是一个有帮助的助手。"}, {"role": "user", "content": "用一句话解释什么是 API。"}, ],)
print(response.choices[0].message.content)流式响应示例
将 stream 参数设为 True 即可逐字接收响应:
import osfrom openai import OpenAI
client = OpenAI( api_key=os.environ.get("API_KEY"), base_url=os.environ.get("BASE_URL"),)
stream = client.chat.completions.create( model=os.environ.get("MODEL"), messages=[ {"role": "user", "content": "写一首关于大海的诗。"}, ], stream=True,)
for chunk in stream: content = chunk.choices[0].delta.content if content is not None: print(content, end="", flush=True)异步示例
如果你使用 asyncio,可以使用 AsyncOpenAI 客户端进行异步调用:
import asyncioimport osfrom openai import AsyncOpenAI
client = AsyncOpenAI( api_key=os.environ.get("API_KEY"), base_url=os.environ.get("BASE_URL"),)
async def main(): stream = await client.chat.completions.create( model=os.environ.get("MODEL"), messages=[ {"role": "user", "content": "用三句话介绍 Python。"}, ], stream=True, )
async for chunk in stream: content = chunk.choices[0].delta.content if content is not None: print(content, end="", flush=True)
asyncio.run(main())查看可用模型
import osfrom openai import OpenAI
client = OpenAI( api_key=os.environ.get("API_KEY"), base_url=os.environ.get("BASE_URL"),)
models = client.models.list()for model in models.data: print(model.id)