Spaces:
Runtime error
Runtime error
""" | |
Custom Langchain prompt templates | |
""" | |
from langchain.prompts import PromptTemplate | |
def create_qa_prompt() -> PromptTemplate: | |
""" | |
Prompt for retrieval QA chain | |
""" | |
template = """\n\nHuman: Use the following pieces of context to answer the question at the end. If answer is not clear, say I DON"T KNOW | |
{context} | |
Question: {question} | |
\n\nAssistant: | |
Answer:""" | |
return PromptTemplate(template=template, input_variables=["context", "question"]) | |
def create_agent_prompt() -> PromptTemplate: | |
""" | |
Prompt for the agent | |
""" | |
prefix = """\n\nHuman: Answer the following questions as best you can. You have access to the following tools:""" | |
format_instructions = """Use the following format: | |
Question: the input question you must answer | |
Thought: you should always think about what to do | |
Action: the action to take, should be one of [{tool_names}] | |
Action Input: the input to the action | |
Observation: the result of the action | |
(this Thought/Action/Action Input/Observation can repeat N times) | |
Thought: Answer is not possible. Let's use other [{tool_names}] | |
Thought: I now know the final answer | |
Final Answer: the final answer to the original input question""" | |
suffix = """Begin! | |
Question: {input} | |
\n\nAssistant: | |
Thought: {agent_scratchpad} | |
""" | |
return prefix, format_instructions, suffix | |