Skip to content

AI & LLM

AI model integration, text generation, embeddings, and autonomous agents.

18 modules

ModuleDescription
Agente AutonomoAgente de IA autodirigido com memoria e comportamento orientado a objetivos
Agente de CadeiaCadeia de processamento de IA sequencial com multiplos passos
Agente de Uso de FerramentasAgente de IA que pode chamar ferramentas/funções
Embeddings de TextoGere embeddings vetoriais de texto usando modelos de IA
Extração de IAExtraia dados estruturados de texto usando IA
Chat Ollama LocalConversar com LLM local via Ollama (completamente offline)
Memoria de IAMemoria de conversa para Agente de IA
Memoria de EntidadesExtrair e rastrear entidades (pessoas, lugares, conceitos) de conversas
Memoria RedisMemoria de conversa persistente usando armazenamento Redis
Memoria VetorialMemoria semantica usando embeddings vetoriais para recuperacao de contexto relevante
Modelo de IAConfiguracao de modelo LLM para Agente de IA
AI ToolExpose a module as a tool for AI Agent
Análise de VisãoAnalise imagens usando modelos de visão de IA
Chat ClaudeEnviar mensagem de chat para Anthropic Claude AI e obter resposta
Chat Google GeminiEnviar mensagem de chat para Google Gemini AI e obter resposta
Chat OpenAIEnviar mensagem de chat para modelos OpenAI GPT
Geracao de Imagem DALL-EGerar imagens usando DALL-E
Agente de IAAgente de IA autonomo com conexoes multi-porta (modelo, memoria, ferramentas)

Modules

Agente Autonomo

agent.autonomous

Agente de IA autodirigido com memoria e comportamento orientado a objetivos

Parameters:

NameTypeRequiredDefaultDescription
goalstringYes-O objetivo para o agente alcancar
contextstringNo-O objetivo para o agente alcancar
max_iterationsnumberNo5Contexto adicional ou restricoes
llm_providerselect (openai, ollama)NoopenaiMaximo de passos de raciocinio
modelstringNogpt-4-turbo-previewNome do modelo (ex: gpt-4, llama2, mistral)
ollama_urlstringNohttp://localhost:11434Nome do modelo (ex: gpt-4, llama2, mistral)
temperaturenumberNo0.7URL do servidor Ollama (apenas para provedor ollama)

Output:

FieldTypeDescription
resultstringNivel de criatividade (0-2)
thoughtsarrayO resultado da operacao
iterationsnumberO resultado da operacao
goal_achievedbooleanPassos de raciocinio do agente

Example: Research task

yaml
goal: Research the latest trends in AI and summarize the top 3
max_iterations: 5
model: gpt-4

Example: Problem solving

yaml
goal: Find the best approach to optimize database queries
context: PostgreSQL database with 10M records
max_iterations: 10

Agente de Cadeia

agent.chain

Cadeia de processamento de IA sequencial com multiplos passos

Parameters:

NameTypeRequiredDefaultDescription
inputstringYes-Entrada inicial para a cadeia
chain_stepsarrayYes-Entrada inicial para a cadeia
llm_providerselect (openai, ollama)NoopenaiArray de passos de processamento (cada um e um template de prompt)
modelstringNogpt-4-turbo-previewNome do modelo (ex: gpt-4, llama2, mistral)
ollama_urlstringNohttp://localhost:11434Nome do modelo (ex: gpt-4, llama2, mistral)
temperaturenumberNo0.7URL do servidor Ollama (apenas para provedor ollama)

Output:

FieldTypeDescription
resultstringNivel de criatividade (0-2)
intermediate_resultsarrayO resultado da operacao
steps_completednumberO resultado da operacao

Example: Content pipeline

yaml
input: AI and machine learning trends
chain_steps: ["Generate 5 blog post ideas about: {input}", "Take the first idea and write a detailed outline: {previous}", "Write an introduction paragraph based on: {previous}"]
model: gpt-4

Example: Data analysis chain

yaml
input: User behavior data shows 60% bounce rate
chain_steps: ["Analyze what might cause this issue: {input}", "Suggest 3 solutions based on: {previous}", "Create an action plan from: {previous}"]

Agente de Uso de Ferramentas

agent.tool_use

Agente de IA que pode chamar ferramentas/funções

Parameters:

