TTBC 2025

TTBC 2025


Hướng dẫn prompt từ cơ bản đến nâng cao P2: Role prompt, Contextual Prompt và System Prompt

ND Minh Đức
21/4/2025 0:47Phản hồi: 20
EditEdit
Hướng dẫn prompt từ cơ bản đến nâng cao P2: Role prompt, Contextual Prompt và System Prompt
Google gần đây đã phát hành tài liệu dài 68 trang, trong đó cập nhật mới nhất về các kỹ thuật prompt engineering từ cơ bản để nâng cao, có thể áp dụng trong rất nhiều các tác vụ khác nhau, từ việc đơn giản như truy vấn thông tin, suy luận, giải thích tới code hay thậm chí là các system prompt để làm việc với agent, tạo bot tự động, xây ứng dụng AI,…

Mình đã đọc hết tài liệu này và trong bài viết này, mình sẽ tổng hợp lại một cách dễ tiếp cận hơn các kỹ thuật prompt mà nghiên cứu của Google hướng dẫn. Trong đó, mình sẽ mô tả ngắn gọn kỹ thuật, cấu trúc prompt, sau đó đưa ra các thí dụ cụ thể và gợi ý kỹ thuật prompt đó sẽ phù hợp với kiểu nhu cầu nào để các bạn tiện theo dõi.

Xem thêm:

Trong bài viết này, mình sẽ chia sẻ với các bạn về các kỹ thuật prompt đặc thù khác ra là Role Prompt, Contextual Prompt và System Prompt, tóm tắt đặc điểm, vai trò và cả các ứng dụng cụ thể của nó để dễ áp dụng nhé.

Role Prompt


Thực ra đây là một thành phần trong prompt nhiều hơn là một kiểu prompt. Bằng cách gán một nhân vật hoặc một danh tính cụ thể (thí dụ như bạn là một chuyên gia xxx nào đó, bạn là tên nhân vật nào đó,…), model sẽ tập trung kiến thức của nó vào chủ để mà người dùng truy vấn, từ đó tạo ra các phản hồi nhất quán và phù hợp với yêu cầu của người dùng.

Một cách dễ hình dung, Role prompt sẽ xác định rõ một tập kiến thức con nằm trong bể kiến thức khổng lồ của model được dạy, từ đó phạm vi tìm kiểm sẽ có chiều sâu và phù hợp hơn. Bằng cách này, phong cách, giọng văn đầu ra và tính chuyên môn của nội dung mà người dùng kỳ vọng sẽ được cải thiện chất lượng hơn, mức độ liên quan và hiệu quả cũng được tăng lên.

Việc áp dụng Role Prompt không chỉ gán cho model một vai trò / nghề nghiệp nào đó, thí dụ như giáo viên mẫu giáo, diễn giả truyền cảm hứng, biên tập viên, chuyên gia code,… mà chúng ta cũng có thể xác định góc độ vai trò cho nó, thí dụ nhưng yêu cầu nhân vật mà model nhập vai có chuyên môn cụ thể nào, thí dụ như thay vì chuyên gia code python chuyên gia code python cho các task có liên quan để cụ thể hơn nữa. Đồng thời, chúng ta cunxgc ó thể quy định các phong cách hay giọng điệu trả lời nào, thí dụ như thẳng thắng, chi tiết, Trang trọng, Hài hước, Ảnh hưởng, Không trang trọng, Truyền cảm hứng, Thuyết phục,… để tiếp tục tối ưu đầu ra phù hợp với tác vụ mà người dùng đang yêu cầu model thực hiện.

Trên thực tế, cho tới hiện tại tất cả các hướng dẫn prompt hiệu quả (kiểu công thức dùng được ở nhiều tình huống) từ các chuyên gia, tổ chức lớn lẫn công ty phát triển model đều khẳng định vai trò của role prompt trong việc trả về kết quả phù hợp. Mình thấy một số bạn thắc mắc rằng có cần xác định role không thì mình nghĩ rằng, câu hỏi nên là "tình huống nào thì cần dùng role". Nếu kiểu zero shot đã giải quyết được vấn đề của bạn thì tất nhiên không cần rồi.

Role prompt sẽ phù hợp để:
  • Kiểm soát hàm lượng chuyên môn của phản hồi do model tạo ra.
  • Xác định đặc tính kiến thức chuyên ngành của đầu ra
  • Kiểm soát giọng điệu, phong cách, cá tính của đầu ra.
  • Hỗ trợ định hình ngữ cảnh tương tác với model

Cấu trúc cơ bản của một Role Prompt:
Bạn là XXX
Hãy YYY

