Thực Tiễn Tốt Nhất

Tối Ưu Hóa Production

Đạt được độ trễ thấp nhất, thông lượng cao nhất và chi phí tối thiểu từ tích hợp TokSpan của bạn. Đây là các mẫu chúng tôi chạy trong stack sản xuất của chính mình.

Giảm Thiểu Độ Trễ

Sử Dụng Connection Pooling

Tái sử dụng kết nối HTTP giúp loại bỏ chi phí bắt tay TLS trên mỗi request (~50–100ms tiết kiệm mỗi lần gọi). OpenAI SDK tự động pool kết nối, nhưng với môi trường production, hãy tinh chỉnh kích thước pool:

python
import httpx
from openai import OpenAI

# Production-grade client with connection pooling
client = OpenAI(
    api_key="sk-your-key",
    base_url="https://api.tokspan.com/v1",
    http_client=httpx.Client(
        limits=httpx.Limits(
            max_keepalive_connections=20,
            max_connections=50,
        ),
        timeout=60.0,  # total timeout
    ),
)

Luôn Streaming cho UX Tương Tác

Đặt stream: true cho mọi request hướng đến người dùng. Streaming trả về token đầu tiên trong ~100ms thay vì chờ 5–30s cho toàn bộ phản hồi. Xem Chat Completions — Streaming để triển khai.

Edge Routing

Các yêu cầu đến api.tokspan.com được phục vụ qua mạng edge của TokSpan, định tuyến lưu lượng đến khu vực backend lưu trữ mô hình của bạn. Bạn không cần cấu hình gì.

Tận Dụng Prompt Caching

Prompt caching có thể cắt giảm time-to-first-token lên đến 80% với prompt lặp lại. Đặt nội dung tĩnh (hướng dẫn hệ thống, ngữ cảnh) ở đầu mảng messages. Xem hướng dẫn Prompt Caching để biết chi tiết.

Danh Sách Kiểm Tra Độ Trễ

Tối Ưu HóaTác Động Độ TrễCông Sức
Pool kết nối−50–100ms mỗi requestThấp
Bật streamingCảm nhận: −5–30sThấp
Bộ nhớ đệm prompt−80% khi cache hitTrung bình

Giảm Thiểu Chi Phí

Lựa Chọn Mô Hình Thông Minh

Không phải tác vụ nào cũng cần GPT hoặc Claude Opus. Chuyển các tác vụ đơn giản sang mô hình rẻ hơn:

Loại Tác VụMô Hình Khuyến NghịChi Phí so với GPT
Phân loại, trích xuất, gắn thẻGPT mini, Claude Haiku, Gemini FlashRẻ hơn 10–50 lần
Soạn thảo, tóm tắt, dịch thuậtDeepSeek, Llama, MistralRẻ hơn 3–10 lần
Suy luận phức tạp, sinh mãGPT, Claude OpusCơ sở
Xử lý batch / nềnDeepSeek hoặc các mô hình chi phí thấp khácRẻ hơn 5–15 lần

Đặt Giới Hạn Chi Tiêu

Cấu hình giới hạn chi tiêu cho từng key trong Bảng điều khiển. Key sẽ tự động vô hiệu hóa khi dùng hết hạn mức — không có hóa đơn bất ngờ. Đặt giới hạn thấp hơn cho key phát triển và giới hạn chặt chẽ hơn cho key chia sẻ với khách hàng. Xem Key Scoping.

Danh Sách Kiểm Tra Chi Phí

Tối Ưu HóaTác Động Chi PhíCông Sức
Chuyển tác vụ đơn giản sang mô hình mini−70–95% cho các tác vụ đóTrung bình
Bật prompt caching−50–90% khi cache hitThấp
Đặt giới hạn chi tiêu cho từng keyGiới hạn cứng cho chi tiêu tối đaThấp
Theo dõi bảng điều khiển mức sử dụng hàng tuầnPhát hiện bất thường sớmThấp

Tối Đa Hóa Thông Lượng

