mirror of
https://github.com/Ladebeze66/devsite.git
synced 2026-05-11 16:56:26 +02:00
3.6 KiB
3.6 KiB
Outils strapi_extraction/
Dernière mise à jour : 2026-04-22
Dossier de scripts Node + Python pour extraire, nettoyer et convertir les données issues de l'API Strapi en base de connaissance chatbot (hors runtime du site).
Pipeline complet
API Strapi
│
▼
extract-api-data.js → extract/raw/*.json
│
▼
clean-api-data.js → extract/clean-data/*.json
│
▼
generate-docs.js → docs/*.md
│
▼
build-vault.py → vault-grasbot/ (Obsidian structuré + aliases/answers/priority)
│
▼
GrasBot le lit directement (plus d'étape d'indexation)
Depuis avril 2026 (v3 du pipeline GrasBot), il n'y a plus d'étape
index_vault.py. Le vault Obsidian est la seule source de vérité : il
est lu directement par llm-api/search.py au démarrage de l'API.
Scripts
| Fichier | Rôle |
|---|---|
extract-api-data.js |
Node. Fetch des endpoints Strapi → JSON brut (extract/raw/). |
clean-api-data.js |
Node. Nettoyage / normalisation (extract/clean-data/). |
generate-docs.js |
Node. Génération de .md par entrée Strapi (docs/). |
build-vault.py |
Python. Lit docs/ + PDF CV → vault Obsidian (vault-grasbot/) avec frontmatter enrichi (aliases, answers, priority). |
update-documentation.js |
Node. MAJ incrémentale de la doc. |
analyse-site-architecture.js |
Node. Analyse d'architecture du site. |
Commande type
# Depuis la racine du repo
node strapi_extraction/extract-api-data.js
node strapi_extraction/clean-api-data.js
node strapi_extraction/generate-docs.js
python strapi_extraction/build-vault.py
# (plus d'étape d'indexation — GrasBot lit le vault directement)
# Si GrasBot tourne déjà, recharger le vault sans redémarrer uvicorn :
curl -X POST http://localhost:8000/reload-vault
Données générées
strapi_extraction/extract/raw/*.json— données Strapi brutes.strapi_extraction/extract/clean-data/*.json— données nettoyées.strapi_extraction/docs/*.md— documentation Markdown.strapi_extraction/docs/generation-summary.json— résumé de génération.vault-grasbot/**/*.md— vault Obsidian consommé par le retrieval GrasBot.
Ces fichiers peuvent être régénérés à tout moment ; ne pas les considérer comme source de vérité sans comparer au CMS.
Fragilités actuelles
clean-api-data.jsn'a pas de cleanerhomepages: du coupgenerate-docs.jsne produit jamais00-homepage.md. Conséquence : le CV de la page d'accueil n'arrive pas dansvault-grasbot/30-Parcours/via la chaîne automatique (il y est aujourd'hui via le PDF séparénouveauCV_grascalvet.pdf).glossairen'est extrait ni nettoyé : endpoint absent de la listeENDPOINTSdansextract-api-data.js, cleaner absent aussi. Le dossiervault-grasbot/40-Glossaire/reste vide tant que ce n'est pas réparé.- Accès Strapi v5 flat : les scripts accèdent en direct à
project.name,project.Resum, etc. Si on repasse à une configuration v4 ou "populated with wrapper", il faudra rebrancher enproject.attributes.name.
Ces points seront corrigés en même temps que l'enrichissement du vault
(glossaire + homepage Strapi → notes 40-Glossaire/ et 30-Parcours/).
Liens complémentaires
- Vault + retrieval :
08-vault-obsidian-retrieval.md - API LLM :
04-api-llm-et-chatbot.md - Schémas Strapi :
03-cms-strapi.md