Tình huống 1:
Bạn là một hướng dẫn viên du lịch, hãy gợi ý các địa điểm

Quảng cáo


Screenshot 2025-04-21 081852.png

Tình huống 2:
Bạn là một chuyên gia lập trình python, hãy giải thích đoạn code phức tạp sau.
Screenshot 2025-04-21 082043.png
Screenshot 2025-04-21 082056.png

Đây là không dùng Role Prompt
Screenshot 2025-04-21 090335.png

Tình huống 3:
Bạn là một nhà sử học luôn hoài nghi mọi thứ, hãy phân tích tài liệu sau

Quảng cáo


Screenshot 2025-04-21 082733.png

Đây là không dùng Role Prompt
Screenshot 2025-04-21 085840.png

Tình huống 4:
Bạn là một thợ rèn thời Trung cổ, hãy mô tả chi tiết cách rèn một thanh kiếm
Screenshot 2025-04-21 082436.png

Không dùng Role Prompt
Screenshot 2025-04-21 090244.png

Tình huống 5:
Bạn là một một kiện tướng cờ vua. Hãy gợi ý cho tôi chi tiết 3 cách khai cuộc.
Screenshot 2025-04-21 082618.png

Không dùng Role Prompt
Screenshot 2025-04-21 090124.png

Contextual Prompt


Prompt này sẽ cung cấp chi tiết hoặc những thông tin nền cụ thể có liên quan đến cuộc hội thoại hoặc nhiệm vụ hiện tại. Prompt này giúp model hiểu được rõ hơn các đặc tính của những gì người dùng truy vấn, từ đó điều chỉnh phản hồi phù hợp. Đặc điểm của

Contextual Prompt cung cấp thông tin cụ thể theo từng tác vụ mà người dùng yêu cầu. Bởi thế, Contextual Prompt sẽ mang tính động, nghĩa là nó cần thay đổi theo từng tác vụ khác nhau để đảm bảo rằng model sẽ trả về các kết quả phù hợp với từng tác vụ. Thường Contextual chính là tình huống, bối cảnh mà người dùng đang thực hiện tác vụ

Contextual Prompt sẽ phù hợp để:
  • Cung cấp bối cảnh cụ thể cho một nhiệm vụ.
  • Điều chỉnh phản hồi cho phù hợp với tình huống/cuộc trò chuyện hiện tại.
  • Làm rõ sắc thái dựa trên thông tin được cung cấp.

Cấu trúc cơ bản của một Contextual Prompt:
Ngữ cảnh: Tôi đang làm / Bạn đang có,…
Yêu cầu: Hãy XXX

Tình huống 1:
Bạn đang đánh giá một báo cáo tài chính của một công ty nộp cho ngân hàng để xin vay số tiền 5 tỷ đồng mở rộng kinh doanh.
Hãy viết một đoạn đánh giá dài 300 từ, nêu ra những điểm mạnh và điểm yếu tài chính của công ty này.
Screenshot 2025-04-21 081221.png

Tình huống 2:
Bạn đang tư vấn thực đơn cho một người ăn chay, dị ứng với miến và dứa.
Hãy đề xuất thực đơn món Việt Nam 3 ngày.

Screenshot 2025-04-21 081202.png

Tình huống 3:
Tạo một bài viết dựa vào phong cách cụ thể
Hãy soạn một bài viết về văn hóa công ty theo cấu trúc và văn phong giống như file tôi tải lên.
Screenshot 2025-04-21 081352.png

Tình huống 4:
Trả lời câu hỏi dựa vào thông tin trong văn bản kèm trong prompt
Screenshot 2025-04-21 081452.png

Tình huống 5:
Tóm tắt toàn bộ nội dung cuộc họp dựa vào biên bản đầy đủ và các ghi chú của cuộc họp
Screenshot 2025-04-21 081636.png

System Prompting


System Prompt được dùng để thiết lập một bối cảnh và mục tiêu tổng thể cho model. Prompt này sẽ định nghĩa "một bức tranh tổng thể" về những gì mà model cần thực hiện, từ những task đơn giản như dịch ngôn ngữ, phân loai, đánh giá cho tới những nhiệm vụ phức tạp hơn.

System prompt sẽ đóng vai trò như một bộ những quy tắc bổ sung mà model cần tuân thủ nhất quán trong mọi lần mà người dùng truy vấn nó, thí dụ như PHẢI trả về định dạng JSON, PHẢI cho đầu ra theo một định dạng mà người dùng muốn. Nếu muốn sử dụng output này của model để đưa vào một logic khác, hoặc nằm trong một hệ thống tự động, thì system prompt sẽ cực kỳ hữu ích.

