DEV Community

Cover image for Điểm chuẩn Claude Sonnet 5: Điều các con số thực sự tiết lộ
Sebastian Petrus
Sebastian Petrus

Posted on • Originally published at apidog.com

Điểm chuẩn Claude Sonnet 5: Điều các con số thực sự tiết lộ

Claude Sonnet 5 ra mắt ngày 30/6/2026 với tuyên bố chính từ Anthropic: hiệu suất tác nhân gần bằng Opus 4.8 nhưng chi phí thấp hơn đáng kể. Bài viết này tập trung vào cách đọc các điểm benchmark ra mắt, khi nào nên chọn Sonnet 5, khi nào nên trả thêm cho Opus 4.8, và cách tự chạy đánh giá trên workload của bạn. Nếu cần bối cảnh đầy đủ về mô hình, hãy bắt đầu với hướng dẫn trụ cột Claude Sonnet 5. Số liệu gốc được Anthropic công bố trên trang thông báo chính thức.

Dùng thử Apidog hôm nay

Tóm tắt nhanh: với các tác vụ có dùng công cụ, Sonnet 5 chỉ kém Opus 4.8 vài điểm. Với suy luận thuần túy, khoảng cách mở rộng lên khoảng sáu điểm. Đây là mẫu hình quan trọng nhất khi bạn quyết định dùng model nào cho agent, coding assistant, tác vụ terminal hoặc các bài toán yêu cầu reasoning sâu.

Claude Sonnet 5 benchmark

Tất cả số liệu bên dưới là điểm benchmark ra mắt do Anthropic báo cáo và được nhắc lại trong nhiều bài viết ra mắt cùng ngày. Hãy xem chúng là số liệu tham khảo từ nhà cung cấp, không phải kiểm thử độc lập.

Bảng điểm chuẩn

Ba benchmark sau cho thấy vị trí của Sonnet 5 so với Sonnet 4.6 và Opus 4.8.

Điểm chuẩn Đo lường điều gì Sonnet 5 Sonnet 4.6 Opus 4.8
SWE-bench Pro Mã hóa tác nhân trên repository thực 63.2% 58.1% 69.2%
Terminal-Bench 2.1 Hoàn thành tác vụ dòng lệnh 80.4% Chưa được báo cáo 82.7%
OSWorld-Verified Sử dụng máy tính, tác vụ GUI 81.2% 78.5% 83.4%

Cách đọc nhanh:

  • Sonnet 5 vượt Sonnet 4.6 trên mọi benchmark có dữ liệu cho cả hai.
  • SWE-bench Pro tăng từ 58.1% lên 63.2%, tức hơn 5 điểm — một cải thiện đáng kể cho coding agent.
  • OSWorld-Verified tăng từ 78.5% lên 81.2%.
  • So với Opus 4.8, Sonnet 5 kém:
    • 6.0 điểm trên SWE-bench Pro
    • 2.3 điểm trên Terminal-Bench 2.1
    • 2.2 điểm trên OSWorld-Verified

Điểm đáng chú ý: khoảng cách nhỏ nhất nằm ở các tác vụ phụ thuộc nhiều vào công cụ, terminal hoặc môi trường phản hồi theo từng bước.

Mẫu hình quan trọng: có công cụ hay không?

Khi đọc benchmark, hãy hỏi một câu đơn giản:

Model có thể dùng công cụ để tự kiểm tra và sửa sai không?

Trên Terminal-Bench 2.1 và OSWorld-Verified, model có thể:

  1. Chạy lệnh.
  2. Đọc output.
  3. Điều chỉnh bước tiếp theo.
  4. Lặp lại cho đến khi hoàn thành tác vụ.

Trong kiểu workflow này, Sonnet 5 chỉ cách Opus 4.8 khoảng 1–3 điểm.

SWE-bench Pro cũng là benchmark tác nhân, nhưng nhấn mạnh nhiều hơn vào việc hiểu codebase lớn và suy luận sâu. Ở đó, khoảng cách với Opus 4.8 tăng lên 6 điểm.

Cách áp dụng thực tế:

  • Dùng Sonnet 5 nếu workload của bạn là:
    • Coding agent
    • Agent dùng tool
    • Tác vụ terminal
    • Automation có vòng lặp kiểm tra kết quả
    • GUI/computer-use task
  • Cân nhắc Opus 4.8 nếu workload là:
    • Một bài toán reasoning khó, ít hoặc không có tool feedback
    • Phân tích dài, nhiều ràng buộc
    • Tác vụ mà sai một lần là tốn kém

