Un assistant qui répond aux questions sur une documentation technique en citant ses sources au fichier et à la ligne près, et qui dit quand elles ne répondent pas.
En coursSprint S61-S62 · 10 points
En bref, sans jargonpour les non-informaticiensLire le résuméRefermer
Ce que c'est
Un assistant à qui une équipe pose des questions sur sa documentation, et qui répond en montrant d'où vient chaque phrase.
À quoi ça sert
Trouver vite la bonne page dans une documentation qui grossit, sans croire sur parole une réponse inventée.
Ce que ça montre
Brancher un modèle de langage sur ses propres documents, et mesurer la qualité de ce qu'il retrouve et de ce qu'il répond.
API (FastAPI, Docker) → Recherche hybride (fusion RRF)
Recherche hybride (fusion RRF) → Claude (blocs search_result)
Ce qu'il retrouve
Mesuré sur 40 questions de référence en français et en anglais, dont 32 ont leur réponse quelque part dans les 421 passages de la documentation ; pour chacune, le bon fichier et le bon titre sont connus.
Recherche
Bon passage en 1er
dans les 3 premiers
dans les 5 premiers
MRR
Mots-clés (BM25)
0,41
0,56
0,66
0,51
Sens (vecteurs)
0,31
0,63
0,75
0,49
Hybride (les deux, fusionnés)
0,53
0,69
0,81
0,62
Part des questions dont un bon passage arrive dans les premiers résultats ; MRR : moyenne de 1 / rang du premier bon passage. Embeddings : sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2, en local. Recalculé par la CI à chaque modification de la documentation.
Ce qu'il répond
Prototype : l'évaluation des réponses de Claude (citations justes, refus justes) est écrite et testée avec un faux modèle, mais n'a pas été lancée, faute de clé d'API ; le job « answers » de la CI la produira avec une clé.
Technologies
Python
FastAPI
Qdrant
Claude
pytest
Docker
Qui fait quoi
Python
L'ingestion (découpage par titres, lignes gardées), la recherche hybride et l'évaluation.
FastAPI
Les routes de recherche et de question, la validation des requêtes et la documentation OpenAPI.
Qdrant
La base de vecteurs : les embeddings multilingues des passages, cherchés par similarité.
Claude
Rédige la réponse à partir des seuls passages retrouvés, chaque phrase citée (blocs search_result).
pytest
Les tests du découpage, de la recherche et des citations, avec un faux modèle, sous Linux, Windows et macOS.