🐢 Bibliothèque open source d'évaluation et de test pour agents LLM
[!IMPORTANT] Giskard v3 est une réécriture complète conçue pour les tests dynamiques multi-tours des agents IA. Cette version abandonne les dépendances lourdes pour une meilleure efficacité tout en introduisant un scanner de vulnérabilités IA plus puissant et une évaluation RAG améliorée — désormais tous deux inclus nativement dans
giskard-scan, sans dépendance à la v2. Seul l'ancien scan pour les modèles tabulaire/ML reste exclusif à la v2. Giskard v2 reste disponible mais n'est plus activement maintenu. Suivez la progression → Lire l'annonce de la v3 · Feuille de route
pip install giskard # checks (+ agents, llm, core)
pip install "giskard[scan]" # + scan de vulnérabilité / qualité
pip install "giskard[openai]" # SDK fournisseur pour les juges / générateurs LLM
Nécessite Python 3.12+.
| Extra | Ajoute |
|---|---|
| (aucun) | giskard-checks et dépendances |
scan | giskard-scan |
openai / anthropic / … | SDK fournisseurs (voir les dépendances optionnelles dans pyproject.toml) |
Télémétrie : analyses agrégées optionnelles via giskard-core. Aucun prompt ni sortie n'est envoyé.
Désactivation avant d'importer Giskard : export DO_NOT_TRACK=1 ou export GISKARD_TELEMETRY_DISABLED=1.
Détails : giskard-core README.
Giskard est une bibliothèque Python open-source pour tester et évaluer les systèmes agentiques. L'architecture v3 est un ensemble modulaire de paquets ciblés — chacun ne portant que les dépendances dont il a besoin — construits de zéro pour encapsuler n'importe quoi : un LLM, un agent boîte noire, ou un pipeline multi-étapes.
| Statut | Paquet | Description |
|---|---|---|
| ✅ Stable | giskard-checks | Tests et évaluation — API de scénarios, checks intégrés, LLM-as-judge |
| ✅ Stable | giskard-scan | Scanner de vulnérabilités d'agents + évaluation RAG/qualité — red teaming, injection de prompts, jailbreaks et contenus nuisibles (vulnerability_scan, successeur du Scan v2), plus évaluation de la qualité de la base de connaissances (quality_scan, successeur du RAGET v2) |
Ces paquets reposent sur trois bibliothèques fondamentales — giskard-core (utilitaires partagés et télémétrie), giskard-llm (routage LLM indépendant du fournisseur) et giskard-agents (orchestration d'agents et de workflows) — qui sont installées automatiquement et rarement utilisées directement.
pip install giskard-checks
Giskard Checks est une bibliothèque légère pour créer des évaluations (evals) qui testent les systèmes basés sur LLM — des assertions simples aux évaluations LLM-as-judge. Contrairement aux tests unitaires traditionnels, les évaluations sont conçues pour des sorties non déterministes où la même entrée peut produire différentes réponses valides.
Utilisez Giskard Checks pour :
Les évaluations intégrées incluent la correspondance de chaînes, les comparaisons, les expressions régulières, la similarité sémantique et les checks LLM-as-judge (Groundedness, Conformity, LLMJudge).
(entrées) -> sorties (optionnellement avec trace)giskard.agents.Generator est un client LLM pour les workflows/juges — à ne pas confondre avec les générateurs d'entrées de giskard.checks (LLMGenerator) qui synthétisent les messages utilisateur.
import asyncio
from giskard.checks import Scenario, Groundedness
def get_answer(inputs: str) -> str:
return "Paris" # remplacez par votre modèle / agent
async def main() -> None:
scenario = (
Scenario("test_france_capital")
.interact(inputs="What is the capital of France?", outputs=get_answer)
.check(
Groundedness(
name="answer is grounded",
context="France is in Western Europe. Its capital is Paris.",
)
)
)
result = await scenario.run()
result.print_report()
asyncio.run(main())
Groundedness est un juge LLM — installez un extra fournisseur (par ex. pip install "giskard[openai]") et définissez la clé API correspondante. Modèle par défaut : openai/gpt-4o-mini.
Consultez la documentation complète pour les Suites, LLMJudge, les scénarios multi-tours, et plus encore.
pip install "giskard[scan]" # ou : pip install giskard-scan