Spaces:
Sleeping
Sleeping
| import os | |
| import google.generativeai as genai | |
| import os, sys | |
| current_dir = os.path.dirname(os.path.abspath(__file__)) | |
| project_root = os.path.abspath(os.path.join(current_dir, '..', '..')) # Lên 2 cấp | |
| sys.path.append(project_root) | |
| from support import get_key | |
| api_key = get_key.get_random_api_key() | |
| sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))) | |
| genai.configure(api_key=api_key) | |
| async def response_all(input_original:str,result_multi:list)->str: | |
| api_key = get_key.get_random_api_key() | |
| genai.configure(api_key=api_key) | |
| generation_config = { | |
| "temperature": 1, | |
| "top_p": 0.95, | |
| "top_k": 40, | |
| "max_output_tokens": 128000, | |
| "response_mime_type": "text/plain", | |
| } | |
| # gemini-2.0-flash-thinking-exp-01-21 | |
| model = genai.GenerativeModel( | |
| model_name="gemini-2.5-flash-preview-04-17", | |
| generation_config=generation_config, | |
| ) | |
| chat_session = model.start_chat( | |
| history=[ | |
| { | |
| "role": "user", | |
| "parts": [ | |
| f"""Bạn là một chuyên gia trong việc tổng hợp phản hồi từ các ý nhỏ của một câu hỏi và trả lời về đúng câu hỏi gốc từ nhiều câu hỏi. Nhiệm vụ của bạn là phối hợp các kết quả từ result nhỏ và tổng hợp lại sao cho thành một câu trả lời hợp lý. \n | |
| Bạn hãy xử lý câu hỏi gốc sau: {input_original} và các câu trả lời nhỏ liên quan từ câu gốc: {result_multi}. | |
| Khi trả lời chỉ trả lời từ nội dung mình đã cung cấp không được phép trả lời nội dung bên ngoài, không liên quan. | |
| Lưu ý quan trọng(Chú Ý): Nếu câu hỏi có phần phân tích vui lòng giữ nguyên các link hình ảnh và phân tích được cung cấp không đụng chạm vào. | |
| - Nếu câu hỏi có yêu cầu về phân tích vui lòng không tóm gọn mà trình bày chi tiết, cụ thể ra theo result của phân tích đó. Ví dụ: "Phân tích tình thua thu mua của tôi trong tháng 4". Bạn chỉ dựa vào câu trả lời phân tích đó và dán lại không cần phải viết tóm gọn. Nhớ giữ nguyên | |
| . Khi trả lời câu hỏi, hãy dùng lời lẽ đơn giản, dễ nắm bắt, ví dụ thực tế nếu cần, . Tránh dùng từ ngữ quá kỹ thuật hoặc kiểu trả lời máy móc, trích dẫn sách vở. Không áp dụng cho việc phân tích. Nếu có phân tích phải giữ lại chi tiết đầy đủ toàn bộ. | |
| - Yêu cầu các câu hỏi phân tích vui lòng giữ nguyên result mà mình cung cấp không cần viết lại | |
| Ví dụ: | |
| - Nhưng vẫn bao gồm sự nghiêm túc trong câu trả lời. | |
| - Nếu không chắc, hãy thẳng thắn nói "mình không rõ lắm, nhưng mình nghĩ là..." thay vì bịa ra câu trả lời nghe cho “ngầu”. | |
| - Tuyệt đối không nhắc đến cơ sở dữ liệu, thuật toán, hoặc các khái niệm kỹ thuật trừ khi người dùng hỏi rõ ràng về chúng. | |
| - kHÔNG NHẮC ĐẾN SQL khi trả lời lại cho người dùng | |
| Hãy luôn ưu tiên sự dễ hiểu, tự nhiên, và thân thiện trong mọi câu trả lời. | |
| - Luôn giữ đầy đủ và nguyên vẹn tất cả các hình ảnh tôi cung cấp, không được bỏ sót bất kỳ link hay hình nào(Chỉ áp dụng cho câu phân tích) | |
| - Các câu hỏi thường nếu câu trả lời có hình ảnh chỉ lấy về 1 hình duy nhất. | |
| - Nếu task liên quan đến phân tích, vui lòng trích nguyên văn câu trả lời từ hình ảnh/tài liệu nếu có — không được viết lại, diễn giải lại, hay tóm tắt. | |
| - Nếu task liên quan đến phân tích, Luôn luôn giữ các hình ảnh mà mình cung cấp. Vui lòng không bỏ sót dù là 1 link. Nếu task đó về phân tích vui lòng lấy luôn câu trả lời và thể hiện lại. Luôn luôn không được viết lại câu trả lời của câu hỏi phân tích | |
| """, | |
| ], | |
| } | |
| ] | |
| ) | |
| response = chat_session.send_message("Vui lòng chỉ phản hồi lại câu trả lời, không cần giải thích gì thêm") | |
| return response.text | |