NameTypeRequiredDefaultDescription
promptstringYes-O objetivo ou tarefa para o agente
toolsarrayYes-Lista de definições de ferramentas [{nome, descrição, parâmetros}]
providerselect (openai, anthropic)NoopenaiProvedor LLM para o agente
modelstringNogpt-4oModelo a ser usado
api_keystringNo-Chave de API (usa variável de ambiente como padrão)
max_iterationsnumberNo10Número máximo de rodadas de chamadas de ferramentas
system_promptstringNo-Prompt do sistema opcional para guiar o agente

Output:

FieldTypeDescription
resultstringResposta final do agente
tool_callsarrayTodas as chamadas de ferramentas feitas durante a execução
iterationsnumberNúmero de iterações concluídas
modelstringModelo usado

Example: File Processing Agent

yaml
prompt: Read the config file and update the version number
tools: [{"name": "read_file", "description": "Read contents of a file", "parameters": {"type": "object", "properties": {"path": {"type": "string", "description": "File path"}}, "required": ["path"]}}, {"name": "write_file", "description": "Write contents to a file", "parameters": {"type": "object", "properties": {"path": {"type": "string", "description": "File path"}, "content": {"type": "string", "description": "File content"}}, "required": ["path", "content"]}}]
provider: openai
model: gpt-4o
max_iterations: 5

Embeddings de Texto

ai.embed

Gere embeddings vetoriais de texto usando modelos de IA

Parameters:

NameTypeRequiredDefaultDescription
textstringYes-Texto para embutir
providerselect (openai, local)NoopenaiProvedor de IA para embeddings
modelstringNotext-embedding-3-smallModelo de embedding a ser usado
api_keystringNo-Chave de API (usa variável de ambiente como padrão)
dimensionsnumberNo-Dimensões de embedding (para modelos que suportam)

Output:

FieldTypeDescription
embeddingsarrayArray de embedding vetorial
modelstringModelo usado para embedding
dimensionsnumberNúmero de dimensões no vetor de embedding
token_countnumberNúmero de tokens processados

Example: Single Text Embedding

yaml
text: The quick brown fox jumps over the lazy dog
provider: openai
model: text-embedding-3-small

Example: Reduced Dimensions

yaml
text: Semantic search query
provider: openai
model: text-embedding-3-small
dimensions: 256

Extração de IA

ai.extract

Extraia dados estruturados de texto usando IA

Parameters:

NameTypeRequiredDefaultDescription
textstringYes-Texto do qual extrair dados
schemaobjectYes-Esquema JSON definindo os campos a serem extraídos
instructionsstringNo-Instruções adicionais de extração
providerselect (openai, anthropic)NoopenaiProvedor de IA a ser usado
modelstringNogpt-4o-miniModelo a ser usado para extração
api_keystringNo-Chave de API (usa variável de ambiente como padrão)
temperaturenumberNo0Temperatura de amostragem (0-2)

Output:

FieldTypeDescription
extractedobjectDados estruturados extraídos
modelstringModelo usado para extração
raw_responsestringResposta bruta do modelo

Example: Extract Contact Info

yaml
text: John Smith is a senior engineer at Acme Corp. Email: john@acme.com
schema: {"type": "object", "properties": {"name": {"type": "string"}, "title": {"type": "string"}, "company": {"type": "string"}, "email": {"type": "string"}}}
provider: openai
model: gpt-4o-mini

Example: Extract Invoice Data

yaml
text: Invoice #1234 from Acme Corp. Total: $500.00. Due: 2024-03-01
schema: {"type": "object", "properties": {"invoice_number": {"type": "string"}, "vendor": {"type": "string"}, "total": {"type": "number"}, "due_date": {"type": "string"}}}
instructions: Extract all invoice fields. Parse amounts as numbers.

Chat Ollama Local

ai.local_ollama.chat

Conversar com LLM local via Ollama (completamente offline)

Parameters:

NameTypeRequiredDefaultDescription
promptstringYes-A mensagem para enviar ao LLM local
modelselect (llama2, llama2:13b, llama2:70b, mistral, mixtral, codellama, codellama:13b, phi, neural-chat, starling-lm)Nollama2A mensagem para enviar ao LLM local
temperaturenumberNo0.7Temperatura de amostragem (0-2)
system_messagestringNo-Mensagem de role do sistema (opcional)
ollama_urlstringNohttp://localhost:11434Mensagem de role do sistema (opcional)
max_tokensnumberNo-URL do servidor Ollama

Output:

FieldTypeDescription
responsestringMaximo de tokens na resposta (opcional, depende do modelo)
modelstringResposta da operacao
contextarrayResposta da operacao
total_durationnumberNome ou identificador do modelo
load_durationnumberContexto da conversa para requisicoes de acompanhamento
prompt_eval_countnumberDuracao total do processamento
eval_countnumberDuracao do carregamento do modelo

