La recherche en IA te passionne ?
Les papers et avancées qui comptent, expliqués simplement, chaque soir. Gratuit.
Inclus dès l'inscription : notre sélection des meilleurs guides & comparatifs IA.
Choisis ton rythme
Gratuit · Pas de spam · Désabonnement en 1 clic
Un pipeline local transforme des résumés Wikipedia en quads SPOC en imposant une sortie JSON à Llama 3.2. Les quads sont dédupliqués, normalisés et prêts à être chargés dans un QuadStore pour un usage Graph-RAG.
Le pipeline convertit les résumés Wikipedia en quads enrichis
Le processus d’extraction fonctionne en mode strictement JSON, condition présentée comme nécessaire pour garantir la fiabilité de l’extraction. Les triples RDF classiques sont enrichis d’un contexte pour former des quads SPOC, ce qui permet de tracer l’origine d’un fait et d’en évaluer la véracité. Un exemple donné montre la transformation d’un triple en quad avec un contexte comme NBA_2023_Roster. Le prompt adressé au LLM impose la production d’un objet JSON unique contenant la clé facts, chaque élément devant comporter les clés subject, predicate et object. Lors du post-traitement, chaque fait valide est converti en quad en ajoutant la clé context.
Le cœur du pipeline : un extracteur robuste connecté à l’API Ollama
La fonction d’extraction reçoit le texte source, un libellé de contexte et un modèle par défaut fixé à llama3.2. Elle envoie une requête POST à http://localhost:11434/api/generate, avec un payload précisant le modèle, le prompt, le format json, le streaming désactivé et une température à 0.0. La réponse est vérifiée par raise_for_status, puis la chaîne générée dans la clé response est parsée en JSON. Le code cherche d’abord un tableau facts, ou à défaut la première valeur de type liste trouvée. Chaque élément est filtré pour être un dictionnaire, ses clés sont normalisées en minuscules et débarrassées des espaces. La fonction retourne la liste des quads construits, ou une liste vide après affichage d’un message d’échec en cas d’exception.
Préparer la matière première : deux paragraphes extraits de Wikipedia
Le contenu provient de Wikipedia, obtenu grâce à l’API Python dédiée. L’option auto_suggest=False est utilisée pour éviter des corrections de titre qui pourraient provoquer un plantage. La page ciblée est Alan Turing et son résumé est obtenu via la propriété summary. Le pipeline sélectionne les deux premiers paragraphes en découpant sur les sauts de ligne, puis les assemble par des espaces pour constituer un texte court. Le nombre de caractères du texte ainsi préparé est affiché avant traitement.
Stocker et interroger : un QuadStore minimaliste sans doublons
Un module quadstore.py contient une classe QuadStore qui stocke les quads dans une liste. La méthode add ajoute un quad SPOC uniquement s’il n’est pas déjà présent. La méthode query retourne les quads correspondant aux filtres subject, predicate, object et context éventuellement fournis. Les quads extraits peuvent être chargés dans ce graphe pour un usage ultérieur dans un pipeline Graph-RAG simulé.
Exécuter en local ou dans Colab : installation d’Ollama et de Llama 3.2
Le flux de travail fonctionne aussi bien dans un notebook Google Colab que dans un IDE Python local. En local, Ollama doit être installé manuellement et le modèle Llama 3.2 téléchargé. Dans Colab, l’installation passe par apt-get pour zstd, un script d’installation d’Ollama via curl, et l’ajout des bibliothèques wikipedia et requests avec pip. Llama 3.2 est décrit comme un modèle léger et gratuit. Le serveur Ollama est lancé en arrière-plan avec la commande ollama serve, en laissant environ trois secondes pour le démarrage, puis le modèle est téléchargé avec ollama pull llama3.2. L’ensemble du pipeline vise à extraire des données structurées via few-shot prompting et sortie JSON, pour alimenter un graphe de connaissances en quads SPOC avec un LLM local.






