6 points par xguru 2023-07-09 | 3 commentaires | Partager sur WhatsApp
  • Rempli de code wrapper inutile
    • Embeddings n’est qu’un wrapper de SentenceTransformer qui ne fait rien
    • Chroma n’est aussi qu’un simple wrapper de ChromaDB
    • Rempli de fonctions « helper » qui ne font qu’appeler de simples fonctions Python
  • La documentation aussi est presque inutile
  • Cela ressemble simplement à un projet de débutant surfant sur la vague du moment

Ce que GN⁺ a résumé

  • LangChain : une technologie qui permet de remplacer facilement dans un programme les modèles de langage, les vector stores et les séparateurs de texte
  • Vise à abstraire les composants pour gagner du temps et rendre le code plus flexible
  • Certains utilisateurs trouvent que LangChain est mal conçu et source de confusion
  • La documentation est insuffisante et la base de code contient beaucoup de fonctions inutiles
  • Les utilisateurs ont du mal à remplacer les composants et doivent parfois réécrire les prompts et le code
  • Certains utilisateurs ont trouvé des solutions alternatives comme Griptape ou la création de leurs propres fonctions
  • Malgré ses défauts, LangChain est populaire grâce à son interopérabilité et à sa capacité à gérer divers modèles et vector stores
  • Les personnes à l’aise avec la technique pourraient s’intéresser à cet article pour comprendre les avantages et les inconvénients des projets utilisant LangChain
  • C’est un bon outil pour débuter, et il peut aussi être utilisé pour des projets plus avancés
  • La documentation de LangChain est insuffisante et beaucoup de fonctionnalités sont mal documentées
  • Il faut davantage de tutoriels avancés et d’exemples pour les utilisateurs qui veulent aller au-delà de LangChain
  • Dans la communauté de la programmation, les avis sur LangChain sont partagés : certains le trouvent utile, d’autres le critiquent comme étant limité
  • Le développement d’outils similaires à LangChain fait partie de la révolution de l’IA qui progresse rapidement
  • Les utilisateurs sont encouragés à contribuer aux projets open source comme LangChain afin de les améliorer
  • Pour progresser et apprendre, il est important que les programmeurs restent humbles et acceptent la critique
  • LangChain est un projet open source populaire dans la communauté IA
  • Certains développeurs estiment que LangChain ne vaut pas la peine d’être utilisé, car il n’apporte aucune nouvelle fonctionnalité et reste limité
  • À la place, il est possible d’utiliser des bibliothèques alternatives comme SentenceTransformers, ChromaDB et requests
  • LangChain est considéré comme un projet de débutant en raison de son grand nombre d’étoiles sur GitHub
  • Certains développeurs proposent SymbolicAI ou Haystack comme de meilleures alternatives à LangChain
  • Des inquiétudes existent au sujet de l’abstraction en chaînes de LangChain et de sa composabilité ; certains développeurs pensent que d’autres abstractions, comme les DAG ou les machines à états, seraient plus efficaces
  • EdgeChains est une autre bibliothèque qui propose l’ingénierie de prompts pour l’IA générative sous forme de gestion de configuration
  • Certains développeurs expriment leur frustration face à la documentation de LangChain et à son comportement incohérent
  • Globalement, LangChain peut être utile pour apprendre, mais pourrait ne pas convenir à des systèmes de niveau production

3 commentaires

 
xguru 2023-07-10

Il existe aussi divers avis sur Hacker News.
LangChain a déjà reçu environ 30 M$ de financement de la part de Benchmark et Sequoia, mais beaucoup se demandent si cela les mérite vraiment.

L’avis du développeur de simpleaichat, un remplaçant simple de LangChain

  • LangChain n’aide pas beaucoup tout en créant un verrouillage
  • Les workflows ReAct / le prompt engineering sont dépassés
  • Le débogage est presque impossible (même avec verbose=true)
  • Si l’on veut faire autre chose que les workflows présentés dans la documentation, le hack est vraiment difficile, même en utilisant des Custom Agents
  • Malgré cela, l’attention que reçoit LangChain n’est en réalité pas bonne pour l’écosystème de l’IA
 
GN⁺ 2023-07-09
Avis sur Hacker News
  • LangChain est une tentative de résoudre des problèmes sur une base technique qui ne prend pas en charge les limites de la technologie
  • La génération actuelle de LLM manque de réutilisabilité
  • Construire des fonctionnalités avec des chaînes de LLM nécessite des prompts personnalisés écrits à la main et des formats de données spécifiques
  • LangChain tente une abstraction pour la réutilisabilité, mais aboutit au final à un framework DAG intermédiaire produisant des sorties médiocres
  • LangChain encourage la dépendance à ses outils sans réel bénéfice pour les développeurs
  • Les implémentations actuelles des workflows ReAct et du prompt engineering sont dépassées
  • Le débogage des erreurs de LangChain est difficile, et la manipulation des workflows est complexe
  • La documentation omet les détails nécessaires, obligeant les utilisateurs à plonger directement dans le code source
  • La popularité de LangChain déforme l'écosystème de l'IA et nuit au développement ainsi qu'à la lisibilité du code
  • LiteChain, une alternative à LangChain, propose de vrais monades composables et une base de code plus simple
  • LangChain réinvente l'ETL alors que des technologies solides existent déjà
  • Les abstractions de LangChain n'ajoutent presque aucune valeur et peuvent être réalisées facilement sans framework
  • LangChain a levé des investissements importants, mais présente une qualité discutable
  • Les performances de LangChain sont médiocres en comparaison d'autres solutions
  • LangChain est considéré comme une mauvaise abstraction qui introduit sa propre API et de la complexité
  • Il est proposé d'abandonner l'usage des templates de prompts dans LangChain
  • Les développeurs ML expérimentés estiment que LangChain n'a pas de sens pour le développement produit, même s'il peut encore être utile à d'autres