|
|
|
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_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. |
|
""" |
|
|
|
|
|
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=[] |
|
) |
|
|