Beta · experiência em curso

Descreva a integração. Receba o iFlow.

O IFlow Assistant gera Integration Flows para SAP Integration Suite com um modelo Ollama que corre no seu PC e aprende com os template e as soluções que lhe ensina. Do pedido em linguagem natural ao pacote pronto a implementar, com lint, Security Check e deploy no tenant.

Windows 10/11 de 64 bits · gratuito e open source · atualiza-se sozinho · tudo fica no seu PC

Porque existe

É um projeto um pouco ousado: queria começar a treinar um modelo com o Ollama localmente e ter uma ferramenta que me acelerasse a criação de iFlows com base nos template e nas soluções que lhe ensinei. Não é um produto acabado: é uma experiência que uso de facto no trabalho do dia a dia e que partilho tal como está.

Federico Bellizia (Bais), autor

Na prática, o modelo não é retreinado: "aprende" através de uma knowledge base local (RAG) onde vão parar as suas exportações, os template que classifica e os pacotes gerados que aprova. Cada novo pedido é enriquecido com os fragmentos mais semelhantes e passado a um modelo Ollama no seu PC. Se o resultado for bom, diz isso à aplicação e, a partir daí, ele passa a pesar nas gerações seguintes.

Tudo corre localmente: sem nuvem, sem conta, sem telemetria. É uma beta e tem limites claros, enumerados mais abaixo sem rodeios.

O que faz

Uma ferramenta de secretária para quem constrói iFlows todos os dias: parte da descrição e chega ao tenant.

Da descrição ao pacote pronto a implementar

Descreva o fluxo em linguagem natural e obtenha um .zip que pode importar no Integration Suite. No modo Spec, o modelo produz uma especificação JSON e um builder determinístico monta o XML BPMN2 a partir de blocos validados: correto por construção, não "provavelmente certo".

Conversa por turnos

Afine o fluxo na mesma conversa: "adiciona a nova tentativa", "envia também um e-mail", "separa o mapping num local process". Cada turno volta a gerar o pacote.

Aprende com os seus iFlows (RAG)

Cada exportação que adiciona, à mão ou importada do tenant, é indexada na knowledge base local e orienta as gerações seguintes. O botão "Buono" (bom) adiciona também os pacotes gerados que aprova.

Lint e Security Check

Cada pacote passa por um lint que verifica referências cruzadas, sequenceFlow, processRef e parâmetros {{...}} declarados. O Security Check procura palavras-passe em texto simples e dados pessoais (PII) escritos no código, ocultando sempre o valor encontrado.

Ciclo completo no tenant

Registo no package do Design workspace, deploy, espera pelo estado de runtime e smoke test sobre os últimos Message Processing Logs. Vários perfis de tenant (dev, test, prod) diretamente a partir da interface gráfica.

Explorador e visualizador BPMN

Navegue pelos zip sem os extrair, leia o XML com realce de sintaxe, abra o canvas BPMN com disposição hierárquica e as propriedades de cada passo. Em cada projeto: View, Edit, Lint, Ripacchetta (reempacotar), Deploy.

Template primeiro e perguntas de orientação

Classifique uma fonte da KB como template (por exemplo SuccessFactors ou SFTP): as suas convenções tornam-se restrições explícitas. As "perguntas de orientação" recolhem os requisitos em falta antes de gerar: mapping, volumes, novas tentativas, idempotência, segurança.

Perfis de produto e KB de cliente separadas

Associe a documentação de produto a SuccessFactors, S/4HANA OData, LDAP, Zucchetti ou SOAP. Para cada cliente, mantenha mappings, regras e workflows numa KB separada, que o modelo só utiliza quando seleciona esse cliente e o desbloqueia com a sua palavra-passe.

Documentação funcional e técnica

A partir de um iFlow, gere a documentação em Markdown e em HTML imprimível em PDF: a que se entrega ao cliente e a que serve a quem vai fazer a manutenção.

Como funciona

O modelo escreve apenas a especificação. O XML é construído por código determinístico, por isso um erro do modelo vê-se logo e não chega ao tenant.

  1. 1

    Pedido

    Descreva o fluxo em linguagem natural, com template, perfil de produto e KB de cliente opcionais.

  2. 2

    Knowledge base RAG

    SQLite + nomic-embed-text: os fragmentos mais semelhantes dos seus iFlows entram no contexto.

  3. 3

    Modelo Ollama local

    qwen2.5-coder com um system prompt CPI, a correr no seu PC.

  4. 4

    Spec JSON

    Passos, adapters, parâmetros, local process e tratamento de erros numa estrutura validada.

  5. 5

    Builder determinístico

    Monta o XML BPMN2 a partir de blocos conhecidos: nada de XML "inventado".

  6. 6

    Lint

    Referências cruzadas, scripts presentes, parâmetros declarados, validade do XML.

  7. 7

    Zip

    Pacote importável no Integration Suite, visível no canvas BPMN.

  8. 8

    Tenant

    Registo, deploy, estado de runtime e smoke test sobre os logs.

Instalação em três passos

