Subprocedimentos permitem dividir procedimentos Fin Procedures complexos em fluxos menores e focados. Eles ajudam a manter seu procedimento principal fácil de seguir, permitindo reutilizar lógica e reduzir duplicação.
Você pode pensar em subprocedimentos como funções auxiliares no código: Fin os executa de cima para baixo, depois retorna ao procedimento pai.
Principais benefícios e casos de uso
Melhore a legibilidade ocultando lógica detalhada atrás de etapas claras e nomeadas.
Reutilize lógica em vários pontos do mesmo procedimento.
Simplifique a manutenção editando a lógica compartilhada em um único lugar.
Aumente a confiabilidade isolando etapas complexas ou propensas a falhas.
Como subprocedimentos funcionam no Fin
Subprocedimentos se comportam como uma lista aninhada de etapas dentro de um procedimento.
Fin executa o subprocedimento de cima para baixo.
Após a conclusão, Fin retorna para a próxima etapa no procedimento pai.
Você pode sair antecipadamente usando
@End sub-procedure.Subprocedimentos podem ser aninhados dentro de outros subprocedimentos.
Contexto compartilhado e isolamento
Contexto compartilhado: Saídas do conector, atributos e respostas do usuário são visíveis entre o procedimento pai e seus subprocedimentos.
Isolamento: Dados não persistem fora do procedimento pai (por exemplo, ao usar
/Switch procedure).
Nota: Subprocedimentos são limitados a um único procedimento pai e não podem ser reutilizados em procedimentos diferentes.
Como criar e executar um subprocedimento
Criar um subprocedimento
Abra ou crie um Fin Procedure em Fin AI Agent > Train > Procedures.
Navegue até o menu à esquerda.
Clique em + Novo subprocedimento.
Você será redirecionado para um novo editor de subprocedimento.
Digite suas etapas e dê um nome claro ao subprocedimento.
Você pode excluir ou reordenar um subprocedimento passando o mouse sobre ele no mesmo menu. Para renomeá-lo, clique no subprocedimento e edite o título no topo do editor de subprocedimento.
Executar um subprocedimento
Abra o procedimento pai em Fin AI Agent > Train > Procedures.
Digite @ para abrir o menu de comandos.
Selecione Executar subprocedimento.
Escolha o subprocedimento que deseja executar.
Fin executará o subprocedimento e então continuará com as etapas restantes no fluxo pai.
Dica: Use @End sub-procedure para retornar antecipadamente, similar a um retorno de função no código.
Melhores práticas para usar subprocedimentos
Use subprocedimentos para lógica significativa
Subprocedimentos são mais eficazes quando encapsulam lógica clara e reutilizável.
Uso eficaz:
Ramos complexos que de outra forma sobrecarregariam uma condição.
Lógica repetida usada em vários pontos dentro de um procedimento.
Fluxos de escalonamento ou transferência que precisam de comportamento consistente.
Etapas propensas a falhas que se beneficiam de isolamento e testes.
Uso menos eficaz:
Ações únicas e triviais que não precisam de reutilização.
Lógica que se encaixa perfeitamente dentro de um
@Instructionou@Condition.Fragmentação excessiva que força troca constante de contexto.
Mantenha cadeias de subprocedimentos rasas
Evite cadeias profundamente aninhadas como subprocedimento → subprocedimento → subprocedimento sempre que possível.
Nota: Aninhamento profundo não impacta o desempenho do Fin, mas torna os procedimentos mais difíceis de ler, depurar e manter.
Nomeie subprocedimentos claramente
Use nomes descritivos e orientados à ação que expliquem o que o subprocedimento faz.
Bons exemplos:
CollectPaymentInfo
VerifyUserIdentity
ResolveDeliveryIssue
Evite nomes como:
Step4
PartB
HandleRefundSectionA
Nomes claros tornam o fluxo geral mais fácil de escanear e entender.
Exemplos de casos de uso
Abstraindo lógica complexa do fluxo principal
Subprocedimentos podem ocultar verificações ou validações detalhadas para que o procedimento principal permaneça legível. Por exemplo, verificar se o segurador do cliente é suportado pode ficar em um subprocedimento dedicado em vez de sobrecarregar a lógica principal.
Reutilizando lógica compartilhada de transferência
Se várias partes de um procedimento exigem o mesmo processo de escalonamento ou transferência, colocar essa lógica em um subprocedimento garante consistência. Quando atualizações são necessárias, você só precisa alterá-la uma vez.
Perguntas frequentes
Subprocedimentos podem ser reutilizados em diferentes procedimentos?
Subprocedimentos podem ser reutilizados em diferentes procedimentos?
Não, subprocedimentos são reutilizáveis apenas dentro do procedimento pai onde são definidos.
Subprocedimentos podem chamar outros subprocedimentos?
Subprocedimentos podem chamar outros subprocedimentos?
Sim, você pode executar subprocedimentos dentro de outros subprocedimentos, mas evite aninhamento profundo quando possível.
Dados persistem após o término de um subprocedimento?
Dados persistem após o término de um subprocedimento?
Sim, dentro do mesmo procedimento pai. Dados não persistem entre procedimentos diferentes.