Example: Simple local chat

yaml
prompt: Explain quantum computing in 3 sentences
model: llama2

Example: Code generation with local model

yaml
prompt: Write a Python function to calculate fibonacci numbers
model: codellama
temperature: 0.2
system_message: You are a Python programming expert. Write clean, efficient code.

Example: Local reasoning task

yaml
prompt: What are the pros and cons of microservices architecture?
model: mistral
temperature: 0.7

Memoria de IA

ai.memory

Memoria de conversa para Agente de IA

Parameters:

NameTypeRequiredDefaultDescription
memory_typeselect (buffer, window, summary)YesbufferTipo de armazenamento de memoria
window_sizenumberNo10Numero de mensagens recentes para manter (para memoria de janela)
session_idstringNo-Identificador unico para esta sessao de conversa
initial_messagesarrayNo[]Historico de conversa pre-carregado

Output:

FieldTypeDescription
memory_typestringHistorico de conversa pre-carregado
session_idstringHistorico de conversa pre-carregado
messagesarrayTipo de memoria
configobjectIdentificador da sessao

Example: Simple Buffer Memory

yaml
memory_type: buffer

Example: Window Memory (last 5 messages)

yaml
memory_type: window
window_size: 5

Memoria de Entidades

ai.memory.entity

Extrair e rastrear entidades (pessoas, lugares, conceitos) de conversas

Parameters:

NameTypeRequiredDefaultDescription
entity_typesmultiselectNo['person', 'organization', 'location']Types of entities to extract and track
extraction_modelselect (llm, spacy, regex)YesllmModel for entity extraction
session_idstringNo-Unique identifier for this memory session
track_relationshipsbooleanNoTrueTrack relationships between entities
max_entitiesnumberNo100Maximum number of entities to remember

Output:

FieldTypeDescription
memory_typestringNumero maximo de entidades para lembrar
session_idstringNumero maximo de entidades para lembrar
entitiesobjectTipo de memoria (entidade)
relationshipsarrayIdentificador da sessao
configobjectEntidades rastreadas por tipo

Example: People & Organizations

yaml
entity_types: ["person", "organization"]
extraction_model: llm

Example: Full Entity Tracking

yaml
entity_types: ["person", "organization", "location", "concept"]
track_relationships: true
max_entities: 200

Memoria Redis

ai.memory.redis

Memoria de conversa persistente usando armazenamento Redis

Parameters:

NameTypeRequiredDefaultDescription
redis_urlstringYesredis://localhost:6379Redis connection URL
key_prefixstringNoflyto:memory:Prefix for all Redis keys
session_idstringYes-Unique identifier for this memory session
ttl_secondsnumberNo86400Time-to-live for memory entries (0 = no expiry)
max_messagesnumberNo100Maximum messages to store per session
load_on_startbooleanNoTrueLoad existing messages from Redis on initialization

Output:

FieldTypeDescription
memory_typestringCarregar mensagens existentes do Redis na inicializacao
session_idstringCarregar mensagens existentes do Redis na inicializacao
messagesarrayTipo de memoria (redis)
connectedbooleanIdentificador da sessao
configobjectHistorico de mensagens carregado

Example: Local Redis

yaml
redis_url: redis://localhost:6379
session_id: my-session
ttl_seconds: 3600

Example: Cloud Redis with Auth

yaml
redis_url: redis://:password@redis-cloud.example.com:6379
session_id: user-session
ttl_seconds: 86400
max_messages: 500

Memoria Vetorial

ai.memory.vector

Memoria semantica usando embeddings vetoriais para recuperacao de contexto relevante

Parameters:

NameTypeRequiredDefaultDescription
embedding_modelselect (text-embedding-3-small, text-embedding-3-large, text-embedding-ada-002, local)Yestext-embedding-3-smallModel to use for generating embeddings
top_knumberNo5Number of most relevant memories to retrieve
similarity_thresholdnumberNo0.7Minimum similarity score (0-1) for retrieval
session_idstringNo-Unique identifier for this memory session
include_metadatabooleanNoTrueInclude timestamp and other metadata with memories

Output:

FieldTypeDescription
memory_typestringIncluir timestamp e outros metadados com memorias
session_idstringIncluir timestamp e outros metadados com memorias
embedding_modelstringTipo de memoria (vetorial)
configobjectIdentificador da sessao

Example: Default Vector Memory

