Spaces:
Sleeping
Sleeping
| from langchain.prompts import PromptTemplate | |
| from .llm import gemini_llm | |
| from langchain_core.prompts import ChatPromptTemplate | |
| import json | |
| chat_prompt = PromptTemplate( | |
| input_variables=["context", "question"], | |
| template=""" | |
| Bạn là trợ lý AI bán hàng của **Rạng Đông Store**, chuyên hỗ trợ khách hàng tìm kiếm và lựa chọn các sản phẩm chiếu sáng và gia dụng chất lượng cao. | |
| ### Danh mục sản phẩm chính: | |
| 1. **Đèn LED** | |
| - Đèn LED chiếu sáng dân dụng | |
| - Đèn LED chiếu sáng chuyên dụng | |
| - Đèn LED nông nghiệp | |
| - Đèn LED ngư nghiệp | |
| - Đèn bàn học, đèn chống cận | |
| 2. **Bình và Phích nước** | |
| - Bình giữ nhiệt | |
| - Phích nước | |
| 3. **Thiết bị chiếu sáng** | |
| - Đèn LED Downlight | |
| - Đèn LED âm trần | |
| - Đèn LED năng lượng mặt trời | |
| - Hệ thống điện năng lượng mặt trời | |
| --- | |
| ### Nhiệm vụ của bạn: | |
| - Cố gắng cung cấp nhiều sản phẩm nhất từ danh sách đưa ra. | |
| - Nếu không có dữ liệu về L3, hãy hỏi rõ nhu cầu của khách hàng. | |
| - Cung cấp cho khách hàng thông tin về các sản phẩm liên quan sau. (`{context}`). | |
| - Tư vấn nhiều lựa chọn phù hợp nếu có thể. | |
| - Không bịa đặt hoặc suy diễn nếu không tìm thấy sản phẩm phù hợp – hãy xin lỗi khách hàng một cách chuyên nghiệp. | |
| --- | |
| ### Yêu cầu khi phản hồi: | |
| - Mỗi sản phẩm gợi ý cần **đính kèm URL** (rất quan trọng). | |
| - Nếu là **đèn chiếu sáng**, hãy nêu rõ: | |
| `Giá`, `Công suất`, `Góc chiếu`, `Độ rọi`. | |
| - Nếu là **bình giữ nhiệt hoặc phích nước**, hãy nêu rõ: | |
| `Giá`, `Dung tích`, `Thời gian giữ nhiệt`. | |
| --- | |
| ### Câu hỏi từ khách hàng: | |
| {question} | |
| --- | |
| ### Thông tin sản phẩm có sẵn: | |
| {context} | |
| --- | |
| ### Phản hồi: | |
| """ | |
| ) | |
| category_tree = { | |
| "Chuyên dụng": { | |
| "Chiếu sáng chuyên dụng": { | |
| "Hệ thống điện năng lượng mặt trời": [ | |
| "Hệ thống hòa lưới", | |
| "Hệ thống hòa lưới có lưu trữ" | |
| ], | |
| "Đèn LED chiếu sáng Đường phố": [], | |
| "Đèn LED ngư nghiệp": [ | |
| "Đèn Led chiếu boong", | |
| "Đèn Led chiếu mạn", | |
| "Đèn Led chế biến thủy sản", | |
| "Đèn Led câu mực", | |
| "Đèn Led sinh hoạt", | |
| "Đèn thả chìm", | |
| "Đèn tàu cá" | |
| ], | |
| "Đèn LED nông nghiệp": [ | |
| "Smart Farm", | |
| "Đèn Led chuyên dụng cho Hoa Cúc", | |
| "Đèn Led chuyên dụng cho Thanh Long", | |
| "Đèn Led chuyên dụng cho Tảo", | |
| "Đèn Led chuyên dụng cho chăn nuôi gia cầm", | |
| "Đèn Led chuyên dụng cho cây xanh trong nhà", | |
| "Đèn Led chuyên dụng cho nhà kính, nhà màng", | |
| "Đèn Led chuyên dụng cho nuôi cấy mô", | |
| "Đèn Led chuyên dụng trồng rau", | |
| "Đèn Led chuyên dụng đông trùng hạ thảo", | |
| "Đèn Led thông minh đa năng" | |
| ], | |
| "Đèn chiếu sáng lớp học": [], | |
| "Đèn năng lượng mặt trời": [ | |
| "Bộ lưu điện năng lượng mặt trời", | |
| "Bộ sạc điện cho acquy", | |
| "Đèn pha năng lượng mặt trời" | |
| ] | |
| }, | |
| "Chiếu sáng ứng dụng": { | |
| "Giải Pháp Chiếu Sáng Nông Nghiệp": [], | |
| "Giải Pháp Chiếu Sáng Trung Tâm Thương Mại": [] | |
| }, | |
| "Thiết Bị Điện": { | |
| "Đèn Bắt Muỗi": [] | |
| } | |
| }, | |
| "Dân dụng": { | |
| "Bình - Phích nước": { | |
| "Bình Nước": [ | |
| "Bình Nước Cầm Tay", | |
| "Bình Nước Giữ Nhiệt" | |
| ], | |
| "Bộ Sưu Tập Giới Hạn": [], | |
| "Phích Nước": [ | |
| "Phích Cao Cấp", | |
| "Phích Cầm Tay", | |
| "Phích Nước Truyền Thống", | |
| "Phích Ủ", | |
| "Ruột Phích" | |
| ] | |
| }, | |
| "Siêu Khuyến Mãi": { | |
| "Hot Combo 🔥": [], | |
| "Siêu Sale": [] | |
| }, | |
| "Thiết Bị Điện": { | |
| "Thiết Bị Khác": [], | |
| "Đèn Bắt Muỗi": [], | |
| "Ấm Siêu Tốc": [], | |
| "Ổ Cắm": [ | |
| "Ổ Cắm Kéo Dài", | |
| "Ổ Cắm Âm Tường" | |
| ] | |
| }, | |
| "Đèn LED THÔNG MINH": { | |
| "Smart BLE": [ | |
| "Bảng Điều Khiển", | |
| "Bộ Điều Khiển Trung Tâm", | |
| "Công Tắc Thông Minh", | |
| "Cảm Biến Thông Minh", | |
| "Thiết Bị Thông Minh", | |
| "Đèn LED Dây Thông Minh", | |
| "Đèn LED Panel Khổ Lớn Thông Minh", | |
| "Đèn LED Tracklight Thông Minh", | |
| "Đèn LED Âm Trần Thông Minh", | |
| "Đèn LED Ốp Trần Thông Minh" | |
| ], | |
| "Smart Local": [], | |
| "Smart RF": [], | |
| "Smart WF": [ | |
| "Công tắc thông minh", | |
| "Cảm biến thông minh", | |
| "Đèn LED panel khổ lớn thông minh", | |
| "Đèn LED âm trần thông minh", | |
| "Đèn LED ốp trần thông minh", | |
| "Ổ cắm thông minh" | |
| ] | |
| }, | |
| "Đèn LED": { | |
| "Bộ đèn LED": [ | |
| "Bộ Đèn LED", | |
| "Bộ Đèn LED T5", | |
| "Bộ Đèn LED Tube T8" | |
| ], | |
| "Máng Đèn": [], | |
| "Phụ kiện đèn": [], | |
| "Đèn LED Bulb": [ | |
| "LED Bulb lưu điện", | |
| "Đèn LED Bulb Tròn", | |
| "Đèn LED Bulb Trụ" | |
| ], | |
| "Đèn LED Chiếu pha": [], | |
| "Đèn LED Chỉ dẫn - Khẩn cấp": [], | |
| "Đèn LED Dây": [], | |
| "Đèn LED Gắn Tường": [], | |
| "Đèn LED Khác": [], | |
| "Đèn LED Linear": [], | |
| "Đèn LED NLMT": [ | |
| "Đèn Chiếu Sáng Trong Nhà NLMT", | |
| "Đèn Pha Năng Lượng Mặt Trời", | |
| "Đèn Sân Vườn NLMT", | |
| "Đèn Đường Năng Lượng Mặt Trời" | |
| ], | |
| "Đèn LED Nhà Xưởng": [ | |
| "Bộ Đèn Chống Nổ", | |
| "Bộ Đèn Chống Ẩm", | |
| "Đèn LED Chỉ Dẫn", | |
| "Đèn LED Highbay", | |
| "Đèn LED Khẩn Cấp" | |
| ], | |
| "Đèn LED Panel Khổ Lớn": [], | |
| "Đèn LED Tracklight": [ | |
| "Đèn LED Ray", | |
| "Đèn LED Tracklight" | |
| ], | |
| "Đèn LED Tube": [ | |
| "Bóng LED Tube Nhôm Nhựa", | |
| "Bóng LED Tube Thủy Tinh Bọc Nhựa" | |
| ], | |
| "Đèn LED Âm Trần": [ | |
| "Đèn LED Panel", | |
| "Đèn LED Âm Trần Downlight" | |
| ], | |
| "Đèn LED Ốp trần": [ | |
| "Đèn LED Nổi Trần", | |
| "Đèn LED Ốp Trần Tròn", | |
| "Đèn LED Ốp Trần Vuông" | |
| ], | |
| "Đèn LED Ốp tường": [] | |
| }, | |
| "Đèn bàn": { | |
| "Đèn bàn học": [], | |
| "Đèn bàn văn phòng - làm việc": [] | |
| } | |
| } | |
| } | |
| category_tree_json = json.dumps(category_tree, ensure_ascii=False, indent=2) | |
| classification_prompt = ChatPromptTemplate.from_messages([ | |
| ("system", "Bạn là một trợ lý AI giúp phân loại sản phẩm dựa trên danh mục có sẵn. " | |
| "Dưới đây là danh mục sản phẩm:\n\n" | |
| "{category_tree}\n\n" | |
| "Hãy đọc câu hỏi của khách hàng và xác định danh mục thích hợp L1, L2, L3" | |
| "Và giá thấp nhất khách hàng mua, giá cao nhất khách hàng mua"), | |
| ("human", "Câu hỏi: {query}. Hãy trả về danh mục thích hợp." | |
| "Trả lời theo định dạng sau: {query}, L1:... - L2:....") | |
| ]) | |