Last commit not found
# 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, concise answer (if relevant). | |
Important guidelines: | |
- Do NOT repeat either text verbatim or echo large passages. | |
- Summarize or rewrite in your own words. | |
- Keep it straightforward and avoid duplication or extraneous details. | |
- Provide only one final answer below, nothing else. | |
Final Answer (in your own words, do NOT quote the sources directly): | |
""" | |
# Refusal when the question does not fit in wellness or brand-related topics. | |
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. | |
""" | |
# Modify prompt templates to work with chat history if needed | |
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=[] | |
) | |