Các bài trong khoáBài 20/30

30 bài

Domain 4: Prompt Engineering & Structured Output·Task 4.2

Dùng few-shot để kết quả nhất quán

Khi hướng dẫn chi tiết vẫn cho kết quả mỗi lần một kiểu, vài ví dụ mẫu chọn kỹ giúp Claude giữ đúng định dạng, xử lý ca mập mờ và bớt bịa khi trích dữ liệu.

  • 6 phút đọc
  • Đối chiếu docs 02/11/2026
  • 2 nguồn

Đọc xong bạn nắm được

  • Biết khi nào few-shot hiệu quả hơn viết thêm hướng dẫn
  • Viết 2–4 ví dụ cho ca mập mờ, kèm lý do chọn cách này thay vì cách khác
  • Dùng ví dụ để cố định định dạng đầu ra
  • Dùng ví dụ phân biệt mẫu code chấp nhận được với lỗi thật để bớt báo sai
  • Dùng ví dụ để trích đúng từ tài liệu có cấu trúc khác nhau, bớt bỏ trống và bịa số

Few-shot (còn gọi là multishot) là cách đưa vào prompt vài ví dụ mẫu: đầu vào thế này thì đầu ra thế kia. Thay vì mô tả bằng lời, bạn cho Claude xem kết quả đúng trông như thế nào.

Bài này giúp bạn trả lời: khi nào nên thêm ví dụ thay vì viết thêm hướng dẫn, và chọn ví dụ thế nào cho hiệu quả?

Ví dụ xuyên suốt: trích báo giá vật liệu xây dựng

Một công ty xây dựng nhận báo giá từ hàng chục nhà cung cấp qua email. Bạn dựng hệ thống dùng Claude trích từ mỗi email: tên vật liệu, số lượng, đơn vị, đơn giá. Prompt đã có hướng dẫn chi tiết, nhưng:

  1. Kết quả mỗi lần một dạng: lúc ghi "10 tấn", lúc tách 10 và tấn, lúc ghi "mười tấn".
  2. Email ghi "giao 3 xe cát" hay "nửa khối đá". Claude lúc bỏ trống số lượng, lúc tự đổi "3 xe" thành "15 m³" theo phỏng đoán.
  3. Có nhà cung cấp gửi bảng giá trong file đính kèm, có người viết giá lẫn trong câu chữ ("xi măng thì vẫn 1,2 triệu một tấn như tháng trước"), có người để giá ở chữ ký cuối email. Với hai kiểu sau, Claude hay trả về danh sách rỗng.

Khi hướng dẫn chi tiết vẫn không đủ

Bạn có thể viết thêm: "đơn vị phải tách riêng, viết bằng chữ thường, số lượng là số". Nhưng mỗi câu hướng dẫn mới lại có chỗ hiểu khác, và prompt dài dần mà kết quả vẫn lệch.

Lúc này, few-shot là kỹ thuật hiệu quả nhất để có đầu ra đúng định dạng và dùng được ngay. Tài liệu prompt của Anthropic cũng nói ví dụ là một trong những cách đáng tin nhất để điều khiển định dạng, giọng văn và cấu trúc đầu ra.

Tài liệu đó gợi ý ví dụ nên:

  • Sát với việc thật: ví dụ lấy từ đúng kiểu email bạn nhận.
  • Đa dạng: phủ các ca biên, và đủ khác nhau để Claude không bắt chước những điểm trùng hợp ngoài ý muốn.
  • Tách khỏi hướng dẫn: bọc mỗi ví dụ trong thẻ <example>, cả nhóm trong <examples>.

Tài liệu khuyên 3–5 ví dụ; đề thi nói 2–4 ví dụ nhắm đúng ca mập mờ. Ý chung là vài ví dụ chọn kỹ, không phải vài chục.

Ví dụ cho ca mập mờ, kèm lý do

Vấn đề 2 là ca mập mờ: "3 xe cát" không có đơn vị chuẩn. Ví dụ hiệu quả nhất không chỉ đưa đáp án mà còn nói vì sao chọn cách này thay vì những cách nghe cũng hợp lý:

<example>
Email: "Bên em giao 3 xe cát vàng, giá 2,1 triệu một xe."
Kết quả: {"vatLieu": "cát vàng", "soLuong": 3, "donVi": "xe", "donGia": 2100000}
Lý do: giữ nguyên đơn vị "xe" như email ghi. Không đổi sang m³ vì
email không nói một xe bao nhiêu khối; đổi là tự đoán.
</example>

Loại ví dụ này có hai tác dụng:

  • Ví dụ cho thấy cách xử lý ca mập mờ, kể cả những chuyện khác như chọn tool nào khi yêu cầu mập mờ, hay chỉ ra nhánh code nào chưa có test.
  • Ví dụ có lý do giúp Claude khái quát được cách phán đoán sang ca mới, thay vì chỉ khớp đúng những ca đã liệt kê. Gặp "2 bao xi măng" hay "1 thùng sơn", Claude hiểu phải giữ nguyên đơn vị gốc dù không có ví dụ nào về bao hay thùng.

Ví dụ cố định định dạng

Vấn đề 1 được sửa bằng ví dụ cho thấy đúng định dạng mong muốn. Áp dụng cho mọi loại đầu ra, không chỉ trích dữ liệu. Với bot review code, ví dụ mẫu nên có đủ các phần: vị trí, vấn đề, mức nghiêm trọng, cách sửa đề xuất:

Vị trí: src/bao-gia/tinh-tong.ts:42
Vấn đề: cộng đơn giá thay vì đơn giá nhân số lượng
Mức: cao
Cách sửa: đổi tong += item.donGia thành tong += item.donGia * item.soLuong

Bot review cũng dùng ví dụ được để bớt báo sai: đưa vài cặp "mẫu code này nhóm chấp nhận" và "mẫu code này mới là lỗi thật", Claude học được ranh giới và áp sang các mẫu khác, thay vì phải liệt kê từng luật một.

Ví dụ cho tài liệu có cấu trúc khác nhau

Vấn đề 3: thông tin có trong email, nhưng nằm ở chỗ Claude không ngờ tới, nên nó trả rỗng. Thêm ví dụ cho từng kiểu trình bày: một ví dụ giá nằm trong bảng, một ví dụ giá lẫn trong câu chữ, một ví dụ giá ở chữ ký.

Ví dụ ở đây có hai tác dụng:

  • Ví dụ trích đúng từ tài liệu có định dạng khác nhau giúp giảm việc bỏ trống những trường bắt buộc.
  • Ví dụ giúp giảm bịa trong việc trích dữ liệu, như với đơn vị đo không chuẩn ("nửa khối", "một xe") hay tài liệu có cấu trúc khác nhau. Claude thấy cách đúng là giữ nguyên chữ gốc, không tự quy đổi.

Nguồn

  1. Exam Guide CCAR-F v1.0, Task Statement 4.2(mở tab mới)
  2. Prompting best practices, Use examples effectively (Claude API)(mở tab mới)

Nắm rồi thì thử sức với đề

Xem khoá luyện thi
Dùng few-shot để kết quả nhất quán · Anthropic Exam Pro