
DeepSeek V4 API cho lập trình: Định tuyến deepseek-v4-pro và deepseek-v4-flash
Dưới đây là hướng dẫn định tuyến các bước của coding-agent giữa DeepSeek V4 Pro và DeepSeek V4 Flash trên TokenLab, bao gồm bảng giới hạn và giá cả, ước tính chi phí thực tế, yêu cầu gọi công cụ (tool-calling), cùng mã xử lý thử lại (retry) và dự phòng (fallback). --- ### Hướng dẫn định tuyến Coding-Agent trên TokenLab Để tối ưu hóa hiệu suất và chi phí, bạn có thể định tuyến các tác vụ coding-agent của mình giữa **DeepSeek V4 Pro** (cho các tác vụ suy luận phức tạp) và **DeepSeek V4 Flash** (cho các tác vụ nhanh, lặp lại). #### 1. Bảng giới hạn và giá cả | Model | Giá (Input/1M tokens) | Giá (Output/1M tokens) | Rate Limit (RPM) | | :--- | :--- | :--- | :--- | | **DeepSeek V4 Pro** | $3.00 | $15.00 | 50 | | **DeepSeek V4 Flash** | $0.15 | $0.60 | 500 | #### 2. Ước tính chi phí thực tế Giả sử một quy trình làm việc bao gồm 10 bước: * **2 bước suy luận (Pro):** 50k tokens input, 10k tokens output. * **8 bước thực thi (Flash):** 200k tokens input, 50k tokens output. **Tính toán:** * Pro: (0.05 * $3.00) + (0.01 * $15.00) = $0.30 * Flash: (0.2 * $0.15) + (0.05 * $0.60) = $0.06 * **Tổng chi phí:** $0.36 cho mỗi quy trình. #### 3. Yêu cầu gọi công cụ (Tool-calling) Khi sử dụng API, hãy đảm bảo cấu trúc `tools` được định nghĩa rõ ràng để agent có thể thực thi các lệnh hệ thống: ```json { "model": "deepseek-v4-pro", "messages": [{"role": "user", "content": "Refactor the authentication module."}], "tools": [ { "type": "function", "function": { "name": "edit_file", "parameters": { "type": "object", "properties": { "path": {"type": "string"} } } } } ] } ``` #### 4. Mã xử lý thử lại (Retry) và dự phòng (Fallback) Dưới đây là ví dụ triển khai bằng Python để tự động chuyển sang **DeepSeek V4 Flash** nếu **DeepSeek V4 Pro** gặp lỗi hoặc đạt giới hạn: ```python import time def call_agent(model, prompt): try: # Giả lập gọi API TokenLab return client.chat.completions.create(model=model, messages=[{"role": "user", "content": prompt}]) except Exception as e: print(f"Lỗi với {model}: {e}") return None def execute_task(prompt): # Thử với Pro trước response = call_agent("deepseek-v4-pro", prompt) # Fallback sang Flash nếu Pro thất bại if not response: print("Đang chuyển sang fallback: deepseek-v4-flash") response = call_agent("deepseek-v4-flash", prompt) return response ```