"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Frameworks Open Source pour la création d'applications d'IA générative

Frameworks Open Source pour la création d'applications d'IA générative

Publié le 2024-11-09
Parcourir:120

Open Source Frameworks for Building Generative AI Applications

Il existe de nombreux outils étonnants qui aident à créer des applications d'IA génératives. Mais commencer avec un nouvel outil prend du temps à apprendre et à pratiquer.

Pour cette raison, j'ai créé un référentiel avec des exemples de frameworks open source populaires pour créer des applications d'IA générative.

Les exemples montrent également comment utiliser ces frameworks avec Amazon Bedrock.

Vous pouvez trouver le référentiel ici :

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

Dans le reste de cet article, je décrirai les frameworks que j'ai sélectionnés, le contenu de l'exemple de code dans le référentiel et comment ceux-ci peuvent être utilisés dans la pratique.

Cadres inclus

  • LangChain : un cadre pour développer des applications alimentées par des modèles de langage, avec des exemples de :

    • Invocation du modèle de base
    • Chaînage des invites
    • Créer une API
    • Créer un client
    • Mise en place d'un chatbot
    • Utilisation d'agents de base
  • LangGraph : une extension de LangChain pour créer des applications multi-acteurs avec état avec de grands modèles de langage (LLM)

  • Haystack : un cadre de bout en bout pour créer des systèmes de recherche et des applications de modèle de langage

  • LlamaIndex : un cadre de données pour les applications basées sur LLM, avec des exemples de :

    • RAG (génération augmentée par récupération)
    • Créer un agent
  • DSpy : un cadre pour résoudre des tâches d'IA à l'aide de grands modèles de langage

  • RAGAS : Un cadre pour évaluer les pipelines de génération augmentée de récupération (RAG)

  • LiteLLM : Une bibliothèque pour standardiser l'utilisation des LLM de différents fournisseurs

Présentation des cadres

LangChaîne

Un framework pour développer des applications alimentées par des modèles de langage.

Caractéristiques principales :

  • Composants modulaires pour les applications basées sur LLM
  • Chaînes et agents pour les flux de travail LLM complexes
  • Systèmes de mémoire pour les interactions contextuelles
  • Intégration avec diverses sources de données et API

Cas d'utilisation principaux :

  • Créer des systèmes d'IA conversationnelle
  • Création de systèmes de questions-réponses spécifiques à un domaine
  • Développement d'outils d'automatisation basés sur l'IA

LangGraph

Une extension de LangChain pour la construction multi-acteurs avec état. candidatures avec LLM

Caractéristiques principales :

  • Gestion des flux de travail basée sur des graphiques
  • Gestion des états pour les interactions d'agents complexes
  • Outils de conception et de mise en œuvre de systèmes multi-agents
  • Flux de travail cycliques et boucles de rétroaction

Cas d'utilisation principaux :

  • Création de systèmes d'agents d'IA collaboratifs
  • Mise en œuvre de workflows d'IA complexes et dynamiques
  • Développement de simulations et de jeux basés sur l'IA

Meule de foin

Un framework open source pour créer des applications LLM prêtes pour la production.

Caractéristiques principales :

  • Systèmes d'IA composables avec pipelines flexibles
  • Prise en charge de l'IA multimodale (texte, image, audio)
  • Prêt pour la production avec des pipelines et une surveillance sérialisables

Cas d'utilisation principaux :

  • Création de pipelines et de systèmes de recherche RAG
  • Développer l'IA conversationnelle et les chatbots
  • Génération et synthèse de contenu
  • Création de pipelines agents avec des workflows complexes

LamaIndex

Un cadre de données pour créer des applications basées sur LLM.

Caractéristiques principales :

  • Ingestion et indexation avancées des données
  • Traitement des requêtes et synthèse des réponses
  • Prise en charge de divers connecteurs de données
  • Algorithmes de récupération et de classement personnalisables

Cas d'utilisation principaux :

  • Création de bases de connaissances et de systèmes de questions-réponses
  • Mise en œuvre de la recherche sémantique sur de grands ensembles de données
  • Créer des assistants d'IA contextuels

DSpy

Un cadre pour résoudre des tâches d'IA grâce à des programmes de modèles de langage déclaratifs et optimisables.

Caractéristiques principales :

  • Modèle de programmation déclaratif pour les interactions LLM
  • Optimisation automatique des invites et des paramètres LLM
  • Système de type basé sur la signature pour les entrées/sorties LLM
  • Téléprompteur (maintenant optimiseur) pour une amélioration automatique des invites

Cas d'utilisation principaux :

  • Développer des pipelines NLP robustes et optimisés
  • Créer des systèmes d'IA auto-améliorés
  • Mise en œuvre de tâches de raisonnement complexes avec les LLM

RAGAS

Un cadre d'évaluation pour les systèmes de génération augmentée de récupération (RAG).

Caractéristiques principales :

  • Évaluation automatisée des pipelines RAG
  • Mesures d'évaluation multiples (fidélité, pertinence du contexte, pertinence des réponses)
  • Prise en charge de différents types de questions et d'ensembles de données
  • Intégration avec les frameworks RAG populaires

Cas d'utilisation principaux :

  • Analyse comparative des performances du système RAG
  • Identifier les domaines à améliorer dans les pipelines RAG
  • Comparaison de différentes implémentations RAG

LiteLLM

Une interface unifiée pour plusieurs fournisseurs LLM.

Caractéristiques principales :

  • API standardisée pour 100 modèles LLM
  • Repli automatique et équilibrage de charge
  • Mécanismes de mise en cache et de nouvelle tentative
  • Suivi des utilisations et gestion du budget

Cas d'utilisation principaux :

  • Simplification du développement d'applications multi-LLM
  • Mise en œuvre de stratégies de redondance et de repli des modèles
  • Gérer l'utilisation du LLM entre différents fournisseurs

Conclusion

Faites-moi savoir si vous avez utilisé l'un de ces outils. Ai-je raté quelque chose que vous aimeriez partager avec les autres ? N'hésitez pas à contribuer au référentiel !

Déclaration de sortie Cet article est reproduit à l'adresse : https://dev.to/aws/open-source-frameworks-for-building-generative-ai-applications-532b?1 En cas de violation, veuillez contacter [email protected] pour supprimer il
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3