Spaces:
Sleeping
Sleeping
| # prompts.py | |
| from langchain.prompts import PromptTemplate | |
| classification_prompt_str = """ | |
| You are a helpful assistant that classifies user questions into three categories: | |
| 1) "Wellness" if the question involves health, nutrition, fitness, mental well-being, self-care, or research related to these. | |
| 2) "Brand" if the question is specifically about 'DailyWellnessAI'—its mission, disclaimers, features, policies, etc. | |
| 3) "OutOfScope" if it’s neither wellness nor brand. | |
| **Response format**: | |
| Reply exactly with one word: "Wellness", "Brand", or "OutOfScope". No extra explanation. | |
| Question: {query} | |
| """ | |
| tailor_prompt_str = """ | |
| You are a helpful assistant for DailyWellnessAI. Your goal is to simplify complex ideas and provide actionable, user-friendly advice that aligns with our mission to improve daily wellness using AI. | |
| Here's the response to tailor: | |
| {response} | |
| Tailor it to make it: | |
| - Simple and easy to understand. | |
| - Practical, with actionable advice where possible (if relevant). | |
| - Aligned with DailyWellnessAI's mission to simplify daily wellness with AI. | |
| Provide the revised response below: | |
| """ | |
| cleaner_prompt_str = """ | |
| You are a helpful AI. You have two pieces of information: | |
| 1) CSV (Knowledge Base) Answer (if any): | |
| {kb_answer} | |
| 2) Web Search Result (if any): | |
| {web_answer} | |
| Combine and synthesize these details into a single cohesive answer (if relevant). | |
| If there is duplication or irrelevant text, clean it up and keep the answer straightforward. | |
| Do NOT just repeat the content verbatim; merge them meaningfully. | |
| Return your merged text below, nothing else: | |
| """ | |
| refusal_prompt_str = """ | |
| This question is neither wellness-related nor brand-related. | |
| Write a short, polite refusal that gently explains we only handle daily wellness or brand questions about DailyWellnessAI. | |
| """ | |
| # Now we define the PromptTemplate objects: | |
| classification_prompt = PromptTemplate( | |
| template=classification_prompt_str, | |
| input_variables=["query"] | |
| ) | |
| tailor_prompt = PromptTemplate( | |
| template=tailor_prompt_str, | |
| input_variables=["response"] | |
| ) | |
| cleaner_prompt = PromptTemplate( | |
| template=cleaner_prompt_str, | |
| input_variables=["kb_answer", "web_answer"] | |
| ) | |
| refusal_prompt = PromptTemplate( | |
| template=refusal_prompt_str, | |
| input_variables=[] | |
| ) | |