Believe / Un composant de QaaS

Ève

Poser une question sur la plateforme. Retrouver les connaissances derrière la réponse.

Un assistant IA local qui recherche dans la documentation, les docstrings et les commentaires de code de QaaS pour aider les ingénieurs à retrouver commandes, conventions et explications.

RAG local développé

Le problème

À mesure que QaaS grandissait, ses connaissances se répartissaient entre documentation et fichiers sources. Les ingénieurs avaient besoin de retrouver rapidement une convention, de comprendre une commande ou de localiser une explication.

Ma contribution

Conception et développement d’un assistant local intégré à QaaS : extraction du contenu du projet, recherche sémantique, inférence avec un modèle local et points d’entrée dans l’outillage de la plateforme.

Ève rend ces connaissances accessibles en langage naturel et aide les utilisateurs à gagner en autonomie sur la plateforme.

01 / FONCTIONNEMENT

Des fichiers du projet à une réponse.

  1. Extraire

    Lire la documentation, les docstrings et les commentaires. Conserver le chemin des sources avec les passages extraits.

  2. Indexer

    Encoder les passages avec les embeddings de phrases MiniLM, puis stocker les vecteurs et métadonnées dans FAISS.

  3. Rechercher

    Retrouver les passages liés à la question et les réunir dans le contexte fourni au modèle.

  4. Générer

    Un modèle local llama.cpp utilise le contexte retrouvé et une consigne demandant de citer les sources.

Le service Flask, le moteur du modèle et l’index sont intégrés à l’environnement QaaS. Phi-2 et Mistral font partie des options de modèles locaux. Une fois installé, le moteur assure l’inférence localement.

02 / EXEMPLE DE PARCOURS

Une question possible d’un ingénieur.

Parcours illustratif.

Question

Comment exécuter les tests API sans installer leurs dépendances Python sur mon ordinateur ?

Contexte pertinent du projet

  • Le lanceur pytest fournit le point d’entrée de l’exécution.
  • Le conteneur pytest fournit le moteur et les dépendances des tests.
  • L’environnement sélectionné détermine la configuration, les accès réseau et l’authentification.

Les chemins des sources permettent à l’ingénieur d’ouvrir la documentation ou la configuration à l’origine d’une explication.

Les indications à fournir

Utiliser l’environnement pytest préparé et le lanceur de la plateforme. Le conteneur fournit Python et les dépendances des tests ; la configuration de l’environnement définit la cible et les paramètres d’accès.

Environnement → lanceur pytest → conteneur → résultats

Relier la réponse à la documentation du lanceur, à la configuration requise et aux emplacements des résultats pour permettre à l’ingénieur de suivre le parcours.

Découvrir le parcours QaaS associé →

03 / SOURCES ET ÉVOLUTION

Garder la connaissance accessible.

Une recherche reliée aux sources

Les passages conservent leur fichier d’origine. La recherche et les références aux sources permettent aux ingénieurs de consulter le contexte utilisé pour la réponse et de poursuivre dans la documentation du projet.

La base de connaissances réunit la documentation, les docstrings et les commentaires extraits.

Prochaines étapes

Évaluer la qualité des réponses, l’exactitude des références, la fraîcheur de l’index et le comportement face aux lacunes de la documentation.

Une extension permettrait à Ève de préparer et lancer des campagnes de test à travers un orchestrateur commun.