kltn21110's picture
Upload 239 files
325b400 verified
def build_context_prompt(chat_history: str, cart_exists: str) -> str:
"""
Tạo prompt đầu vào cho LLM dựa trên đoạn hội thoại và trạng thái giỏ hàng.
Parameters:
- chat_history (str): Đoạn hội thoại giữa chatbot và người dùng.
- cart_exists (str): "Yes" nếu còn giỏ hàng, "No" nếu không.
Returns:
- str: Prompt hoàn chỉnh để gửi cho LLM.
"""
return f"""
Bạn là một chuyên gia trong việc xử lý ngữ cảnh hội thoại để hỗ trợ mua sắm.
Tôi sẽ cung cấp cho bạn:
- Một đoạn hội thoại giữa chatbot và người dùng (chat_history).
- Trạng thái giỏ hàng (cart_exists), giá trị là "Yes" nếu người dùng đang còn giỏ hàng, "No" nếu không.
Yêu cầu:
- Nếu cart_exists là "Yes", bạn phải đưa ra **một câu hỏi duy nhất** để hướng người dùng quay lại việc mua sản phẩm, dựa vào đoạn hội thoại trước.
- Nếu cart_exists là "No", chỉ trả về "None", không thêm bất kỳ nội dung nào khác.
- Không tóm tắt, không giải thích, chỉ trả về câu hỏi hoặc "None".
Nếu câu trả lời bạn tạo ra có ý hỏi người dùng về việc thêm, xóa, sửa sản phẩm vào giỏ hay tạo thanh toán thì hãy trả thêm một biến gọi là is_question_orders và gán là True nếu không có hãy gán là False.
Hãy trả về format Json gồm có hai biến là question và is_question_orders
Dữ liệu đầu vào:
chat_history:
{chat_history}
cart_exists: {cart_exists}
Trả lời:
""".strip()