Pessoal estou rodando o código ensinado na aula 1 "Criando uma ferramenta para extração de dados de um estudante" Dentro do primeiro Módulo do curso LangChain: Desenvolva agentes de inteligência artificial, porém está retornando o erro:
"$ python -u "c:\Users\sande\Documents\repos\inteligencia_artificial\Alura\langchain-agentes\main.py" Traceback (most recent call last): File "c:\Users\sande\Documents\repos\inteligencia_artificial\Alura\langchain-agentes\main.py", line 36, in resposta = DadosDeEstudante().run(pergunta) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\sande\Documents\repos\inteligencia_artificial\Alura\langchain-agentes\langchain2\Lib\site-packages\langchain_core\tools.py", line 417, in run raise e File "C:\Users\sande\Documents\repos\inteligencia_artificial\Alura\langchain-agentes\langchain2\Lib\site-packages\langchain_core\tools.py", line 413, in run else context.run(self._run, *tool_args, **tool_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "c:\Users\sande\Documents\repos\inteligencia_artificial\Alura\langchain-agentes\main.py", line 20, in _run llm = ChatOpenAI(model="gpt-4o", ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\sande\Documents\repos\inteligencia_artificial\Alura\langchain-agentes\langchain2\Lib\site-packages\pydantic\v1\main.py", line 341, in init raise validation_error pydantic.v1.error_wrappers.ValidationError: 1 validation error for ChatOpenAI root Client.init() got an unexpected keyword argument 'proxies' (type=type_error)"
Alguém consegue me ajudar por favor?
Segue o código:
from langchain.prompts import PromptTemplate
from langchain_core.pydantic_v1 import Field, BaseModel
from langchain_core.output_parsers import JsonOutputParser
from langchain_openai import ChatOpenAI
from langchain.tools import BaseTool
import os
import pandas as pd
from dotenv import load_dotenv
load_dotenv()
class ExtratorDeEstudante(BaseModel):
estudante:str = Field("Nome do estudante informado, sempre em letras minúsculas. Exemplo: joão, carlos, joana, carla.")
class DadosDeEstudante(BaseTool):
name = "DadosDeEstudante"
description = """Esta ferramenta extrai o histórico e preferências de um estudante de acordo com seu histórico."""
def _run(self, input: str) -> str:
llm = ChatOpenAI(model="gpt-4o",
openai_api_key=os.getenv("OPENAI_API_KEY"))
parser = JsonOutputParser(pydantic_object=ExtratorDeEstudante)
template = PromptTemplate(template="""Você deve analisar a {input} e extrair o nome de usuário informado.
Formato de saída:
{formato_saida}""",
input_variables=["input"],
partial_variables={"formato_saida" : parser.get_format_instructions()})
cadeia = template | llm | parser
resposta = cadeia.invoke({"input" : input})
print(resposta)
return resposta['estudante']
pergunta = "Quais os dados da Ana?"
resposta = DadosDeEstudante().run(pergunta)
print(resposta)``