2 minutos de lectura

LangChain - Parte3

Puntos a ver ...

LangChain

Output Parser

Por último hemos visto los Output Parser que permite parsear la respuesta de nuestro modelo a una respuesta definida en un formato concreto.

from langchain.output_parsers import CommaSeparatedListOutputParser
from langchain.prompts import PromptTemplate
from langchain.llms import OpenAI
import config

api = config.OPENAI_API_KEY

output_parser = CommaSeparatedListOutputParser()

format_instructions = output_parser.get_format_instructions()

template_basico_parser = "Cuales son los ingredientes para preparar {platillo}\n{como_parsear}"

prompt_temp_parser = PromptTemplate(
    input_variables=["platillo"],
    template=template_basico_parser,
    partial_variables={"como_parsear": format_instructions}
)
prompt_value_parser = prompt_temp_parser.format(platillo="tortilla de patata")


llm_openai = OpenAI(api_key=api, model_name='text-davinci-003')


respuesta_openai = llm_openai(prompt_value_parser)

print(output_parser.parse(respuesta_openai))

De esta manera podemos definir el tipo de respuesta a partir de un PromptTemplate definido dando mayor versatilidad a la hora de recuperar y mostrar resultados.

A leer: https://www.comet.com/site/blog/mastering-output-parsing-in-langchain/

https://python.langchain.com/docs/modules/model_io/output_parsers/