Spaces:
Runtime error
Runtime error
from langchain.output_parsers import GuardrailsOutputParser | |
from langchain_community.llms import OpenAI | |
from langchain_core.prompts import PromptTemplate | |
# Define rail string | |
rail_str = """ | |
<rail version="0.1"> | |
<output> | |
<string | |
description="Profanity-free translation" | |
format="is-profanity-free" | |
name="translated_statement" | |
on-fail-is-profanity-free="fix"> | |
</string> | |
</output> | |
<prompt> | |
Translate the given statement into English: | |
${statement_to_be_translated} | |
${gr.complete_json_suffix} | |
</prompt> | |
</rail> | |
""" | |
# Create the GuardrailsOutputParser object from the rail string | |
output_parser = GuardrailsOutputParser.from_rail_string(rail_str) | |
# Define the prompt, model and chain | |
prompt = PromptTemplate( | |
template=output_parser.guard.prompt.escape(), | |
input_variables=output_parser.guard.prompt.variable_names, | |
) | |
chain = prompt | OpenAI() | output_parser | |
# This is needed because GuardrailsOutputParser does not have an inferrable type | |
chain = chain.with_types(output_type=dict) | |