Python Examples
Panda World is compatible with the official OpenAI Python SDK. Install it and switch the base_url.
Installation
pip install openaiBasic Chat Completion
from openai import OpenAI
client = OpenAI(
base_url="https://api.relay-station.com/v1",
api_key="sk-your-key-here"
)
response = client.chat.completions.create(
model="deepseek-chat",
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)Streaming
from openai import OpenAI
client = OpenAI(
base_url="https://api.relay-station.com/v1",
api_key="sk-your-key-here"
)
stream = client.chat.completions.create(
model="deepseek-chat",
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="")Environment Variable
Set your API key as an environment variable for better security:
export RELAY_API_KEY="sk-your-key-here"import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.relay-station.com/v1",
api_key=os.environ["RELAY_API_KEY"]
)Error Handling
from openai import OpenAI
from openai import APIError, RateLimitError, AuthenticationError
client = OpenAI(
base_url="https://api.relay-station.com/v1",
api_key="sk-your-key-here"
)
try:
response = client.chat.completions.create(
model="deepseek-chat",
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}")Multi-turn Conversation
from openai import OpenAI
client = OpenAI(
base_url="https://api.relay-station.com/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-chat",
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-chat",
messages=messages
)
print(response.choices[0].message.content)