Để so sánh đầy đủ hơn về giá, context và vị trí sử dụng, xem Claude Sonnet 5 so với Opus 4.8.

Giá thay đổi cách bạn đọc benchmark

Nếu chỉ nhìn điểm số, model đắt nhất thường thắng. Nhưng với workload thực tế, bạn nên tính:

chi phí mỗi tác vụ thành công = tổng chi phí / số tác vụ giải được
Enter fullscreen mode Exit fullscreen mode

Theo giá ra mắt được báo cáo:

  • Sonnet 5 có giá giới thiệu:
    • 2 USD / 1 triệu input token
    • 10 USD / 1 triệu output token
    • Áp dụng đến hết ngày 31/8/2026
  • Sau đó chuyển sang mức tiêu chuẩn:
    • 3 USD / 1 triệu input token
    • 15 USD / 1 triệu output token
  • Opus 4.8:
    • 5 USD / 1 triệu input token
    • 25 USD / 1 triệu output token

Ở mức tiêu chuẩn, Sonnet 5 bằng 60% giá input và 60% giá output của Opus 4.8.

Claude Sonnet 5 pricing comparison

Vì vậy, nếu bạn đang chạy agent hoặc coding workflow có tool feedback, việc trả thêm để lấy lại 2–3 điểm benchmark có thể không đáng. Đây là điểm mạnh thực tế của Sonnet 5.

Tuy nhiên, có một chi tiết cần kiểm tra khi tính chi phí: Sonnet 5 dùng tokenizer mới, tạo ra nhiều token hơn khoảng 30% cho cùng một văn bản đầu vào. Giá mỗi token không đổi so với Sonnet 4.6, nhưng request tương đương có thể đắt hơn vì tổng số token tăng.

Đừng ước lượng chi phí bằng số ký tự. Hãy log token thực tế.

Ví dụ bạn nên lưu trong mỗi lần chạy benchmark nội bộ:

{
  "model": "claude-sonnet-5",
  "input_tokens": 1840,
  "output_tokens": 612,
  "latency_ms": 4280,
  "success": true,
  "stop_reason": "end_turn"
}
Enter fullscreen mode Exit fullscreen mode

Chi tiết đầy đủ về giá nằm trong hướng dẫn giá Claude Sonnet 5.

Benchmark công khai bỏ lỡ điều gì?

Benchmark công khai hữu ích để xếp hạng model, nhưng không đủ để quyết định production. Có ba khoảng trống bạn nên tự đo.

1. Workload của bạn không phải SWE-bench

Nếu bạn viết TypeScript dựa trên API nội bộ, convention riêng và domain logic phức tạp, điểm SWE-bench trên repository Python công khai chỉ là proxy gần đúng.

Bạn nên tạo một bộ test nhỏ từ chính workload của mình:

tasks/
  001-refactor-auth-middleware.md
  002-fix-pagination-bug.md
  003-add-openapi-validation.md
  004-explain-billing-edge-case.md
Enter fullscreen mode Exit fullscreen mode

Mỗi task nên có:

  • Prompt cố định
  • Expected output hoặc tiêu chí chấm điểm
  • Model ID
  • Token usage
  • Latency
  • Kết quả pass/fail

2. Độ chính xác thô không bằng ROI

Một model kém hơn 2 điểm nhưng rẻ hơn 40% có thể giải quyết nhiều task hơn với cùng ngân sách.

Nên đo:

cost_per_success = total_cost / successful_tasks
Enter fullscreen mode Exit fullscreen mode

Không chỉ đo:

accuracy = successful_tasks / total_tasks
Enter fullscreen mode Exit fullscreen mode

Với agent chạy số lượng lớn, cost_per_success thường là chỉ số quan trọng hơn.

3. Latency và throughput không xuất hiện trong bảng điểm

Benchmark thường đo đúng/sai, không đo trải nghiệm người dùng.

Với công cụ tương tác, câu trả lời đúng nhưng chậm có thể thua câu trả lời đủ tốt nhưng nhanh hơn.

Hãy log tối thiểu:

{
  "model": "claude-sonnet-5",
  "task_id": "003-add-openapi-validation",
  "latency_ms": 5112,
  "input_tokens": 2201,
  "output_tokens": 734,
  "success": true
}
Enter fullscreen mode Exit fullscreen mode

Kết luận thực tế: dùng benchmark công khai làm bộ lọc ban đầu, sau đó chạy benchmark của riêng bạn trước khi chọn model cho production.