Só precisa do Windows 10 ou 11 de 64 bits e de algum espaço em disco para o modelo.

  1. Instale o Ollama

    Transfira-o de ollama.com e instale-o. É o motor que executa o modelo localmente.

  2. Execute o IFlowAssistant-Setup.exe

    O instalador copia a aplicação para a sua pasta de utilizador, sem direitos de administrador. Em alternativa, descompacte a versão portátil onde preferir.

  3. Prepare o modelo

    Na aplicação: menu Modello (Modelo) → Prepara o aggiorna il modello Ollama... (preparar ou atualizar o modelo Ollama). Transfere o qwen2.5-coder (7B em CPU, cerca de 5 GB; 14B com GPU NVIDIA de 12 GB, cerca de 9 GB) e o nomic-embed-text e, em seguida, indexa a knowledge base.

Atualiza-se sozinho.

A aplicação consulta as GitHub Releases, transfere o novo instalador, verifica o SHA-256 e executa-o em silêncio. Os seus dados (knowledge base, perfis, iFlows gerados) não são tocados.

Versão portátil: recebe um aviso com a ligação para o novo pacote e decide quando o substituir.

Os seus dados continuam a ser seus

Resposta curta: no seu PC, e em mais lado nenhum.

Modelo local

O modelo corre no Ollama na sua máquina. Os pedidos, os iFlows e a knowledge base não são enviados para nenhum serviço.

Sem telemetria

As únicas ligações externas são para as GitHub Releases, para verificar atualizações, e para o seu tenant, quando é você a pedir.

Palavra-passe mestra

Uma palavra-passe principal cifra as configurações e os perfis locais. Sem ela, os ficheiros ficam ilegíveis.

Segredos no Credential Manager

Os client secret e as palavras-passe dos tenants ficam no Credential Manager do Windows, nunca em ficheiros.

KB de cliente separadas

As fontes de cada cliente ficam excluídas da pesquisa geral e só são passadas ao modelo quando esse cliente está selecionado e desbloqueado com a sua palavra-passe. A palavra-passe permite utilizar a KB, mas não cifra os ficheiros no disco: para os proteger, utilize a cifragem do disco, por exemplo o BitLocker.

Limites conhecidos

Honestidade de produto: é uma beta e convém saber isto antes de transferir.

  • O builder Spec cobre as construções mais comuns

    Início por Timer e HTTPS, Content Modifier, XSLT, Groovy, Process Call e local process lineares, Request-Reply HTTP/ProcessDirect/SuccessFactors, Send Mail e SFTP, um router OK/KO, Exception Subprocess. Splitter/Gather, Data Store ou vários routers recorrem ao modo Markdown: o pacote tem de ser verificado na Web UI antes do deploy.

  • Cliente de tenant validado apenas estruturalmente

    Implementa as OData API públicas do Integration Suite, mas foi testado em poucos tenants. Na primeira ligação use "Test connessione" (testar ligação) e comunique as diferenças.

  • Em CPU demora minutos

    Com o modelo 7B em CPU, uma geração demora alguns minutos. Com uma GPU NVIDIA e o modelo 14B é muito mais rápida e de melhor qualidade.

  • Windows em primeiro lugar

    Em Linux e macOS a aplicação arranca a partir do código-fonte, mas os segredos dos tenants não são guardados: o deploy exige introduzir o segredo em cada sessão. O instalador e a atualização automática só existem para Windows.

Apoie o projeto

O IFlow Assistant é gratuito e vai continuar a sê-lo. Se lhe poupar uma tarde, um café é a forma mais simples de mo dizer e de manter ligada a GPU que experimenta os modelos novos.

Ofereça-me um café no PayPal

Um relatório de problema bem feito no GitHub também vale muito.

Perguntas frequentes

As que chegam com mais frequência.

É preciso uma GPU?

Não. Com um CPU e pelo menos 16 GB de RAM o modelo 7B funciona, mas uma geração demora minutos. Com uma GPU NVIDIA de 12 GB ou mais, o modelo 14B responde em dezenas de segundos e produz specs mais precisas.

Os meus iFlows saem do PC?

Não. A knowledge base é um ficheiro SQLite local, o modelo corre no Ollama na sua máquina e não há telemetria. A aplicação só contacta as GitHub Releases para as atualizações e o seu tenant quando inicia um registo, um deploy ou uma importação.

Posso usar outro modelo?

Sim. O modelo cpi-iflow-builder é construído a partir de um Modelfile incluído no pacote: pode mudar o modelo base (por exemplo, outro coder disponível no Ollama) e voltar a gerá-lo a partir do menu Modello (Modelo) → Ricrea il modello dal Modelfile (ollama create). O system prompt CPI mantém-se.

Como adiciono os meus template?

Adicione as exportações .zip à knowledge base a partir do separador Knowledge base, ou importe-as diretamente do tenant. Depois selecione a fonte e use "Template" para a classificar: a partir daí aparece no menu Template KB da geração e as suas convenções tornam-se restrições explícitas.

O que faz exatamente o deploy?

"Censisci + Deploy" (registar e implementar) carrega o pacote no package do Design workspace do tenant ativo, lança o deploy, espera pelo estado de runtime (STARTED ou ERROR) e depois lê os últimos Message Processing Logs como smoke test. Não mexe noutros artefactos e não apaga nada.

Funciona em Mac ou Linux?

Em parte. O código é Python e tkinter, por isso arranca a partir do código-fonte com os scripts em install/. Faltam, no entanto, o instalador, a atualização automática e a gravação dos segredos dos tenants, que hoje usa o Credential Manager do Windows.

É um produto SAP?

Não. É um projeto independente e open source (licença MIT) nascido para uso pessoal e não é afiliado, patrocinado nem aprovado pela SAP SE. Usa apenas as API públicas documentadas do Integration Suite.