Khi tạo câu lệnh cho các mô hình AI, việc cung cấp ví dụ là hữu ích. Những ví dụ này có thể giúp mô hình hiểu bạn đang yêu cầu gì. Ví dụ đặc biệt hữu ích khi bạn muốn hướng mô hình theo một cấu trúc hoặc mẫu đầu ra nhất định.
Một câu lệnh one-shot (một lần), đúng như tên gọi, chỉ cung cấp một ví dụ duy nhất. Ý tưởng là mô hình có một ví dụ để bắt chước nhằm hoàn thành nhiệm vụ tốt nhất.
Một câu lệnh few-shot (vài lần) cung cấp nhiều ví dụ cho mô hình. Cách tiếp cận này cho mô hình thấy một mẫu mà nó cần tuân theo. Ý tưởng tương tự như one-shot, nhưng việc cung cấp nhiều ví dụ về mẫu mong muốn sẽ tăng khả năng mô hình tuân theo mẫu đó.
Số lượng ví dụ bạn cần cho few-shot prompting phụ thuộc vào một vài yếu tố, bao gồm độ phức tạp của nhiệm vụ, chất lượng ví dụ và khả năng của mô hình AI tạo sinh (gen AI) mà bạn đang sử dụng. Theo nguyên tắc chung, bạn nên sử dụng ít nhất ba đến năm ví dụ cho few-shot prompting. Tuy nhiên, bạn có thể cần sử dụng nhiều ví dụ hơn cho các nhiệm vụ phức tạp hơn, hoặc bạn có thể cần sử dụng ít hơn do giới hạn độ dài đầu vào của mô hình.
Bảng 2 trình bày một ví dụ về câu lệnh few-shot. Hãy sử dụng cùng cấu hình mô hình gemini-pro
như trước, ngoại trừ việc tăng giới hạn token để chứa câu trả lời dài hơn.
Mục tiêu: Phân tích đơn đặt hàng pizza thành JSON
Mô hình: gemini-pro
Nhiệt độ: 0.1
Top-K: Không áp dụng
Câu lệnh: Phân tích đơn đặt hàng pizza của khách hàng thành JSON hợp lệ:
VÍ DỤ:
Tôi muốn một chiếc pizza cỡ nhỏ với phô mai, sốt cà chua và xúc xích pepperoni.
Phản hồi JSON:
{
"size": "small",
"type": "normal",
"ingredients": [["cheese", "tomato sauce", "peperoni"]]
}
Ví dụ:
Tôi có thể lấy một chiếc pizza cỡ lớn với sốt cà chua, húng quế và mozzarella không
{
"size": "large",
"type": "normal",
"ingredients": [["tomato sauce", "bazel", "mozzarella"]]
}
Bây giờ, tôi muốn một chiếc pizza cỡ lớn, với một nửa là phô mai và mozzarella. Và nửa còn lại là sốt cà chua, thịt nguội (ham) và dứa.
Phản hồi JSON:Kết quả
{
"size": "large",
"type": "half-half",
"ingredients": [["cheese", "mozzarella"], ["tomato sauce", "ham", "pineapple"]]
}
Bảng 2. Một ví dụ về few-shot prompting
Khi chọn ví dụ cho câu lệnh của bạn, hãy sử dụng những ví dụ phù hợp với nhiệm vụ bạn muốn thực hiện. Các ví dụ phải đa dạng, chất lượng cao và được dễ hiểu. Một lỗi nhỏ có thể khiến mô hình bối rối và dẫn đến đầu ra không mong muốn.
Nếu bạn đang cố gắng tạo ra đầu ra mạnh mẽ đối với nhiều loại đầu vào khác nhau, thì việc bao gồm các trường hợp ngoại lệ trong ví dụ của bạn là rất quan trọng. Các trường hợp ngoại lệ là những đầu vào bất thường hoặc không mong đợi, nhưng mô hình vẫn phải có khả năng xử lý được.