An toàn: những điểm cần biết khi gọi API

Benchmark hiệu năng không phản ánh đầy đủ hành vi an toàn.

Anthropic báo cáo rằng Sonnet 5 có tỷ lệ hành vi không mong muốn tổng thể thấp hơn Sonnet 4.6, với ít ảo giác hơn và ít xu nịnh hơn. Đây cũng là model cấp Sonnet đầu tiên có biện pháp bảo vệ an ninh mạng theo thời gian thực.

Điểm quan trọng khi implement: request bị từ chối có thể vẫn trả về HTTP 200, với:

{
  "stop_reason": "refusal"
}
Enter fullscreen mode Exit fullscreen mode

Vì vậy, đừng chỉ kiểm tra status code. Hãy kiểm tra stop_reason.

Ví dụ xử lý tối thiểu:

type AnthropicResponse = {
  stop_reason?: string;
  content?: Array<{ type: string; text?: string }>;
};

function handleResponse(response: AnthropicResponse) {
  if (response.stop_reason === "refusal") {
    return {
      ok: false,
      reason: "Model refused the request",
    };
  }

  return {
    ok: true,
    text: response.content?.map((c) => c.text ?? "").join("\n"),
  };
}
Enter fullscreen mode Exit fullscreen mode

Cũng cần lưu ý: trên kiểm toán hành vi tự động của Anthropic, Sonnet 5 có tỷ lệ hành vi không phù hợp cao hơn Opus 4.8. Về năng lực an ninh mạng, Sonnet 5 đứng dưới các model Opus. Cả hai model Sonnet đều được báo cáo là không phát triển được khai thác hoạt động nào, với tỷ lệ 0.0%. Trong ngữ cảnh an toàn, năng lực thấp hơn ở đây là tính năng, không phải thiếu sót.

Chi tiết nằm trong trung tâm minh bạch của Anthropic.

Cách tự benchmark Sonnet 5 trên task của bạn

Benchmark hữu ích nhất là benchmark chạy trên prompt, codebase và tiêu chí của bạn.

Mục tiêu là giữ mọi thứ cố định, chỉ thay model:

  • Cùng prompt
  • Cùng system instruction nếu có
  • Cùng input
  • Cùng tiêu chí chấm điểm
  • Cùng cách log token và latency
  • Chỉ đổi model

Bạn có thể dùng Apidog để tạo request đến Anthropic Messages API, lưu request trong collection, lưu API key bằng environment variable và chạy lại cùng một bộ request nhiều lần. Khi so sánh Sonnet 5 với Opus 4.8 hoặc Sonnet 4.6, bạn chỉ cần đổi biến model ID.

Request cơ bản:

curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "max_tokens": 2048,
    "messages": [
      {
        "role": "user",
        "content": "Refactor this function to remove the nested loop and explain the change."
      }
    ]
  }'
Enter fullscreen mode Exit fullscreen mode

Để A/B test giữa các model, giữ nguyên body và chỉ đổi:

{
  "model": "claude-sonnet-5"
}
Enter fullscreen mode Exit fullscreen mode

thành:

{
  "model": "claude-opus-4-8"
}
Enter fullscreen mode Exit fullscreen mode

hoặc:

{
  "model": "claude-sonnet-4-6"
}
Enter fullscreen mode Exit fullscreen mode

Trong Apidog, bạn có thể lưu model dưới dạng biến môi trường:

{{ANTHROPIC_MODEL}}
Enter fullscreen mode Exit fullscreen mode

Sau đó request body trở thành:

