Chúng tôi xin giới thiệu bài viết của tác giả Frank T. Bergmann đăng trong nhóm Bình Dân Học AI.
Bài viết này cung cấp hướng dẫn toàn diện về kỹ thuật prompt cho mô hình Claude của Anthropic. Prompt engineering được nhấn mạnh là phương pháp hiệu quả , tiết kiệm chi phí và linh hoạt hơn so với fine-tuning.

Xem thêm CASE STUDY QUY TRÌNH PROMPT ENGINEERING CHO NGƯỜI CHƯA BIẾT GÌ!
1. Nguyên Tắc Cốt Lõi
1.1. Ưu Điểm của Prompt Engineering so với Fine-tuning
Prompt engineering mang lại nhiều lợi thế so với fine-tuning:
- Hiệu quả Tài Nguyên : Không yêu cầu GPU, giảm chi phí phần cứng.
- Tiết Kiệm Chi Phí : Sử dụng các mô hình nền tảng, giảm chi phí đào tạo và triển khai.
- Linh Hoạt & Lặp Lại Nhanh Chóng : Dễ dàng điều chỉnh, thử nghiệm và triển khai các thay đổi prompt.
- Triển Khai Nhanh Hơn : ~97% nhanh hơn so với đào tạo lại mô hình.
- Giảm Chi Phí Thích Ứng Tác Vụ : 50-70% giảm chi phí so với fine-tuning.
- Zero-Shot Learning : Khả năng thực hiện tác vụ mà không cần dữ liệu huấn luyện cụ thể.
1.2. Tập Trung vào Sự Rõ Ràng và Cụ Thể
Để prompt hiệu quả, cần tập trung vào sự rõ ràng và cụ thể trong diễn đạt. Prompt cần xác định rõ mục tiêu, tiêu chí thành công, và định dạng đầu ra mong muốn. Sử dụng ngôn ngữ chính xác, tránh mơ hồ để Claude hiểu đúng yêu cầu.
Ví dụ Prompt Kém :
Tóm tắt báo cáo này.
Ví dụ Prompt Tốt :
Tạo 5 điểm gạch đầu dòng nêu bật tăng trưởng doanh thu Q2, giảm chi phí và đầu tư R&D từ <report>.
1.3. Cấu Trúc Prompt
Cấu trúc prompt đóng vai trò quan trọng trong việc hướng dẫn Claude. Cần sử dụng cấu trúc rõ ràng để tổ chức prompt, giúp Claude hiểu và xử lý thông tin hiệu quả. Sử dụng XML tags hoặc Markdown để định dạng và cấu trúc prompt và output, tăng tính rõ ràng.
2. Kỹ Thuật Prompt Engineering
2.1. Mẫu Prompt Có Cấu Trúc (Structured Prompt Templates)
Kỹ thuật này tập trung vào việc tạo ra các prompt có cấu trúc để dễ dàng tái sử dụng, kiểm thử và tích hợp vào API. Sử dụng Biến (Variables) với {{double brackets}}
để chèn nội dung động, tăng tính linh hoạt.
Ví dụ:
<instruction> Dịch văn bản sau sang tiếng {{target_language}}: {{text}} </instruction>
Mẫu Prompt có cấu trúc mang lại Lợi ích là tính nhất quán, dễ bảo trì và dễ kiểm thử với các dữ liệu khác nhau.
Sử dụng XML Scaffolding , tức là thẻ XML lồng nhau để cấu trúc các tác vụ phức tạp, tăng khả năng hiểu của mô hình.
Ví dụ:
<task> <context>{{DOCUMENT}}</context> <requirements> <output_type>comparison_table</output_type> <columns>Product vs Features vs Pricing</columns> </requirements> </task>
XML Scaffolding mang lại Lợi ích là cải thiện khả năng phân tích cú pháp hướng dẫn, đặc biệt với prompt phức tạp.
2.2. XML Tagging (Gắn Thẻ XML)
XML Tagging dùng để cấu trúc prompt phức tạp, phân tách rõ ràng các phần, tăng độ rõ ràng và khả năng hiểu của mô hình.
Ví dụ:
<legal_analysis> <contract>{{TEXT}}</contract> <instructions> <section>Indemnification</section> <section>Liability Caps</section> </instructions> </legal_analysis>
XML Tagging mang lại Lợi ích là cải thiện độ chính xác phân tích nội dung, đặc biệt trong các tác vụ phức tạp như phân tích pháp lý.
2.3. Clarity and Specificity (Rõ Ràng và Cụ Thể)
Đảm bảo prompt dễ hiểu và không mơ hồ là yếu tố then chốt để Claude tạo ra phản hồi mong muốn. Xác định Tiêu Chí Thành Công bằng cách nêu rõ điều gì tạo nên một phản hồi thành công để Claude có mục tiêu rõ ràng.
Ví dụ:
<success_criteria> - Độ chính xác ít nhất 90% - Phản hồi trong vòng 2 phút </success_criteria>
Chỉ Định Định Dạng Đầu Ra bằng cách sử dụng Markdown hoặc XML để định rõ cấu trúc output, giúp Claude biết cách trình bày kết quả.
Ví dụ:
<output_format> - Clause type: [type] - Section: [number] - Summary: [2-sentence explanation] </output_format>
2.4. Multishot Prompting (Gợi Ý Nhiều Ví Dụ)
Multishot Prompting dạy Claude bằng ví dụ, giúp mô hình học theo mẫu và tạo ra kết quả tương tự. Cung cấp 3-5 Ví Dụ Đầu Vào-Đầu Ra , đặc biệt hiệu quả cho các tác vụ phân loại, tạo mẫu, hoặc khi muốn mô hình tuân theo một phong cách cụ thể.
Ví dụ:
<example> Input: "Dashboard loads slowly" Output: {"category": "Performance", "priority": "High"} </example> <example> Input: "Printer is out of paper" Output: {"category": "Hardware", "priority": "Medium"} </example>
Multishot Prompting mang lại Lợi ích là cải thiện độ chính xác trong các tác vụ phân loại, học theo phong cách mong muốn.
2.5. Chain-of-Thought Reasoning (Lập Luận Theo Chuỗi Suy Nghĩ)
Chain-of-Thought Reasoning hướng dẫn Claude suy nghĩ từng bước để giải quyết các vấn đề phức tạp, cải thiện khả năng suy luận. Sử Dụng Thẻ <thinking>
hoặc cấu trúc tương tự để mô tả các bước suy luận, giúp Claude đi theo logic.
Ví dụ:
<task> <instruction>Phân tích hiệu quả tài chính Q3 của công ty và đưa ra đánh giá.</instruction> <thinking> 1. Tính tăng trưởng doanh thu hàng tháng so với Q2. 2. So sánh các chỉ số lợi nhuận (lợi nhuận gộp, lợi nhuận ròng) so với Q2 và cùng kỳ năm trước. 3. Xác định các yếu tố chính ảnh hưởng đến hiệu quả tài chính (tăng trưởng doanh thu, chi phí, v.v.). 4. So sánh với chuẩn ngành nếu có. 5. Đưa ra đánh giá tổng quan về hiệu quả tài chính Q3 và khuyến nghị (nếu có). </thinking> <answer> </task>
Chain-of-Thought Reasoning mang lại Lợi ích là giảm lỗi logic, cải thiện độ chính xác và khả năng giải quyết vấn đề phức tạp.
2.6. System Role Prompting (Gợi Ý Vai Trò Hệ Thống)
System Role Prompting gán vai trò chuyên gia cho Claude để điều chỉnh phản hồi phù hợp với ngữ cảnh và lĩnh vực cụ thể. Sử Dụng Tham Số system
trong API để xác định vai trò của Claude trước khi đưa ra prompt chính.
Ví dụ Python:
system="You are a Fortune 500 CFO analyzing Q3 financials" user_prompt = "Phân tích báo cáo tài chính Q3 và đưa ra nhận xét."
System Role Prompting mang lại Lợi ích là tăng độ chính xác và phù hợp của phản hồi trong các lĩnh vực chuyên môn.
2.7. Prompt Chaining (Chuỗi Prompt)
Prompt Chaining chia tác vụ phức tạp thành chuỗi các bước nhỏ, giúp quản lý độ phức tạp và giảm lỗi lan truyền.
Ví dụ:
Prompt 1 (Trích Xuất Dữ Liệu ):
Trích xuất tất cả thông tin về sản phẩm, giá cả và tính năng từ tài liệu sau: {{DOCUMENT}}
Prompt 2 (Phân Tích Xu Hướng ):
Phân tích dữ liệu sản phẩm đã trích xuất và xác định xu hướng giá và tính năng trong 3 năm qua.
(Sử dụng output từ Prompt 1)
Prompt 3 (Tóm Tắt Điều Hành ):
Dựa trên phân tích xu hướng, tạo một bản tóm tắt điều hành ngắn gọn về thị trường sản phẩm.
(Sử dụng output từ Prompt 2)
Prompt Chaining mang lại Lợi ích là giảm lỗi, cải thiện hiệu quả và độ chính xác cho các tác vụ phức tạp nhiều bước.
2.8. Testing Variations and Feedback Loops (Kiểm Thử Biến Thể & Vòng Phản Hồi)
Liên tục cải thiện prompt thông qua thử nghiệm và phản hồi là quá trình quan trọng. Thử Nghiệm nhiều cách diễn đạt prompt, cấu trúc khác nhau để tìm ra phiên bản tốt nhất. Vòng Phản Hồi sử dụng kết quả từ Claude để đánh giá và tinh chỉnh prompt, lặp lại quá trình để tối ưu.
2.9. Contextual Grounding (Neo Ngữ Cảnh) – Xử Lý Ngữ Cảnh Dài
Contextual Grounding giúp Claude xử lý và hiểu thông tin trong ngữ cảnh dài (văn bản dài, nhiều tài liệu). Vị Trí Dữ Liệu Dạng Dài : Đặt tài liệu dài (20K+ tokens) ở đầu prompt để Claude tập trung vào thông tin chính trước.
Cấu Trúc với Thẻ <document>
: Bọc từng tài liệu trong thẻ <document>
để phân biệt và cấu trúc dữ liệu.
Ví dụ:
<documents> <document index="1"> <source>annual_report_2023.pdf</source> <document_content>{{ANNUAL_REPORT}}</document_content> </document> <document index="2"> <source>competitor_analysis_q2.xlsx</source> <document_content>{{COMPETITOR_ANALYSIS}}</document_content> </document> </documents>
Trích Dẫn Liên Quan : Yêu cầu Claude trích dẫn các phần liên quan từ tài liệu trước khi trả lời để đảm bảo tính chính xác và tập trung.
Ví dụ:
Tìm các trích dẫn từ hồ sơ bệnh án và lịch sử hẹn khám liên quan đến chẩn đoán các triệu chứng bệnh nhân báo cáo. Đặt chúng trong thẻ `<quotes>`.
Ví Dụ Ngữ Cảnh (Few-Shot Examples) : Cung cấp ví dụ về câu hỏi và câu trả lời liên quan đến các phần khác của tài liệu để hướng dẫn Claude. Vị Trí Hướng Dẫn : Đặt hướng dẫn hoặc truy vấn cụ thể ở cuối prompt sau khi đã cung cấp ngữ cảnh. Kỹ Thuật Scratchpad :Sử dụng scratchpad (khu vực làm việc tạm thời) để Claude có thể ghi chú, tóm tắt thông tin trước khi đưa ra câu trả lời cuối cùng.
3. Công Cụ Tối Ưu Hóa Prompt
Các công cụ hỗ trợ tối ưu hóa prompt bao gồm Prompt Generator, Prompt Improver và Evaluation Tool (Xem chi tiết trên console. anthropic. com)
- Prompt Generator giúp tạo nhanh các mẫu prompt ban đầu.
- Prompt Improver tự động phân tích và đề xuất cải thiện prompt hiện có.
- Evaluation Tool là công cụ đánh giá hiệu suất của các phiên bản prompt khác nhau.
Kết Luận
Prompt engineering hiệu quả cho Claude là sự kết hợp giữa cấu trúc , sự rõ ràng và quá trình thử nghiệm liên tục . Áp dụng các kỹ thuật này giúp khai thác tối đa tiềm năng của Claude trong nhiều ứng dụng.