Intermediate ⏱ 30 min
Complete API Integration Guide
DeepSeek API integration: streaming, function calls, error handling and production best practices for V4 Pro and Flash.
This tutorial covers production-grade integration patterns for the DeepSeek V4 API.
Streaming Output
stream = client.chat.completions.create(
model="deepseek-v4-pro",
messages=[{"role": "user", "content": "Write a poem about AI"}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")
Function Calling
tools = [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get weather for a city",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string"}
}
}
}
}]
response = client.chat.completions.create(
model="deepseek-v4-pro",
messages=[{"role": "user", "content": "What's the weather in Beijing today?"}],
tools=tools
)
Error Handling
from openai import RateLimitError, APIError
import time
for attempt in range(3):
try:
response = client.chat.completions.create(...)
break
except RateLimitError:
time.sleep(2 ** attempt)
except APIError as e:
print(f"API error: {e}")
Production Recommendations
- Store API keys in environment variables — never hardcode secrets
- Set reasonable
max_tokenslimits to control cost - Use context compression or summarization for long conversations
- DSpark acceleration is enabled by default on API to reduce latency