openai-evals

Par mkurman · zorai

npx skills add https://github.com/mkurman/zorai --skill openai-evals

name: openai-evals description: Framework et registre d'évaluation LLM (OpenAI Evals). Framework pour évaluer les LLM et les systèmes basés sur LLM avec un registre de templates d'eval fournis par la communauté. Supporte les evals notées par modèle, la classification, la correspondance simple de complétions et les fonctions de completion personnalisées. À utiliser pour les tests de qualité LLM systématiques, la détection de régression et la validation de l'ingénierie de prompts. license: MIT license tags: [model-graded-evals, regression-testing, prompt-validation, eval-registry, openai-evals] metadata: skill-author: K-Dense Inc. ---|------|--------| | mmlu | Match | Connaissances (57 sujets) | | hellaswag | Match | Raisonnement du sens commun | | truthfulqa | Model-graded | Véracité | | gsm8k | Match | Raisonnement mathématique | | humaneval | Custom | Génération de code | | ifeval | Model-graded | Suivi d'instructions | | bbq | Model-graded | Détection de biais | | factuality | Model-graded | Exactitude factuelle | | translation | Model-graded | Qualité de traduction |

Parcourir le registre complet : evals/registry/evals/

10. Motif de Pipeline d'Eval en Production

# Pipeline eval CI/CD
def run_eval_suite(model_name, eval_names):
    results = {}
    for eval_name in eval_names:
        cmd = f"oaieval {model_name} {eval_name} --max_samples 200"
        result = subprocess.run(cmd, shell=True, capture_output=True)
        results[eval_name] = parse_accuracy(result.stdout)
    return results

# Test de régression
previous = {"mmlu": 0.86, "gsm8k": 0.92, "hellaswag": 0.85}
current = run_eval_suite("my-finetuned-model", ["mmlu", "gsm8k", "hellaswag"])

for name, score in current.items():
    if score < previous[name] - 0.02:  # Seuil de régression 2%
        alert(f"Régression dans {name}: {previous[name]:.2f} → {score:.2f}")

Motifs clés

  1. Commencer par les templates — la plupart des evals n'ont pas besoin de code Python personnalisé
  2. Utiliser les evals notées par modèle pour la qualité subjective (fluidité, utilité, sécurité)
  3. Utiliser les evals de correspondance pour les métriques objectives (classification, choix multiples)
  4. git lfs fetch --all est nécessaire avant d'exécuter les evals de la communauté
  5. Les fonctions de completion personnalisées permettent de tester les modèles non-OpenAI
  6. Les chemins d'enregistrement permettent le débogage des défaillances individuelles
  7. Les evals privés peuvent tester les données propriétaires sans les exposer

Références

Skills similaires