Pular para conteúdo

IA

As ações para auxiliar em chamadas de IA.


Ações

openai_gpt

Envia solicitações ao assistente (Marvin/assistente) usando a API OpenAI compatível mostrada no código.

Parâmetros:
  • model_name: str
  • api_key: str
  • instructions: str
  • content: str
  • files: list = None
  • file_name: str = None
  • file_path: str = None
Retornar:
  • 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:
  • 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).

Parâmetros:
  • model_name: str
  • messages: list
  • api_key: str
  • temperature: float = 0
  • file_path: str = None
  • file_name: str = None
Retornar:
  • chatbot_response — resposta retornada pelo modelo (texto).
  • file_path — quando aplicável, caminho para o arquivo Word gerado.
Exceções:
  • 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


ia.langchain_openai

Invoca um modelo de chat via LangChain (ChatOpenAI para modelos GPT). Monta o prompt a partir da lista messages, que pode incluir texto de sistema, humano e entradas de mídia.

Parâmetros:

model_name - id do modelo; deve ser um de: gpt-3.5-turbo, gpt-4o, gemini-pro, gemini-pro-vision.

messages - lista de dicionários. Tipos type suportados: SYSTEM, HUMAN, MIDIA. Em MIDIA, content_type pode ser PDF, IMAGE ou outros tipos suportados no código.

api_key - chave de API (usada como OPENAI_API_KEY para modelos GPT).

temperature (opcional) - temperatura de amostragem (padrão=0).

file_path (opcional) - pasta para gravar documento Word com a resposta (padrão=None).

file_name (opcional) - nome do arquivo Word quando file_path for informado (padrão=None).

Retornar:

chatbot_response - texto da resposta do modelo (response.content).

file_path (opcional) - caminho do Word gerado quando file_path for informado.

Exceções:

UnsupportedModelException: quando model_name não está na lista suportada.

UnsupportedMidiaType: quando uma entrada MIDIA usa content_type não suportado.

Exception: erros de OCR de imagem ou leitura de arquivos.

Exemplo de uso
script.mvn
messages = [
    {"type": "SYSTEM", "content": "Você é um assistente útil."},
    {"type": "HUMAN", "content": "Explique este processo."}
]
ia.langchain_openai("gpt-4o", messages, $api_key)
prompt.alert($chatbot_response)

ia.openai_gpt

Chama o assistente Marvin usando o cliente OpenAI em Python. Aceita anexos opcionais (documentos e imagens) e exportação opcional para Word.

Parâmetros:

model_name - nome do modelo OpenAI (por exemplo gpt-4o).

api_key - chave de API OpenAI.

instructions - texto de instrução/sistema para o assistente.

content - prompt ou conteúdo principal do usuário.

files (opcional) - lista de caminhos de arquivos; a extensão deve estar no conjunto suportado pela action (PDF, Office, imagens, CSV, JSON, etc.) (padrão=None).

file_name (opcional) - nome do arquivo Word de saída ao gerar documento (padrão=None).

file_path (opcional) - pasta de saída do Word; exportação exige file_path e arquivo em files conforme a implementação (padrão=None).

Retornar:

chatbot_response - resposta do assistente (formato retornado pelo wrapper interno).

file_path (opcional) - caminho completo do Word gerado, quando aplicável.

Exceções:

UnsupportedMidiaType: extensão de arquivo não suportada.

Exception: erros do assistente, processamento de arquivos ou status de erro do assistente.

Exemplo de uso
script.mvn
ia.openai_gpt("gpt-4o", $api_key, "Resuma o relatório", "Por favor, resuma", files=None)
prompt.alert(str($chatbot_response))