System Prompt sẽ có thể phù hợp để:
  • Ép model tạo đầu ra đáp ứng được những yêu cầu cụ thể. Thí dụ dùng nó để chỉ định cách model trả về kết quả phân loại phim, chỉ trả về tiêu đề phim viết hoa, kèm theo tên 3 diễn viên chính,… Điều này đảm bảo model sẽ tạo đầu ra nhất quán theo một định dạng nhất định thỏa ý đồ của người dùng.
  • Trả về đầu ra theo một cấu trúc mà người dùng muốn, thường gặp nhất là trả về một JSON. Bằng cách sử dụng System Prompt, model sẽ có thể cho ra đầu ra đã được sắp xếp thứ tự, cú pháp,… theo chỉ định và hạn chế hallucianation. Khi muốn dùng model trong một hệ thống tự động hóa xử lý dữ liệu hoặc luồng, việc dùng System Prompt gần như là việc làm bắt buộc.
  • Kiểm soát thông tin được model trả về luôn an toàn và không có từ ngữ / nội dung độc hại. Thí dụ như bạn đang dùng model để tạo ra những nội dung cho trẻ em, cho một nhóm đối tượng nhạy cảm,… có thể dùng System Prompt để quy định nguyên tắc cho model, PHẢI làm xxx, KHÔNG ĐƯỢC trả về abc,…

Cấu trúc cơ bản của System Prompt:
System Instruction: Bạn PHẢI [tuân theo quy tắc xxx]
User prompt: YYY

Tình huống 1
Chúng ta dùng System Prompt để chỉ định rằng "Bạn luôn kiểm tra thông tin cẩn thận và luôn trích dẫn nguồn". Sau đó khi người dùng nhập prompt yêu cầu tác vụ cụ thể "Kể ra 3 sự thật đáng ngạc nhiên về loài mèo", model sẽ trả về kết quả như bên dưới.
[​IMG]

Và đây là khi không có System Prompt, để model tự bơi.
Screenshot 2025-04-21 004028.png

Tình huống 2:
Dùng prompt System để chỉ định rằng "Hãy luôn trả lời bằng 2 câu trong Truyện Kiều của Nguyễn Du." Sau đó người dùng nhập prompt yêu cầu: "Giải thích về cây thân gỗ"
Screenshot 2025-04-21 003908.png

Đây là khi không có System Prompt
Screenshot 2025-04-21 003947.png

Tình huống 3:
Yêu cầu đầu ra phải luôn được Viết Hoa
Screenshot 2025-04-21 080018.png

Tình huống 4:
Yêu cầu model phong cách xưng hô khi trả lời
Screenshot 2025-04-21 080305.png

Tình huống 5:
Screenshot 2025-04-21 080428.png

Phân biệt 3 kiểu prompt nói trên


Đầu tiên, hãy thử tóm tắt ngắn gọn nhất có thể đặc tính của 3 kiểu prompt này:
  • System prompt giúp định hình khả năng cơ bản và mục đích bao trùm của model. Nó cho phép chúng ta "lập trình sẵn" hướng dẫn model thực hiện các loại nhiệm vụ cụ thể và tuân theo các định dạng đầu ra nhất định.
  • Contextual prompt đảm bảo rằng phản hồi của model có liên quan trực tiếp đến tình huống hoặc nhiệm vụ hiện tại. Điều này rất quan trọng để có được các phản hồi chính xác và hữu ích, đặc biệt trong các cuộc hội thoại hoặc các nhiệm vụ phức tạp đòi hỏi sự hiểu biết về bối cảnh cụ thể.
  • Role prompt cho phép kiểm soát chiều sâu kiến thức, giọng điệu và phong cách của đầu ra. Bằng cách gán một vai trò cụ thể, chúng ta có thể giúp model tạo ra nội dung phù hợp cả về độ sâu kiến thức lẫn hình thức với một đối tượng hoặc mục đích cụ thể.

Mặc dù thoạt nhìn có sự chồng chéo giữa các kiểu prompt nói trên, tuy nhiên trong thực tế, người ta thường sẽ phối hợp 2 hoặc thậm chí là cả 3 kiểu prompt này trong cùng một prompt lớn khi thiết kế để tối ưu hóa đầu ra mong muốn đối với từng tác vụ, đặc biệt là những nhu cầu phức tạp. Việc hiểu tác động của từng kiểu prompt sẽ giúp chúng ta dễ dàng phân tích, xác định được đầu ra kỳ vọng khi xây dựng prompt để giải quyết các vấn đề.
20 bình luận

