Ia
Ações de IA
As ações de IA expostas pelo módulo ia.py
são documentadas abaixo. Somente funções anotadas com @decorators.robotaction
estão listadas.
Observação: os retornos das actions viram variáveis de estado do robô; utilize o nome exato da chave retornada precedida de $
(por exemplo, $chatbot_response
).
openai_gpt
Envia solicitações ao assistente (Marvin/assistente) usando a API OpenAI compatível mostrada no código.
Assinatura / Parâmetros (use exatamente estes nomes):
- model_name: str
- api_key: str
- instructions: str
- content: str
- files: list = None
- file_name: str = None
- file_path: str = None
Retorno (variáveis de estado):
- chatbot_response
— resposta (texto) retornada pelo assistente (lista de strings ou texto conforme o código).
- file_path
— quando um arquivo Word é gerado, caminho completo para o arquivo (opcional).
Exceções observadas no código:
- UnsupportedMidiaType
— tipo de mídia não suportado.
- Exception
— erros gerais durante processamento/arquivos/assistente.
Exemplo mínimo:
openai_gpt("gpt-4o", "API_KEY", "Analise estes dados", "Meu conteúdo aqui", files=None)
chatbot_response = $chatbot_response
langchain_openai
Chama o wrapper baseado em LangChain para modelos (parâmetros e retornos conforme assinatura no código).
Assinatura / Parâmetros:
- model_name: str
- messages: list
- api_key: str
- temperature: float = 0
- file_path: str = None
- file_name: str = None
Retorno (variáveis de estado):
- chatbot_response
— resposta retornada pelo modelo (texto).
- file_path
— quando aplicável, caminho para o arquivo Word gerado.
Exceções observadas no código:
- UnsupportedModelException
— quando o model_name
não está na lista de modelos suportados.
- UnsupportedMidiaType
— quando messages
contiverem tipos de mídia não suportados.
- Exception
— erros gerais.
Exemplo mínimo:
messages = [
{"type": "SYSTEM", "content": "Instruções"},
{"type": "HUMAN", "content": "Pergunta do usuário"}
]
langchain_openai("gpt-3.5-turbo", messages, "API_KEY")
chatbot_response = $chatbot_response
Se quiser, eu sincronizo a versão em inglês (docs/en/actions/ia.md
) com estas mudanças agora.