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 (Tự Động)

DNS của TokSpan tự động phân giải api.tokspan.com đến vị trí edge gần nhất. Không cần cấu hình. Với triển khai tự lưu trữ, hãy deploy trong cùng khu vực với ứng dụng của bạn để đạt độ trễ mạng dưới 5ms.

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
Tự lưu trữ gần ứng dụng−30–80ms RTT mạngCao
Dùng hậu tố -fast−20–50% thời gian sinhKhông

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-4o 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-4o
Phân loại, trích xuất, gắn thẻGPT-4o-mini, Claude Haiku, Gemini FlashRẻ hơn 10–50 lần
Soạn thảo, tóm tắt, dịch thuậtDeepSeek V3, Llama 4, Mistral Large 3Rẻ hơn 3–10 lần
Suy luận phức tạp, sinh mãGPT-4o, Claude Opus 4.8Cơ sở
Xử lý batch / nềnDeepSeek V3 + hậu tố -cheapRẻ hơn 5–15 lần

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

Cấu hình ngân sách hàng tháng cho từng key trong Bảng điều khiển. Key sẽ tự động vô hiệu hóa khi chạm giới hạn — 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.

Dùng Hậu Tố Mô Hình Tối Ưu Chi Phí

Thêm -cheap vào bất kỳ tên mô hình nào để tự động định tuyến đến nhà cung cấp có chi phí thấp nhất cho mô hình đó. Với batch job không quan trọng, cách này tiết kiệm 10–30% mà không cần thay đổi mã.

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
Dùng hậu tố -cheap cho batch job−10–30%Không
Đặt ngân sách hàng tháng 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="gpt-4o",
            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: Tối đa 50 request đồng thời (giới hạn 500 RPM)
  • 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
  • Tự lưu trữ: Chỉ bị giới hạn bởi cơ sở hạ tầng của bạn

Theo dõi x-ratelimit-remaining-requests trong response header để đánh giá dư địa. Nếu bạn thường xuyên chạm 80%+ giới hạn, hãy yêu cầu nâng mức.

Độ 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)

Cấu Hình Auto-Failover

Thiết lập chuỗi failover đa nhà cung cấp (OpenAI → Anthropic → Google) trong Bảng điều khiển. Nếu nhà cung cấp chính gặp sự cố, lưu lượng tự động định tuyến mà không rơi request nào. Xem Auto Failover.

Chiến Lược Khóa API

  • Dev key: Ngân sách thấp ($10/tháng), giới hạn ở mô hình rẻ, không giới hạn IP
  • Staging key: Ngân sách trung bình ($50/tháng), 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: Hậu Tố Mô Hình cho Production

Hậu TốTối Ưu ChoTrường Hợp Sử Dụng
-fastĐộ trễ thấp nhấtChat thời gian thực, ứng dụng tương tác
-cheapChi phí thấp nhấtBatch job, dev/testing, nền
-highChất lượng tối đaSuy luận phức tạp, sinh mã, phân tích
-lowNhanh + rẻTruy vấn đơn giản, phân loại
-thinkingGỡ lỗi suy luậnPrompt engineering, khả năng quan sát chain-of-thought