Guides
Ce qui fonctionne aujourd’hui
Ce que vous pouvez évaluer avec Oloproof aujourd’hui, comment vous y accédez (SDK Python, oloproof.yaml et la CLI, ou le navigateur), et ce qui n’est pas construit. Cette page s’appuie sur l’audit des capacités du 8 octobre 2026, une revue interne qui a vérifié chaque ligne par rapport au code et à ses tests plutôt qu’aux plans.
Comment lire cette page
« SDK » désigne le paquet Python (import oloproof). « YAML » désigne un projet que vous exécutez avec oloproof run depuis oloproof.yaml. Ce ne sont pas la même surface : quelques évaluateurs n’existent que dans l’une des deux, et cette page indique laquelle. « Navigateur » désigne le workbench hébergé, qui affiche ce que vous envoyez avec oloproof push ; il n’exécute pas d’évaluations que vous n’avez pas définies en code ou en YAML.
Oloproof appelle votre système ; il ne l’héberge pas, ne l’isole pas et ne le réinitialise pas. Votre application gère son propre état, ses sessions et les effets de bord de ses outils pendant une exécution.
Par type de système
| Votre système | Ce qui fonctionne | Où | Non construit |
|---|---|---|---|
| Classifieur ou sortie structurée | Correspondance exacte, contient, regex, schéma JSON, juge à grille, juge de probabilité, classifieur de modèle ; taux de réussite avec intervalles | SDK et YAML ; model_classifier, probability_judge et cascade en YAML seulement | n/a |
| Génération de texte, résumés, extraction | Les mêmes contrôles sur du texte libre, juges à grille, accord du juge avec des étiquettes humaines, préférence par paires | SDK et YAML ; la préférence est la commande oloproof prefer | BLEU, ROUGE ou similarité d’embeddings (écrivez-en un avec @evaluator) |
| RAG exécuté comme une boîte noire | Taux de succès, rappel, MRR, nDCG, validité des citations, juges d’ancrage et de soutien des citations, à partir des artefacts de récupération que votre système enregistre ou renvoie | SDK et YAML | Diagnostic : diagnose exige un système par étapes |
| RAG construit par étapes | Tout ce qui précède, la mise en cache par étape, et oloproof diagnose avec contexte de référence, changements de top-k ou de reranker à côté d’un témoin | SDK @rag_system, YAML system.rag, CLI diagnose | Interventions au-delà de ces trois |
| Agent utilisant des outils | Limites d’étapes, outils requis et interdits, ordre des outils, boucles, contraintes, à partir d’une trajectoire enregistrée | SDK et YAML | Un contrôle de qualité de trajectoire jugé par un LLM |
| Système multi-agents | Routage, permissions d’outils par agent, limites de transferts | SDK et YAML | n/a |
| Rejeu d’agent | Réexécuter un cas depuis un point de reprise pour qualifier une étape de nécessaire ou non | SDK seulement (replay_case), pour un système qui prend en charge les points de reprise | Une commande CLI |
| Modèle de classification binaire | Exactitude, précision, rappel, Brier, log loss, classement (AUC) | SDK et YAML predictive: | n/a |
| Modèle multiclasse | Un bloc par classe (une contre les autres) | SDK et YAML | Moyennes macro ou micro |
| Modèle de régression | Erreur absolue dans une target_range déclarée | SDK et YAML | Erreur quadratique, R carré, erreur non bornée |
| Conversation à plusieurs tours | Si chaque tour scénarisé a reçu une réponse, et un juge à grille sur toute la conversation | SDK seulement (ConversationCompleted, ConversationJudge) | Types YAML, scores par tour, simulateur d’utilisateur, rejeu de conversation |
| Images, audio, vidéo | Rien de natif : un cas peut transporter une URL ou un fichier encodé à travers votre système, et @evaluator peut vérifier la sortie | n/a | Les juges ne voient que du texte JSON ; pas d’artefacts média ni de rendu |
Un contournement pour le multi-tours : faites de chaque tour un cas et donnez aux tours d’une même conversation le même group_id, pour que l’analyse les traite comme une grappe (Clusters). Chaque tour est alors un appel distinct, pas un dialogue enregistré.
Connecter votre système
- Appelable Python : @system dans le SDK ou system.callable: module:function en YAML. Il reçoit l’input du cas et renvoie un dictionnaire. Les fonctions synchrones et asynchrones fonctionnent toutes deux.
- HTTP : system.http avec url, method, output_path, artifacts et timeout_s. L’entrée du cas est envoyée comme corps JSON et la réponse lue comme JSON. Les en-têtes et l’authentification ne sont pas encore configurables ; placez un endpoint qui exige une clé derrière un appelable qui l’ajoute.
- Évaluateurs personnalisés : @evaluator dans le SDK. oloproof.yaml ne peut pas encore en nommer un.
Flux de travail
| Flux de travail | Ce qui fonctionne | Non construit |
|---|---|---|
| Comparer deux versions | Supériorité appariée, non-infériorité et équivalence ; segments avec contrôle de la multiplicité | n/a |
| CI | Codes de sortie de oloproof gate selon le block_on de votre politique, validation, enregistrements signés ; un résumé de pull request (--summary markdown) | n/a |
| Relecture humaine | Étiquettes depuis un fichier ou le terminal ; une file de relecture dans le navigateur avec relecteurs assignés sur un espace de travail hébergé | Une file de relecture dans le navigateur sur un projet local |
| Workbench dans le navigateur | Exécutions, cas, comparaisons, diagnostics, évaluateurs, relecture et trafic, après oloproof push | Import de jeux de données, rédaction de juges, planifications, alertes et post-mortems (affichés comme prévus) |
| Navigateur local | n/a | Aucune commande de la CLI ne sert le workbench en local ; il est hébergé |
Ce qui a été testé, et comment
Chaque famille ci-dessus a des tests automatisés, exécutés sur des fixtures et des fournisseurs simulés. Des exécutions contre de vrais systèmes avec de vrais modèles sont enregistrées pour le RAG, un agent unique et une conversation à plusieurs tours ; aucune encore pour les modèles prédictifs ni les systèmes multi-agents. Les méthodes statistiques qui décident des publications sont chacune admises par leur propre audit ; une métrique sans intervalle admis ne décide pas une règle sur un intervalle, et une règle qui en aurait besoin renvoie MANUAL_REVIEW ou INSUFFICIENT_EVIDENCE avec sa raison.