Jérémy Buget partage son retour d’expérience sur la création d’un chatbot IA spécialisé dans l’inclusion socio-professionnelle, en s’appuyant sur un corpus de documents issus de La communauté de l’inclusion. Le projet utilise une architecture locale avec Ollama (modèle gpt-oss:20b), un script de crawling en Node.js pour récupérer les fiches d’information, une base PostgreSQL avec l’extension pgvector pour stocker et indexer les embeddings (768 dimensions) générés via Sentence Transformers (nomic-embed-text-v2-moe). Le chatbot fonctionne en vectorisant les questions utilisateurs, en recherchant les documents pertinents par comparaison vectorielle (similarité cosinus), puis en générant des réponses sourcées via un LLM, le tout encapsulé dans une API FastAPI et une webapp simple. L’objectif était d’explorer l’exploitation de l’IA pour un usage métier précis, en garantissant des réponses fiables et ancrées dans le corpus documentaires. Le code source est disponible sur GitHub. Une démonstration concrète de RAG (Retrieval-Augmented Generation) avec des outils open-source.
L’auteur partage son retour sur le DevFest Nantes 2025, une première pour lui en tant que participant et conférencier. Au programme : une keynote sur le "techlore" (folklore technologique moderne) par Dasha Ilina, des découvertes sur les trésors méconnus de PostgreSQL (CTE, JSONB, Foreign Data Wrapper…), une réflexion philosophique sur l’IA et la conscience, une analogie ludique entre Factorio et l’ingénierie logicielle, et un side project technique autour de la série Bref. Il a aussi co-animé un talk sur Kubernetes (Limits, QoS, PriorityClasses) avec Quentin Joly, et assisté à des retours d’expérience sur Karpenter/KEDA pour le FinOps et un agent vocal "trouveur de chaussettes" mêlant RAG et LLM. L’ambiance networking et les soirées ont complété une édition riche en échanges et en apprentissages.
L’article présente comment renforcer un système RAG (Retrieval-Augmented Generation) en intégrant Neo4j, une base de données graphe, pour améliorer la pertinence et la précision des réponses générées par un LLM (comme Claude d’Anthropic via AWS Bedrock). L’approche combine le LLM pour extraire et structurer des données semi-structurées (via des prompts ciblés) et Neo4j pour stocker ces données sous forme de graphe, permettant des requêtes complexes et contextualisées. Grâce à LangChain, les questions en langage naturel sont traduites en requêtes Cypher, exploitant ainsi la puissance des relations pré-établies dans Neo4j pour fournir des réponses précises, même sur des données métiers spécifiques. L’auteur souligne aussi l’importance de la sécurité, de la performance, et de l’itération sur les prompts pour optimiser les résultats. Une solution idéale pour des cas d’usage professionnels où la précision et le contexte sont cruciaux.
Ce guide explique comment construire un système RAG (Retrieval-Augmented Generation) local pour traiter des PDF en utilisant DeepSeek-R1, LangChain, Ollama et Streamlit. Il met l'accent sur la confidentialité et l'efficacité en effectuant toutes les opérations localement, sans frais d'API récurrents. Le système utilise LangChain pour orchestrer le flux de travail, DeepSeek-R1 pour le raisonnement et la génération de réponses, Ollama pour déployer les modèles localement, ChromaDB pour stocker et récupérer les embeddings de documents, et Streamlit pour une interface utilisateur intuitive. Le guide fournit des instructions étape par étape pour installer les prérequis, configurer le projet, et exécuter l'application, permettant aux utilisateurs de poser des questions sur des documents PDF téléchargés et d'obtenir des réponses précises et rapides.
L'article explore l'intégration de fonctionnalités d'intelligence artificielle dans les applications, en se concentrant sur deux approches principales : le RAG (Retrieval-Augmented Generation) et le fine-tuning. Le RAG combine la génération de texte avec la recherche d'informations externes pour améliorer la qualité des réponses générées, tandis que le fine-tuning adapte un modèle pré-entraîné à des tâches spécifiques en le réentraînant sur des données spécialisées. L'article détaille les différences entre ces méthodes et propose une implémentation pratique d'un système RAG utilisant Symfony et Elasticsearch. Le processus inclut la création d'embeddings à partir de données, leur stockage dans une base de données vectorielle, et l'utilisation d'un modèle de langage pour générer des réponses contextuelles. Le projet, disponible sur GitHub, permet d'expérimenter avec différents cas d'utilisation et modèles d'embeddings. En conclusion, l'article souligne comment la combinaison de RAG et de fine-tuning peut créer des applications AI plus intelligentes et réactives.
Tout est dans le titre
L'auteur explique l'intérêt de RAG (Retriever-Augmented Generation) par rapport à l'utilisation d'un LLM (Large Language Model) pour créer un chatbot basé sur la documentation technique de son site.
Tout est dans le titre
Tout est dans le titre