{
  "model": "{{ANTHROPIC_MODEL}}",
  "max_tokens": 2048,
  "messages": [
    {
      "role": "user",
      "content": "Refactor this function to remove the nested loop and explain the change."
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

Thiết lập environment:

ANTHROPIC_API_KEY=sk-ant-...
ANTHROPIC_MODEL=claude-sonnet-5
Enter fullscreen mode Exit fullscreen mode

Khi cần so sánh, đổi:

ANTHROPIC_MODEL=claude-opus-4-8
Enter fullscreen mode Exit fullscreen mode

Bạn cũng nên thêm assertion để kiểm tra stop_reason.

Ví dụ logic kiểm thử:

const json = pm.response.json();

pm.test("request succeeded", function () {
  pm.response.to.have.status(200);
});

pm.test("model did not refuse", function () {
  pm.expect(json.stop_reason).to.not.eql("refusal");
});

pm.test("response has content", function () {
  pm.expect(json.content.length).to.be.greaterThan(0);
});
Enter fullscreen mode Exit fullscreen mode

Nếu bạn muốn chạy benchmark lặp lại trong CI, hãy lưu kết quả theo dạng JSONL:

{"task_id":"001","model":"claude-sonnet-5","success":true,"latency_ms":3910,"input_tokens":1200,"output_tokens":480}
{"task_id":"001","model":"claude-opus-4-8","success":true,"latency_ms":5220,"input_tokens":1200,"output_tokens":510}
{"task_id":"002","model":"claude-sonnet-5","success":false,"latency_ms":3440,"input_tokens":980,"output_tokens":300}
Enter fullscreen mode Exit fullscreen mode

Sau đó tính:

type Run = {
  task_id: string;
  model: string;
  success: boolean;
  latency_ms: number;
  input_tokens: number;
  output_tokens: number;
};

function summarize(runs: Run[]) {
  const byModel = new Map<string, Run[]>();

  for (const run of runs) {
    byModel.set(run.model, [...(byModel.get(run.model) ?? []), run]);
  }

  for (const [model, items] of byModel) {
    const successes = items.filter((r) => r.success).length;
    const avgLatency =
      items.reduce((sum, r) => sum + r.latency_ms, 0) / items.length;

    console.log({
      model,
      total: items.length,
      success_rate: successes / items.length,
      avg_latency_ms: Math.round(avgLatency),
    });
  }
}
Enter fullscreen mode Exit fullscreen mode

Nếu bạn chưa từng thiết lập workflow kiểm thử API kiểu này, xem hướng dẫn kiểm thử không cần Postman.

Lưu ý migration khi benchmark Sonnet 5

Trước khi chạy so sánh, kiểm tra lại request cũ.

Sonnet 5 không chấp nhận các giá trị không mặc định cho:

  • temperature
  • top_p
  • top_k

Sonnet 5 cũng từ chối trường cũ:

{
  "thinking": {
    "type": "enabled",
    "budget_tokens": 1024
  }
}
Enter fullscreen mode Exit fullscreen mode

Các cấu hình này có thể trả về lỗi 400. Nếu bạn benchmark mà request lỗi trước khi model trả lời, kết quả không có ý nghĩa. Hãy xóa các tham số đó trước khi chạy.

Tải xuống Apidog để xây dựng request một lần và tái sử dụng trên mọi model bạn muốn chấm điểm.

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

Điểm SWE-bench Pro của Claude Sonnet 5 là bao nhiêu?

Theo số liệu ra mắt của Anthropic, Sonnet 5 đạt 63.2% trên SWE-bench Pro, so với 58.1% của Sonnet 4.6 và 69.2% của Opus 4.8.

Sonnet 5 có tốt hơn Opus 4.8 không?

Không nếu chỉ xét điểm benchmark thô. Opus 4.8 dẫn đầu trên mọi benchmark được báo cáo. Nhưng Sonnet 5 chỉ kém khoảng 1–3 điểm ở các tác vụ nặng về công cụ và có giá tiêu chuẩn bằng 60% Opus 4.8. Với agent và coding loop, Sonnet 5 có thể là lựa chọn hiệu quả hơn về chi phí. Xem thêm Claude Sonnet 5 so với Opus 4.8.

Các số liệu benchmark này có phải kiểm thử độc lập không?

Không. Đây là benchmark ra mắt do Anthropic báo cáo. Bạn nên xem chúng là dữ liệu tham khảo và tự xác thực trên workload của mình trước khi đưa vào production.

Tại sao Sonnet 5 gần Opus 4.8 hơn trong các tác vụ dùng công cụ?

Vì model có thể chạy lệnh, đọc kết quả và tự sửa lỗi theo từng bước. Vòng lặp phản hồi này thu hẹp khoảng cách với Opus. Với một bài reasoning duy nhất không có tool feedback, lợi thế suy luận sâu của Opus thể hiện rõ hơn.

Làm cách nào để chấm điểm Sonnet 5 trên prompt của tôi?

Gọi Anthropic Messages API với model ID claude-sonnet-5, lưu request trong công cụ như Apidog, thêm assertion, log token/latency, rồi chạy lại cùng request bằng cách đổi model ID sang claude-opus-4-8 hoặc claude-sonnet-4-6. Đây là cách bạn đo được độ chính xác, chi phí mỗi tác vụ thành công và độ trễ trên workload thực tế.

Top comments (0)