Aller au contenu principal

Référence du dataset d'évaluation

Les jeux de données d’évaluation dans MLflow définissent les données de test structurées utilisées pour évaluer votre application GenAI : inputs, vérité terrain optionnelle expectations, et les champs de lignage tels que la source et les tags. Cette page documente le schéma du dataset et renvoie vers les méthodes et classes du SDK les plus fréquemment utilisées.

Pour des informations générales et des exemples d'utilisation des datasets d'évaluation, consultez Évaluer les applications GenAI pendant le développement.

Schéma de dataset d'évaluation

Les datasets d'évaluation doivent utiliser le schéma décrit dans cette section.

Champs principaux

Les champs suivants sont utilisés à la fois dans l'abstraction du dataset d'évaluation ou si vous passez les données directement.

Colonne

Type de données

Description

Obligatoire

inputs

dict[Any, Any]

Entrées pour votre application (par exemple, question de l'utilisateur, contexte), stockées sous forme de dict sérialisable JSON.

Oui

expectations

dict[Str, Any]

Étiquettes de vérité terrain, stockées sous forme de dict JSON-sérialisable.

Facultatif

Colonne

Type de données

Description

Obligatoire

inputs

dict[Any, Any]

Entrées pour votre application (par exemple, question de l'utilisateur, contexte), stockées sous forme de dict sérialisable JSON.

Oui

expectations

dict[Str, Any]

Étiquettes de vérité terrain, stockées sous forme de dict JSON-sérialisable.

Facultatif

expectations clés réservées

expectations dispose de plusieurs clés réservées qui sont utilisées par les juges LLM intégrés : guidelines, expected_facts et expected_response.

Champ

Utilisé par

Description

expected_facts

Correctness juge

Liste des faits qui doivent apparaître

expected_response

Correctness juge

Sortie attendue exacte ou similaire

guidelines

Guidelines juge

Règles du langage naturel à suivre

expected_retrieved_context

document_recall évaluateur

Documents à récupérer

Champ

Utilisé par

Description

expected_facts

Correctness juge

Liste des faits qui doivent apparaître

expected_response

Correctness juge

Sortie attendue exacte ou similaire

guidelines

Guidelines juge

Règles du langage naturel à suivre

expected_retrieved_context

document_recall évaluateur

Documents à récupérer

Champs supplémentaires

Les champs suivants sont utilisés par l'abstraction du dataset d'évaluation pour suivre la traçabilité et l'historique des versions.

Colonne

Type de données

Description

Obligatoire

dataset_record_id

chaîne

L'identifiant unique de l'enregistrement.

Défini automatiquement s'il n'est pas fourni.

create_time

Horodatage

Date de création de l'enregistrement.

Défini automatiquement lors de l'insertion ou de la mise à jour.

created_by

chaîne

L'utilisateur qui a créé l'enregistrement.

Défini automatiquement lors de l'insertion ou de la mise à jour.

last_update_time

Horodatage

Le moment où l'enregistrement a été mis à jour pour la dernière fois.

Défini automatiquement lors de l'insertion ou de la mise à jour.

last_updated_by

chaîne

L'utilisateur qui a effectué la dernière mise à jour du dossier.

Défini automatiquement lors de l'insertion ou de la mise à jour.

source

structure

La source de l'enregistrement du dataset. Consultez le champ Source.

Facultatif

tags

dict[str, Any]

Balises clé-valeur pour l'enregistrement du dataset.

Facultatif

Colonne

Type de données

Description

Obligatoire

dataset_record_id

chaîne

L'identifiant unique de l'enregistrement.

Défini automatiquement s'il n'est pas fourni.

create_time

Horodatage

Date de création de l'enregistrement.

Défini automatiquement lors de l'insertion ou de la mise à jour.

created_by

chaîne

L'utilisateur qui a créé l'enregistrement.

Défini automatiquement lors de l'insertion ou de la mise à jour.

last_update_time

Horodatage

Le moment où l'enregistrement a été mis à jour pour la dernière fois.

Défini automatiquement lors de l'insertion ou de la mise à jour.

last_updated_by

chaîne

L'utilisateur qui a effectué la dernière mise à jour du dossier.

Défini automatiquement lors de l'insertion ou de la mise à jour.

source

structure

La source de l'enregistrement du dataset. Consultez le champ Source.

Facultatif

tags

dict[str, Any]

Balises clé-valeur pour l'enregistrement du dataset.

Facultatif

Champ source

Le champ source suit la provenance d'un enregistrement de dataset. Chaque enregistrement ne peut avoir qu'un seul type de source.

Source humaine : Enregistrement créé manuellement par une personne

Python
{
"source": {
"human": {
"user_name": "jane.doe@company.com" # user who created the record
}
}
}

Document source : Enregistrement synthétisé à partir d'un document

Python
{
"source": {
"document": {
"doc_uri": "s3://bucket/docs/product-manual.pdf", # URI or path to the source document
"content": "The first 500 chars of the document..." # Optional, excerpt or full content from the document
}
}
}

Source de la trace : Enregistrement créé à partir d'une trace de production

Python
{
"source": {
"trace": {
"trace_id": "tr-abc123def456". # unique identifier of the source trace
}
}
}

Interface utilisateur de dataset d’évaluation MLflow

L'onglet **tab** de la page d'expérimentation MLflow fournit une interface visuelle pour la gestion de vos datasets d'évaluation et de leurs enregistrements. La page utilise un Layout à volets partagés : le volet de gauche liste tous les datasets d'évaluation associés à l'Experimentation, et le volet de droite affiche les enregistrements pour le dataset sélectionné. Vous pouvez rechercher, trier, créer, modifier et supprimer des datasets et des enregistrements directement depuis l'interface utilisateur sans écrire de code.

tab dataset d'évaluation

Dans le volet de droite, vous pouvez modifier les entrées et les attentes des enregistrements en ligne, ajouter des balises aux enregistrements individuels, afficher la trace source des enregistrements créés à partir de traces de production et obtenir un extrait de code Python prêt à l'emploi pour exécuter une évaluation sur le dataset.

Présentation de l'interface utilisateur du dataset d'évaluation

  1. Dans la barre latérale, cliquez sur Expérimentations et ouvrez votre expérimentation.

  2. Cliquez sur l'onglet **Datasets**. Le volet de gauche affiche tous les jeux de données d’évaluation pour cette expérimentation. Par default, les datasets sont triés par heure de dernière mise à jour. Utilisez la barre de recherche pour filtrer par nom de dataset.

  3. Cliquez sur un nom de dataset pour afficher ses enregistrements dans le volet de droite. Vous pourriez avoir besoin de faire défiler vers la droite et la gauche pour afficher toutes les colonnes.

  4. Pour agrandir le volet droit, survolez le séparateur de volets et cliquez sur la flèche pointant vers la gauche. Cliquez à nouveau sur la flèche pour revenir à la vue par default.

    Passez le curseur sur le séparateur de volet pour agrandir le volet droit.

  5. Pour sélectionner les colonnes qui apparaissent, cliquez sur le bouton Colonnes . Cochez ou décochez les cases. Lorsque vous avez terminé, cliquez n'importe où en dehors du menu déroulant.

    Sélectionner les colonnes à afficher.

Créer un dataset d'évaluation

  1. Dans l'onglet tab , cliquez sur Créer un dataset .

    Bouton Créer un dataset

  2. Dans la boîte de dialogue, cliquez sur Sélectionner un schéma pour choisir un schéma Unity Catalog où vous disposez des autorisations CREATE TABLE.

  3. Saisissez un nom de table pour le dataset. Un aperçu du nom complet du dataset (catalog.schema.table_name) apparaît sous l'entrée.

  4. Cliquez sur **Create Dataset**.

Ajouter des enregistrements de dataset

Pour ajouter des traces existantes à un dataset d'évaluation, consultez Créer un dataset à l'aide de l'interface utilisateur.

Modifier les enregistrements de dataset

La vidéo présente les étapes suivantes :

  1. Sélectionnez un dataset dans le volet de gauche pour afficher ses enregistrements.
  2. Vous pouvez modifier les champs Inputs et Expectations directement dans le tableau. Ces champs acceptent le JSON et valident votre saisie au fur et à mesure que vous tapez.
  3. Pour ajouter une nouvelle ligne, cliquez sur Add record . Une nouvelle ligne avec les valeurs par default apparaît en haut du tableau.
  4. Pour enregistrer toutes les modifications en attente, cliquez sur Enregistrer les modifications en haut à droite.

Comment modifier les enregistrements de dataset.

Supprimer des enregistrements ou des datasets

  • Pour supprimer des enregistrements, utilisez les cases à cocher pour sélectionner un ou plusieurs enregistrements, puis cliquez sur Supprimer (N) .

Supprimer l'enregistrement.

  • Pour supprimer un dataset, cliquez sur Afficher les détails pour ouvrir le volet des détails, puis cliquez sur Supprimer le dataset en bas du volet. Vous pouvez également supprimer un dataset du menu kebab Icône du menu kebab. dans la liste des datasets.

Volet des détails du dataset d’évaluation.

Afficher les détails du dataset

Pour afficher les métadonnées du dataset, cliquez sur Afficher les détails en haut à droite. Un volet s’ouvre, incluant le nom du dataset, l’ID, l’heure de création, la dernière mise à jour, la source et un Link pour afficher le dataset dans Unity Catalog.

Ajouter et supprimer des tags

Dans la colonne Tags , cliquez sur une balise pour la modifier, ou cliquez sur Ajouter des balises pour ajouter une nouvelle balise.

Modifier les tags dans l'interface utilisateur.

Voir la trace source

Dans la colonne Source , cliquez sur la trace pour ouvrir une fenêtre interactive affichant la trace complète et les évaluations.

Affichez la trace source dans l'interface utilisateur.

Exécutez une évaluation à l'aide du dataset

Pour ouvrir une boîte de dialogue avec un template de code Python qui charge le dataset et exécute mlflow.genai.evaluate() avec un ensemble de marqueurs par default :

  1. Cliquez sur Exécuter une évaluation .

    Bouton d'exécution de l'évaluation.

  2. Cliquez sur l'icône de copie, affichée dans l'image suivante, pour copier l'extrait dans votre presse-papiers.

    Copier l'extrait de code.

Référence du SDK de dataset d'évaluation MLflow

Le SDK de jeux de données d'évaluation fournit un accès programmatique pour créer, gérer et utiliser des datasets pour l'évaluation d'applications GenAI. Pour plus de détails, consultez la référence de l'API : mlflow.genai.datasets. Certaines des méthodes et classes les plus fréquemment utilisées sont les suivantes :