yaml
embedding_model: text-embedding-3-small
top_k: 5

Example: High Precision Memory

yaml
embedding_model: text-embedding-3-large
top_k: 10
similarity_threshold: 0.85

Modelo de IA

ai.model

Configuracao de modelo LLM para Agente de IA

Parameters:

NameTypeRequiredDefaultDescription
providerselect (openai, anthropic, ollama)NoopenaiAI model provider
modelstringNogpt-4oSpecific model to use
temperaturenumberNo0.7Creativity level (0=deterministic, 1=creative)
api_keystringNo-API key (defaults to provider env var)
base_urlstringNo-Custom API base URL (for Ollama or proxies)
max_tokensnumberNo4096Maximo de tokens na resposta

Output:

FieldTypeDescription
providerstringMaximo de tokens na resposta
modelstringNome do provedor LLM
configobjectNome do provedor LLM

Example: OpenAI GPT-4

yaml
provider: openai
model: gpt-4o
temperature: 0.7

Example: Anthropic Claude

yaml
provider: anthropic
model: claude-3-5-sonnet-20241022
temperature: 0.5

AI Tool

ai.tool

Expose a module as a tool for AI Agent

Parameters:

NameTypeRequiredDefaultDescription
module_idstringYes-Module ID to expose as tool (e.g. http.request, data.json_parse)
tool_descriptionstringNo-Custom description for the agent (overrides module default)

Output:

FieldTypeDescription
module_idstringModule ID exposed as tool

Example: HTTP Request Tool

yaml
module_id: http.request

Example: JSON Parse Tool

yaml
module_id: data.json_parse

Análise de Visão

ai.vision.analyze

Analise imagens usando modelos de visão de IA

Parameters:

NameTypeRequiredDefaultDescription
image_pathstringNo-Caminho local para o arquivo de imagem
image_urlstringNo-URL da imagem a ser analisada
promptstringNoDescribe this image in detailO que analisar ou perguntar sobre a imagem
providerselect (openai, anthropic)NoopenaiProvedor de IA para análise de visão
modelstringNogpt-4oModelo de visão a ser usado
api_keystringNo-Chave de API (usa variável de ambiente como padrão)
max_tokensnumberNo1000Máximo de tokens na resposta
detailselect (low, high, auto)NoautoNível de detalhe da imagem (baixo/alto/auto)

Output:

FieldTypeDescription
analysisstringAnálise de IA da imagem
modelstringModelo usado para análise
providerstringProvedor usado para análise
tokens_usednumberNúmero de tokens usados

Example: Analyze Screenshot

yaml
image_path: /tmp/screenshot.png
prompt: Describe what you see in this UI screenshot
provider: openai
model: gpt-4o

Example: Analyze from URL

yaml
image_url: https://example.com/photo.jpg
prompt: What objects are in this image?
provider: anthropic
model: claude-sonnet-4-20250514

Chat Claude

api.anthropic.chat

Enviar mensagem de chat para Anthropic Claude AI e obter resposta

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chave API Anthropic (padrao para env.ANTHROPIC_API_KEY)
modelstringNoclaude-3-5-sonnet-20241022Modelo Claude a usar
messagesarrayYes-Array de objetos de mensagem com role e conteudo
max_tokensnumberNo1024Conteudo retornado pela operacao
temperaturenumberNo1.0Temperatura de amostragem (0-1). Valores mais altos tornam a saida mais aleatoria
systemstringNo-Prompt do sistema para guiar comportamento do Claude

Output:

FieldTypeDescription
contentstringPrompt do sistema para guiar comportamento do Claude
modelstringTexto de resposta do Claude
stop_reasonstringModelo usado para resposta
usageobjectPor que o modelo parou de gerar (end_turn, max_tokens, etc)

Example: Simple question

yaml
messages: [{"role": "user", "content": "What is the capital of France?"}]
max_tokens: 100

Example: Text summarization

yaml
system: You are a helpful assistant that summarizes text concisely.
messages: [{"role": "user", "content": "Summarize this article: ${article_text}"}]
max_tokens: 500

Chat Google Gemini

api.google_gemini.chat

Enviar mensagem de chat para Google Gemini AI e obter resposta

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chave API Google AI (padrao para env.GOOGLE_AI_API_KEY)
modelstringNogemini-1.5-proModelo Gemini a usar
promptstringYes-O prompt de texto para enviar ao Gemini
temperaturenumberNo1.0Controla aleatoriedade (0-2). Valores mais altos tornam a saida mais aleatoria
max_output_tokensnumberNo2048Numero maximo de tokens na resposta

