Python 示例
Panda World 兼容官方 OpenAI Python SDK。安装后只需更改 base_url 即可使用。
安装
cURL
pip install openai基本聊天补全
Python
from openai import OpenAI
client = OpenAI(
base_url="https://api.pandaworld.space/v1",
api_key="sk-your-key-here"
)
response = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Explain quantum computing in 3 sentences."}
],
temperature=0.7,
max_tokens=200
)
print(response.choices[0].message.content)流式响应
Python
from openai import OpenAI
client = OpenAI(
base_url="https://api.pandaworld.space/v1",
api_key="sk-your-key-here"
)
stream = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[{"role": "user", "content": "Write a short poem."}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")环境变量
将 API 密钥设置为环境变量以提高安全性:
cURL
export PANDA_API_KEY="sk-your-key-here"Python
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.pandaworld.space/v1",
api_key=os.environ["PANDA_API_KEY"]
)错误处理
Python
from openai import OpenAI
from openai import APIError, RateLimitError, AuthenticationError
client = OpenAI(
base_url="https://api.pandaworld.space/v1",
api_key="sk-your-key-here"
)
try:
response = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[{"role": "user", "content": "Hello!"}]
)
except AuthenticationError:
print("Invalid API key")
except RateLimitError:
print("Rate limit exceeded — slowing down")
except APIError as e:
print(f"API error: {e}")多轮对话
Python
from openai import OpenAI
client = OpenAI(
base_url="https://api.pandaworld.space/v1",
api_key="sk-your-key-here"
)
messages = [
{"role": "system", "content": "You speak like a pirate."},
{"role": "user", "content": "What's the weather like?"},
]
# First turn
response = client.chat.completions.create(
model="deepseek-v4-flash",
messages=messages
)
messages.append(response.choices[0].message)
messages.append({"role": "user", "content": "Can you recommend a good ship?"})
# Second turn (conversation history included)
response = client.chat.completions.create(
model="deepseek-v4-flash",
messages=messages
)
print(response.choices[0].message.content)