Xu hướng

Quá công nghiệp. Tác giả bị ám ảnh bởi đề văn nghị luận xã hội mới dùng cái prompt như thế.
"Hãy giải thích đoạn code sau, một cách chuyên nghiệp, rõ ràng, chi tiết".
"Giới thiệu các điểm du lịch ở tp Hồ Chí Minh với giọng điệu vui vẻ, nhiệt tình, có thể thêm các từ tiếng lóng..."
@Doof Heinz Thỉnh thoảng khi cần dùng đến cái prompt nào advance là tui kêu con chatbot (vd như Claude) generate cái prompt đó theo chuẩn phổ biến, xong quăng vô con chatbot khác (vd như ChatGPT) là xong, khoẻ 😁
@magez Bạn lạm dụng riết sẽ bị hư não luôn đó. Nếu hiểu và biết cách áp dụng tuỳ tình huống thì sẽ tốt cho não bộ.
rất hữu ích, thank chủ thớt!
Cái trò kêu nhập vai là cái thứ xàm xí nhất mà cứ bày ra nói quài. Nó khiến tốn token, máy chủ tốn năng lượng vô ích. Người dùng nói cám ơn thôi là đã tốn cả chục triệu đô rồi.
@Methylamine Như tôi nói ở trên. thay vì "Hãy đóng vai" có thể sửa thành "bằng giọng điệu", "một cách chuyên nghiệp", "với lối nói mỉa mai châm biếm" , giọng điệu hồi tưởng ...
Mục đính chính là thay đổi tone của output. Mà kiểu đóng vai xxx thì AI nó phải tốn thêm token để kiểm tra xem vai xxx dùng tone gì.
@Doof Heinz Chuẩn cmnl. Mình cũng thấy role prompt bản chất là thêm context thôi
@vcivilen Cái hãy đóng vai hay giọng điệu là phần rất quan trọng trong bản chất của token prediction. Vì nó sẽ tìm các kết quả có liên quan/attention đến đầu ra.

vd. You are an expert in JAV, tự khắc những câu trả lời của các JAV expert/guru hay trường khái niệm có liên quan sẽ được đẩy ra thay vì là một thằng ất ơ cdsht nào đó.
@vcivilen vấn đề là bạn đang prompt để làm gì, cho task gì á. Cơ mà prompt đâu chỉ xài để nói chuyện với chatbot không, còn mấy thứ xa hơn xíu nữa hihihi
Tào lao quá, chỉ cần thêm phía sau : một cách chuyên nghiệp là nó đã khác rồi.
@narutoxboy mình đang nói theo hướng bản chất kiểu prompt nó là gì mà 😁 nó là tools thôi, quan trọng là task đó bạn có cần xài tới nó không thôi. Mình thì càng càng về sau khi cấu hình agent, code rule,... đều có xài nó.
Bạn dùng GPT nào vậy, Gemini / ChatGPT / Copilot / Grok không có nút Deep Research như trong hình nhỉ?
@Kelvin1992 Mình dùng ChatGPT plus á bạn
Bạn là anh Hịp, hãy trảm mấy đối tượng hay gây war
trong ChatGPT 4o có sử dụng được system promt ko shop, nếu được thì input chỗ nào
Ối giời, viết về vấn đề mang tính kỹ thuật, công nghệ mà dài dòng vãi chưởng, nhưng lại lan man, không rõ nội dung.
Ví dụ: Ngay từ đầu đã không giải thích Role Prompt là gì, thì ai mà hiểu được.
Ngắn gọn thôi: Role là vai trò, đóng vai, Role prompt là câu lệnh cho nhân vật mà ChatGPT nhập vai. Lấy ví dụ về Role Prompt:
Bạn (ChatGPT) là bác sĩ chuyên khoa răng. Hãy chỉ cho tôi cách làm trắng răng hiệu quả.
Thế thôi. Dài dòng làm gì.
Chính ra, dùng ChatGPT mà viết bài này, thì dễ hiểu hơn 96 lần.
Screenshot-20250421-212611-ChatGPT.jpg
Hay !!

Xu hướng

Bài mới








  • Chịu trách nhiệm nội dung: Trần Mạnh Hiệp
  • © 2025 Công ty Cổ phần MXH Tinh Tế
  • Địa chỉ: 70 Bà Huyện Thanh Quan, P. Xuân Hoà, TPHCM
  • Số điện thoại: 02822460095
  • MST: 0313255119
  • Giấy phép cung cấp dịch vụ MXH số 134/GP-BVHTTDL, Ký ngày: 30/09/2025