Output:

FieldTypeDescription
textstringGenerated text response from Gemini
modelstringModel used for generation
candidatesarrayAll candidate responses

Example: Simple question

yaml
prompt: Explain quantum computing in simple terms

Example: Content generation

yaml
prompt: Write a professional email about ${topic}
temperature: 0.7
max_output_tokens: 500

Chat OpenAI

api.openai.chat

Enviar mensagem de chat para modelos OpenAI GPT

Parameters:

NameTypeRequiredDefaultDescription
promptstringYes-A mensagem para enviar ao GPT
modelselect (gpt-4-turbo-preview, gpt-4, gpt-3.5-turbo)Nogpt-4-turbo-previewA mensagem para enviar ao GPT
temperaturenumberNo0.7Temperatura de amostragem (0-2)
max_tokensnumberNo1000Temperatura de amostragem (0-2)
system_messagestringNo-Maximo de tokens na resposta

Output:

FieldTypeDescription
responsestringMensagem de role do sistema (opcional)
modelstringResposta da operacao
usageobjectResposta da operacao

Example: Simple chat

yaml
prompt: Explain quantum computing in 3 sentences
model: gpt-3.5-turbo

Example: Code generation

yaml
prompt: Write a Python function to calculate fibonacci numbers
model: gpt-4
temperature: 0.2
system_message: You are a Python programming expert

Geracao de Imagem DALL-E

api.openai.image

Gerar imagens usando DALL-E

Parameters:

NameTypeRequiredDefaultDescription
promptstringYes-Descricao da imagem a gerar
sizeselect (256x256, 512x512, 1024x1024, 1792x1024, 1024x1792)No1024x1024Descricao da imagem a gerar
modelselect (dall-e-3, dall-e-2)Nodall-e-3Versao do modelo DALL-E
qualityselect (standard, hd)NostandardQualidade da imagem (apenas DALL-E 3)
nnumberNo1Numero de imagens para gerar (1-10)

Output:

FieldTypeDescription
imagesarrayList of generated images
modelstringModel name or identifier

Example: Generate artwork

yaml
prompt: A serene mountain landscape at sunset, digital art
size: 1024x1024
model: dall-e-3
quality: hd

Example: Create logo

yaml
prompt: Modern tech startup logo with blue and green colors
size: 512x512
model: dall-e-2
n: 3

Agente de IA

llm.agent

Agente de IA autonomo com conexoes multi-porta (modelo, memoria, ferramentas)

Parameters:

NameTypeRequiredDefaultDescription
prompt_sourceselect (manual, auto)NomanualDe onde obter o prompt da tarefa
taskstringNo-A tarefa para o agente completar. Use {{input}} para referenciar dados upstream.
prompt_pathstringNo{<!-- -->{input}<!-- -->}Caminho para extrair prompt da entrada (ex: {{input.message}})
join_strategyselect (first, newline, separator, json)NofirstComo lidar com entradas de array
join_separatorstringNo`

| Separador para juntar itens de array | |max_input_size| number | No |10000| Maximo de caracteres para prompt (previne overflow) | |system_prompt| string | No |You are a helpful AI agent. Use the available tools to complete the task. Think step by step.| Instrucoes para o comportamento do agente | |tools| array | No |[]| Lista de IDs de modulos (alternativa a conectar nos de ferramentas) | |context| object | No |{}| Lista de IDs de modulos (alternativa a conectar nos de ferramentas) | |max_iterations| number | No |10| Dados de contexto adicionais para o agente | |provider | select (openai, anthropic, ollama) | No | openai| AI model provider | |model| string | No |gpt-4o| Specific model to use | |temperature| number | No |0.3| Creativity level (0=deterministic, 1=creative) | |api_key| string | No | - | API key (defaults to provider env var) | |base_url` | string | No | - | Custom API base URL (for Ollama or proxies) |

Output:

FieldTypeDescription
okbooleanSe o agente completou com sucesso
resultstringSe o agente completou com sucesso
stepsarraySe o agente completou com sucesso
tool_callsnumberO resultado final do agente
tokens_usednumberLista de passos que o agente executou

Example: Web Research Agent

yaml
task: Search for the latest news about AI and summarize the top 3 stories
tools: ["http.request", "data.json_parse"]
model: gpt-4o

Example: Data Processing Agent

yaml
task: Read the CSV file, filter rows where status is "active", and count them
tools: ["file.read", "data.csv_parse", "array.filter"]
model: gpt-4o

Released under the Apache 2.0 License.