Quay lại hướng dẫn
Khắc phục sự cố·17 tháng 7, 2026·Đọc 6 phút

model_not_found / 404 — cách đặt tên model giữa Claude, Gemini và các gateway

Mã model không thể dùng chung: api.anthropic.com yêu cầu mã có ngày, Gemini yêu cầu chuỗi phiên bản riêng và mỗi gateway định nghĩa các slug riêng. 404 ở đây có nghĩa là “host này không có model với đúng chuỗi đó” — cách khắc phục luôn là hỏi endpoint xem nó cung cấp gì.

Được xem xét lần cuối vào .

Mã model không thể dùng chung: api.anthropic.com yêu cầu mã có ngày, Gemini yêu cầu chuỗi phiên bản riêng và mỗi gateway định nghĩa các slug riêng. 404 ở đây có nghĩa là “host này không có model với đúng chuỗi đó” — cách khắc phục luôn là hỏi endpoint xem nó cung cấp gì.

Lỗi

phản hồi (HTTP 404)
{
  "error": {
    "type": "model_not_found",
    "message": "The model 'claude-sonnet' does not exist or you do not have access to it.",
    "code": "model_not_found"
  }
}

Tổng quan nguyên nhân và cách khắc phục

Nguyên nhânCách khắc phục
Mã model từ một host khácMỗi API có không gian tên riêng — sao chép mã từ danh sách model của chính endpoint, không lấy từ các bài blog.
Phiên bản đã ngừng hoặc được đổi tênNhà cung cấp ngừng các snapshot có ngày; hãy ghim vào mã hiện tại và đăng ký nhận thông báo ngừng hỗ trợ.
Slug bị gõ sai hoặc cắt ngắnclaude-sonnet không phải model ở bất kỳ đâu; chuỗi chính xác rất quan trọng.
Model tồn tại nhưng bị vô hiệu hóa đối với khóa/gói của bạnMột số host giới hạn model theo gói — endpoint danh sách cho biết khóa CỦA BẠN có thể gọi gì.

Liệt kê model từ endpoint bạn đang gọi

GET /v1/models là nguồn sự thật trên mọi host tương thích OpenAI — nó trả về chính xác các mã mà khóa của bạn có thể dùng:

list-models.sh
curl -s https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer $KUNAVO_API_KEY" \
  | python3 -c "import json,sys; print('\n'.join(m['id'] for m in json.load(sys.stdin)['data']))"

Phân giải model khi chạy, không hardcode

Danh mục thay đổi (có snapshot mới, có mô hình bị ngừng cung cấp). Hãy phân giải danh sách mô hình khi khởi động, ưu tiên slug đã cấu hình kèm phương án dự phòng và cảnh báo khi slug đã cấu hình biến mất khỏi /v1/models thay vì để môi trường production gặp lỗi 404.

Nếu bạn gọi qua Kunavo

Kunavo sử dụng các slug dễ đọc ổn định (claude-sonnet-5, gpt-5-6-terra, claude-fable-5) được liệt kê tại GET /v1/models kèm metadata cho từng model, và các slug đã ngừng được chuyển hướng 301 đến phiên bản kế nhiệm trên các trang model của site để liên kết không bị hỏng. Endpoint danh sách là nguồn có thẩm quyền — llms.txt cũng nói như vậy với mọi agent đọc nó.

Câu hỏi thường gặp

Tại sao cùng một mã model hoạt động trên API này nhưng 404 trên API khác?

Vì mã được đặt trong không gian tên riêng theo từng host: mã có ngày của Anthropic, tên có phiên bản của Gemini và slug của từng gateway đều là các chuỗi khác nhau cho những model liên quan. Luôn sao chép từ danh sách model của chính endpoint đích.

Làm thế nào để chống lỗi thời model trong tương lai?

Phân giải /v1/models khi khởi động, giữ mã model trong cấu hình (không phải trong mã nguồn), định nghĩa chuỗi dự phòng và tự cảnh báo khi mã đã cấu hình biến mất — việc đó biến 404 production thành một thay đổi cấu hình.

Hướng dẫn liên quan

Thông tin chi tiết hơn về ý nghĩa lỗi có trong tài liệu tham chiếu lỗi; bạn chỉ mất một phút để lấy khóa qua đăng ký và hướng dẫn xác thực.