Bất Đồng Bộ + Xử Lý Hàng Loạt (Async + Batching)

Với xử lý hàng loạt, hãy dùng async client và request đồng thời. Cơ sở hạ tầng của TokSpan mở rộng theo chiều ngang — giới hạn thông lượng của bạn thường là rate limit, không phải máy chủ:

python
import asyncio
from openai import AsyncOpenAI

client = AsyncOpenAI(api_key="sk-your-key", base_url="https://api.tokspan.com/v1")

async def process_batch(prompts: list):
    tasks = [
        client.chat.completions.create(
            model="MODEL_NAME",
            messages=[{"role": "user", "content": p}],
        )
        for p in prompts
    ]
    return await asyncio.gather(*tasks)

Hướng Dẫn Đồng Thời

Điểm khởi đầu:

  • Pay-as-you-go: Bắt đầu với mức đồng thời vừa phải (5–10 request song song) và tăng dần dựa trên độ trễ và phản hồi quan sát được
  • Enterprise: Đồng thời tùy chỉnh — liên hệ chúng tôi để biết giới hạn của bạn

Nếu bạn bắt đầu nhận được phản hồi 429, hãy giảm mức đồng thời và lùi thời gian trước khi thử lại (exponential backoff kèm jitter). Giới hạn khác nhau theo gói và mô hình — xem Rate Limits để biết chi tiết.

Độ Tin Cậy Production

Thử Lại với Exponential Backoff

Sự cố mạng thoáng qua và vấn đề nhà cung cấp tạm thời luôn có thể xảy ra. Luôn bọc các lệnh gọi API trong logic thử lại:

python
import time
import random
from openai import OpenAI, RateLimitError, APIError

def chat_with_retry(client, model, messages, max_retries=3):
    for attempt in range(max_retries):
        try:
            return client.chat.completions.create(model=model, messages=messages)
        except RateLimitError:
            if attempt == max_retries - 1: raise
            # Exponential backoff with jitter
            wait = (2 ** attempt) + random.uniform(0, 1)
            time.sleep(wait)
        except APIError as e:
            if e.status_code < 500 or attempt == max_retries - 1: raise
            wait = (2 ** attempt) + random.uniform(0, 1)
            time.sleep(wait)

Chuyển Đổi Dự Phòng Cùng Mô Hình Tự Động

Nếu nhà cung cấp phục vụ mô hình của bạn gặp thời gian ngừng hoạt động, TokSpan tự động định tuyến lại yêu cầu đến nhà cung cấp khác phục vụ cùng một mô hình — không rơi request nào và không cần can thiệp thủ công. Việc chuyển đổi dự phòng nằm trong cùng mô hình, vì vậy hành vi đầu ra vẫn nhất quán. Xem Auto Failover.

Chiến Lược Khóa API

  • Dev key: Ngân sách thấp (ví dụ: $10), giới hạn ở mô hình rẻ, không giới hạn IP
  • Staging key: Ngân sách trung bình (ví dụ: $50), bộ mô hình production, giới hạn IP
  • Production key: Ngân sách cao hơn, tất cả mô hình, giới hạn IP cho máy chủ production

Xoay vòng khóa mỗi 90 ngày. Dùng khóa riêng cho từng dự án nếu bạn quản lý nhiều dự án.

Tham Khảo Nhanh: Danh Sách Kiểm Tra Production

Trước khi đưa lên production, hãy kiểm tra danh sách này:

  • <strong>Dùng client cấp production</strong> — gộp kết nối và timeout tường minh (xem ở trên)
  • <strong>Bật streaming</strong> cho mọi request hướng người dùng để có UX phản hồi nhanh
  • <strong>Triển khai thử lại với exponential backoff và jitter</strong> cho lỗi <code>429</code> và <code>5xx</code>
  • <strong>Đặt ngân sách theo key</strong> và danh sách IP trắng để rò rỉ không dẫn tới hóa đơn lớn
  • <strong>Đặt nội dung prompt tĩnh ở đầu</strong> để tối đa tỷ lệ cache hit và cắt giảm chi phí