🏗️ Nguyên tắc #2: Structured > Casual
Gemini 3.0 Pro yêu thích sự ngăn nắp - sử dụng tags để phân tách rõ ràng các phần của prompt.
💡 Tại sao cấu trúc quan trọng?
Khi prompt có cấu trúc rõ ràng, Gemini biết chính xác phần nào là context, phần nào là instruction, phần nào là constraints. Điều này giúp model tập trung và cho kết quả chính xác hơn.
Các section phổ biến trong prompt
| Section | Mục đích | Ví dụ |
|---|---|---|
<role> | Định nghĩa vai trò AI | Chuyên gia phân tích dữ liệu |
<context> | Thông tin nền, dữ liệu | Dữ liệu doanh thu Q4 |
<task> | Yêu cầu cụ thể | Phân tích xu hướng |
<constraints> | Giới hạn, điều kiện | Không quá 500 từ |
<output_format> | Định dạng kết quả | Bảng, bullet points |
<instructions> | Hướng dẫn chi tiết | Các bước thực hiện |
Template chuẩn với XML tags
<role>
Bạn là chuyên gia phân tích dữ liệu với 10 năm kinh nghiệm.
</role>
<context>
Dữ liệu doanh thu Q4 2024:
- Tháng 10: 500 triệu
- Tháng 11: 450 triệu (-10%)
- Tháng 12: 380 triệu (-15.5%)
</context>
<task>
Phân tích nguyên nhân sụt giảm doanh thu và đưa ra 3 giải pháp cụ thể.
</task>
<constraints>
- Không dùng thuật ngữ chuyên môn phức tạp
- Mỗi giải pháp không quá 2 câu
- Ưu tiên giải pháp ngắn hạn có thể thực hiện trong 1 tháng
</constraints>
<output_format>
1. Nguyên nhân: [bullet points]
2. Giải pháp: [danh sách đánh số]
</output_format> Thay thế bằng Markdown (nếu thích)
Nếu không quen XML, bạn có thể dùng Markdown headers:
## Role
Bạn là chuyên gia phân tích dữ liệu với 10 năm kinh nghiệm.
## Context
Dữ liệu doanh thu Q4 2024:
- Tháng 10: 500 triệu
- Tháng 11: 450 triệu (-10%)
- Tháng 12: 380 triệu (-15.5%)
## Task
Phân tích nguyên nhân sụt giảm doanh thu và đưa ra 3 giải pháp cụ thể.
## Constraints
- Không dùng thuật ngữ chuyên môn phức tạp
- Mỗi giải pháp không quá 2 câu
## Output Format
1. Nguyên nhân: [bullet points]
2. Giải pháp: [danh sách đánh số] Khi nào dùng XML vs Markdown?
| XML Tags | Markdown Headers |
|---|---|
| Prompt phức tạp, nhiều nested content | Prompt đơn giản hơn |
| Cần phân tách rõ ràng hơn | Dễ đọc, dễ viết hơn |
| Có thể nest tags trong nhau | Flat structure |
⚠️ Lưu ý
Không cần đóng tag XML chính xác như trong lập trình. Gemini hiểu được cả khi bạn quên đóng tag. Nhưng để prompt dễ đọc, nên giữ format chuẩn.
Thực hành: Chuyển đổi prompt
Hãy thử chuyển prompt này sang format có cấu trúc:
Prompt gốc (không cấu trúc):
Tôi cần bạn review code Python của tôi. Code này xử lý việc đăng nhập user. Hãy tìm bug và security issues. Code cần tuân thủ PEP8. Đừng thay đổi business logic. Kết quả trình bày theo format: tên issue, vị trí, mức độ nghiêm trọng, cách fix. Prompt tối ưu (có cấu trúc):
<role>
Senior Python Developer chuyên về security
</role>
<context>
[Paste code Python xử lý đăng nhập user]
</context>
<task>
Review code: tìm bugs và security issues
</task>
<constraints>
- Tuân thủ PEP8
- Không thay đổi business logic
</constraints>
<output_format>
| Issue | Location | Severity | Fix |
|-------|----------|----------|-----|
</output_format> ✅ Best Practice
Luôn sử dụng cấu trúc cho mọi prompt phức tạp. Với Gemini: Structured > Casual. XML/Markdown tags quan trọng hơn bạn nghĩ!