Chuyển đến nội dung chính

Tổng quan

LemonData triển khai giới hạn tốc độ để đảm bảo việc sử dụng công bằng và sự ổn định của nền tảng. Giới hạn sẽ khác nhau tùy theo cấp tài khoản.

Các cấp giới hạn tốc độ

CấpYêu cầu/phútMô tả
User1,000Cấp mặc định cho tất cả tài khoản
Partner3,000Dành cho đối tác tích hợp
VIP10,000Người dùng có khối lượng sử dụng cao
Giới hạn tốc độ có thể thay đổi. Liên hệ [email protected] để yêu cầu giới hạn tùy chỉnh.

Phản hồi giới hạn tốc độ

Khi bạn vượt quá giới hạn tốc độ, API sẽ trả về mã trạng thái 429 cùng với header Retry-After cho biết cần chờ bao lâu trước khi thử lại.

Vượt quá giới hạn tốc độ

Khi bạn vượt quá giới hạn, bạn sẽ nhận được phản hồi 429:
{
  "error": {
    "message": "Rate limit exceeded. Please retry later.",
    "type": "rate_limit_exceeded",
    "code": "rate_limit_exceeded"
  }
}
Phản hồi bao gồm header Retry-After:
Retry-After: 60  # Seconds to wait before retrying

Xử lý giới hạn tốc độ

Exponential Backoff

Triển khai exponential backoff cho các lần thử lại tự động:
import time
from openai import OpenAI, RateLimitError

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://api.lemondata.cc/v1"
)

def make_request_with_backoff(messages, max_retries=5):
    for attempt in range(max_retries):
        try:
            return client.chat.completions.create(
                model="gpt-4o",
                messages=messages
            )
        except RateLimitError as e:
            if attempt == max_retries - 1:
                raise

            wait_time = 2 ** attempt  # 1, 2, 4, 8, 16 seconds
            print(f"Rate limited. Waiting {wait_time}s...")
            time.sleep(wait_time)

Xếp hàng yêu cầu

Đối với các ứng dụng có khối lượng lớn, hãy triển khai hàng đợi yêu cầu:
import asyncio
from collections import deque

class RateLimitedClient:
    def __init__(self, requests_per_minute=60):
        self.rpm = requests_per_minute
        self.interval = 60 / requests_per_minute
        self.last_request = 0

    async def request(self, messages):
        # Wait if needed to respect rate limit
        now = asyncio.get_event_loop().time()
        wait_time = max(0, self.last_request + self.interval - now)
        if wait_time > 0:
            await asyncio.sleep(wait_time)

        self.last_request = asyncio.get_event_loop().time()
        return await self.client.chat.completions.create(
            model="gpt-4o",
            messages=messages
        )

Xử lý theo lô

Đối với các thao tác hàng loạt, hãy xử lý theo lô với khoảng trễ:
def process_batch(items, batch_size=50, delay=1):
    results = []
    for i in range(0, len(items), batch_size):
        batch = items[i:i + batch_size]
        for item in batch:
            result = client.chat.completions.create(
                model="gpt-4o",
                messages=[{"role": "user", "content": item}]
            )
            results.append(result)
        time.sleep(delay)  # Pause between batches
    return results

Các phương pháp tốt nhất

Theo dõi các header giới hạn tốc độ để chủ động duy trì dưới ngưỡng giới hạn.
Cache phản hồi cho các yêu cầu giống hệt nhau để giảm số lần gọi API.
Các model nhanh hơn (như gpt-5-mini) cho phép thông lượng cao hơn.
Nếu bạn cần giới hạn cao hơn, hãy liên hệ [email protected].

Nâng cấp cấp của bạn

Để yêu cầu nâng cấp cấp:
  1. Đăng nhập vào Dashboard của bạn
  2. Đi tới Settings → Account
  3. Liên hệ bộ phận hỗ trợ kèm theo trường hợp sử dụng của bạn
Hoặc gửi email tới [email protected] với:
  • Email tài khoản của bạn
  • Khối lượng yêu cầu dự kiến
  • Mô tả trường hợp sử dụng