"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Estruturas de código aberto para construção de aplicativos de IA generativos

Estruturas de código aberto para construção de aplicativos de IA generativos

Publicado em 2024-11-08
Navegar:910

Open Source Frameworks for Building Generative AI Applications

Existem muitas ferramentas incríveis que ajudam a construir aplicativos generativos de IA. Mas começar com uma nova ferramenta leva tempo para aprender e praticar.

Por esse motivo, criei um repositório com exemplos de estruturas populares de código aberto para a construção de aplicativos generativos de IA.

Os exemplos também mostram como usar essas estruturas com o Amazon Bedrock.

Você pode encontrar o repositório aqui:

https://github.com/danilop/oss-for-generative-ai

No restante deste artigo, descreverei os frameworks que selecionei, o que está no código de exemplo no repositório e como eles podem ser usados ​​na prática.

Estruturas incluídas

  • LangChain: Uma estrutura para desenvolver aplicativos baseados em modelos de linguagem, apresentando exemplos de:

    • Invocação do modelo básico
    • Encadeamento de solicitações
    • Construindo uma API
    • Criando um cliente
    • Implementando um chatbot
    • Usando agentes Bedrock
  • LangGraph: uma extensão do LangChain para construir aplicativos multiatores com estado com grandes modelos de linguagem (LLMs)

  • Haystack: uma estrutura ponta a ponta para construir sistemas de pesquisa e aplicativos de modelo de linguagem

  • LlamaIndex: Uma estrutura de dados para aplicativos baseados em LLM, com exemplos de:

    • RAG (geração aumentada de recuperação)
    • Construindo um agente
  • DSPy: uma estrutura para resolver tarefas de IA usando grandes modelos de linguagem

  • RAGAS: uma estrutura para avaliar pipelines de geração aumentada de recuperação (RAG)

  • LiteLLM: Uma biblioteca para padronizar o uso de LLMs de diferentes provedores

Visão geral das estruturas

LangChain

Uma estrutura para desenvolver aplicativos baseados em modelos de linguagem.

Principais recursos:

  • Componentes modulares para aplicações com tecnologia LLM
  • Cadeias e agentes para fluxos de trabalho complexos de LLM
  • Sistemas de memória para interações contextuais
  • Integração com diversas fontes de dados e APIs

Casos de uso principais:

  • Construindo sistemas de IA conversacional
  • Criando sistemas de resposta a perguntas específicos de domínio
  • Desenvolvimento de ferramentas de automação baseadas em IA

LangGraph

Uma extensão do LangChain para construir multiatores com estado. aplicações com LLMs

Principais recursos:

  • Gerenciamento de fluxo de trabalho baseado em gráficos
  • Gerenciamento de estado para interações complexas entre agentes
  • Ferramentas para projetar e implementar sistemas multiagentes
  • Fluxos de trabalho cíclicos e ciclos de feedback

Casos de uso principais:

  • Criando sistemas colaborativos de agentes de IA
  • Implementação de fluxos de trabalho de IA complexos e com estado
  • Desenvolvimento de simulações e jogos com tecnologia de IA

Palheiro

Uma estrutura de código aberto para criar aplicativos LLM prontos para produção.

Principais recursos:

  • Sistemas de IA combináveis ​​com pipelines flexíveis
  • Suporte de IA multimodal (texto, imagem, áudio)
  • Pronto para produção com pipelines serializáveis ​​e monitoramento

Casos de uso principais:

  • Construindo pipelines RAG e sistemas de pesquisa
  • Desenvolvimento de IA conversacional e chatbots
  • Geração e resumo de conteúdo
  • Criação de pipelines de agentes com fluxos de trabalho complexos

LhamaIndex

Uma estrutura de dados para construir aplicativos baseados em LLM.

Principais recursos:

  • Ingestão e indexação avançada de dados
  • Processamento de consulta e síntese de resposta
  • Suporte para vários conectores de dados
  • Algoritmos personalizáveis ​​de recuperação e classificação

Casos de uso principais:

  • Criando bases de conhecimento e sistemas de resposta a perguntas
  • Implementando pesquisa semântica em grandes conjuntos de dados
  • Construindo assistentes de IA sensíveis ao contexto

DSPy

Uma estrutura para resolver tarefas de IA por meio de programas de modelos de linguagem declarativos e otimizáveis.

Principais recursos:

  • Modelo de programação declarativa para interações LLM
  • Otimização automática de prompts e parâmetros do LLM
  • Sistema de tipo baseado em assinatura para entradas/saídas LLM
  • Teleprompter (agora otimizador) para melhoria automática de prompt

Casos de uso principais:

  • Desenvolvimento de pipelines de PNL robustos e otimizados
  • Criando sistemas de IA autoaperfeiçoáveis
  • Implementando tarefas de raciocínio complexas com LLMs

RAGAS

Uma estrutura de avaliação para sistemas de geração aumentada de recuperação (RAG).

Principais recursos:

  • Avaliação automatizada de pipelines RAG
  • Múltiplas métricas de avaliação (fidelidade, relevância do contexto, relevância da resposta)
  • Suporte para diferentes tipos de perguntas e conjuntos de dados
  • Integração com estruturas RAG populares

Casos de uso principais:

  • Avaliação comparativa do desempenho do sistema RAG
  • Identificando áreas para melhoria em pipelines RAG
  • Comparando diferentes implementações de RAG

LiteLLM

Uma interface unificada para vários provedores de LLM.

Principais recursos:

  • API padronizada para 100 modelos LLM
  • Backup automático e balanceamento de carga
  • Mecanismos de armazenamento em cache e nova tentativa
  • Acompanhamento de uso e gerenciamento de orçamento

Casos de uso principais:

  • Simplificando o desenvolvimento de aplicativos multi-LLM
  • Implementação de redundância de modelo e estratégias de fallback
  • Gerenciamento do uso do LLM em diferentes provedores

Conclusão

Deixe-me saber se você usou alguma dessas ferramentas. Perdi algo que você gostaria de compartilhar com outras pessoas? Sinta-se à vontade para contribuir com o repositório!

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/aws/open-source-frameworks-for-building-generative-ai-applications-532b?1 Se houver alguma violação, entre em contato com [email protected] para excluir isto
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3