Gerando um Fluxo de Trabalho Completo de Baixo Código por meio da Decomposição de Tarefas e RAG
Generating a Low-code Complete Workflow via Task Decomposition and RAG
November 29, 2024
Autores: Orlando Marquez Ayala, Patrice Béchard
cs.AI
Resumo
As tecnologias de IA estão avançando rapidamente da pesquisa para a produção. Com a popularidade dos Modelos Fundamentais (MFs) que geram texto, imagens e vídeo, os sistemas baseados em IA estão aumentando sua complexidade. Comparados aos softwares baseados em IA tradicionais, os sistemas que empregam MFs, ou sistemas baseados em IA gerados (GenAI), são mais difíceis de projetar devido à sua escala e versatilidade. Isso torna necessário documentar as melhores práticas, conhecidas como padrões de design em engenharia de software, que podem ser usados em aplicações GenAI. Nossa primeira contribuição é formalizar duas técnicas, Decomposição de Tarefas e Geração com Recuperação Aprimorada (RAG), como padrões de design para sistemas baseados em GenAI. Discutimos suas compensações em termos de atributos de qualidade de software e comentamos sobre abordagens alternativas. Recomendamos aos praticantes de IA considerar essas técnicas não apenas de uma perspectiva científica, mas também do ponto de vista das propriedades de engenharia desejadas, como flexibilidade, manutenibilidade, segurança e proteção. Como segunda contribuição, descrevemos nossa experiência na indústria aplicando a Decomposição de Tarefas e RAG para construir uma aplicação GenAI do mundo real complexa para usuários corporativos: Geração de Fluxo de Trabalho. A tarefa de gerar fluxos de trabalho envolve a criação de um plano específico usando dados do ambiente do sistema, tomando como entrada um requisito do usuário. Como esses dois padrões afetam todo o ciclo de desenvolvimento de IA, explicamos como eles impactaram a criação do conjunto de dados, treinamento do modelo, avaliação do modelo e fases de implantação.
English
AI technologies are moving rapidly from research to production. With the
popularity of Foundation Models (FMs) that generate text, images, and video,
AI-based systems are increasing their complexity. Compared to traditional
AI-based software, systems employing FMs, or GenAI-based systems, are more
difficult to design due to their scale and versatility. This makes it necessary
to document best practices, known as design patterns in software engineering,
that can be used across GenAI applications. Our first contribution is to
formalize two techniques, Task Decomposition and Retrieval-Augmented Generation
(RAG), as design patterns for GenAI-based systems. We discuss their trade-offs
in terms of software quality attributes and comment on alternative approaches.
We recommend to AI practitioners to consider these techniques not only from a
scientific perspective but also from the standpoint of desired engineering
properties such as flexibility, maintainability, safety, and security. As a
second contribution, we describe our industry experience applying Task
Decomposition and RAG to build a complex real-world GenAI application for
enterprise users: Workflow Generation. The task of generating workflows entails
generating a specific plan using data from the system environment, taking as
input a user requirement. As these two patterns affect the entire AI
development cycle, we explain how they impacted the dataset creation, model
training, model evaluation, and deployment phases.Summary
AI-Generated Summary