Spaces:
Running
Running
# 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=[] | |
) | |