Gestion des modèles de langue personnalisés

L'interface de personnalisation inclut la méthode POST /v1/customizations pour créer un modèle de langue personnalisé. L'interface comprend également la méthode POST /v1/customizations/train pour entraîner un modèle personnalisé sur les dernières données intégrées dans sa ressource de mots. Pour plus d'informations, voir :

L'interface inclut également des méthodes permettant de répertorier les informations sur les modèles de langue personnalisés, de restaurer un modèle personnalisé à son état initial, de mettre à niveau un modèle personnalisé ou de supprimer un modèle personnalisé. Vous ne pouvez pas entraîner, réinitialiser, mettre à niveau ou supprimer un modèle personnalisé alors que le service traite une autre opération sur ce modèle, notamment l'ajout de ressources au modèle.

Affichage de la liste des modèles de langue personnalisés

L'interface de personnalisation fournit deux méthodes pour répertorier les informations sur les modèles de langue personnalisés qui appartiennent aux données d'identification spécifiées :

  • La méthode GET /v1/customizations répertorie les informations relatives à tous les modèles de langue personnalisés ou, si vous spécifiez le paramètre language, à tous les modèles de langue personnalisés pour la langue spécifiée. Si vous spécifiez une langue, utilisez l'identificateur de langue du nom du modèle de base, par exemple, en-US pour un modèle en anglais américain.
  • La méthode GET /v1/customizations/{customization_id} répertorie les informations sur un modèle de langue personnalisé spécifié. Utilisez cette méthode pour interroger le service sur le statut d'une demande d'entraînement ou d'ajout de mots nouveaux.

Les deux méthodes renvoient les informations suivantes sur un modèle personnalisé :

  • customization_id identifie l'identificateur global unique (GUID) du modèle personnalisé. Le GUID sert à identifier le modèle dans les méthodes de l'interface.
  • created correspond à la date et l'heure de création du modèle en temps universel coordonné (TUC).
  • updated correspond à la date et l'heure de la dernière modification du modèle personnalisé en temps universel coordonné (TUC).
  • language est la langue du modèle personnalisé. La valeur correspond à l'identificateur de langue du nom du modèle de base. Par exemple, en-US pour un modèle de langue en anglais américain.
  • dialect est le dialecte de la langue du modèle personnalisé, qui ne correspond pas nécessairement à la langue du modèle personnalisé pour les modèles en espagnol de génération précédente. Pour plus d'informations, voir la description de la zone dialect dans Créer un modèle de langue personnalisé.
  • owner identifie les données d'identification de l'instance de service propriétaire du modèle personnalisé.
  • name est le nom du modèle personnalisé.
  • description représente la description du modèle personnalisé, indiquée, le cas échéant, lors de la création du modèle.
  • base_model indique le nom du modèle de langue pour lequel a été créé le modèle personnalisé.
  • versions fournit une liste de versions disponibles du modèle personnalisé. Chaque élément du tableau indique une version du modèle de base avec lequel peut être utilisé le modèle personnalisé. Il n'existe plusieurs versions que si le modèle personnalisé est mis à niveau vers une nouvelle version de son modèle de base. Autrement, il n'y a qu'une seule version présentée. Pour plus d'informations, voir Affichage de la liste des informations de version d'un modèle personnalisé.

La méthode renvoie également une zone status indiquant l'état du modèle personnalisé :

  • pending indique que le modèle a été créé. Il attend que des données d'apprentissage valides (corpus, mots ou grammaires) soient ajoutées ou que le service ait terminé l'analyse des données ajoutées.
  • ready indique que le modèle contient des données valides et qu'il est prêt à être entraîné. Si le modèle contient à la fois des ressources valides et non valides, l'entraînement du modèle échoue tant que vous ne définissez pas le paramètre de requête strict sur false. Pour plus d'informations, voir Echecs d'entraînement.
  • training indique que le modèle est en cours d'entraînement sur les données.
  • available indique que le modèle est entraîné et prêt à être utilisé avec une demande de reconnaissance.
  • upgrading indique que le modèle est en cours de mise à niveau.
  • failed indique que l'entraînement du modèle a échoué. Examinez les mots figurant dans la ressource de mots du modèle pour déterminer les erreurs qui ont empêché l'entraînement du modèle.

En outre, la sortie inclut une zone progress qui indique le statut de l'entraînement d'un modèle personnalisé. Si vous avez utilisé la méthode POST /v1/customizations/{customization_id}/train pour entraîner le modèle, cette zone a la valeur 100. Si le modèle n'est pas entièrement entraîné et available, la zone a la valeur 0.

Lorsque vous surveillez la formation ou la mise à niveau d'un modèle personnalisé, interrogez la valeur du champ status, et non celle du champ progress. Si l'opération échoue pour une raison quelconque, la valeur du champ « status » change pour refléter l'échec; la valeur du champ « progress » reste « 0 ».

Liste de tous les exemples de modèles de langue personnalisés

L'exemple suivant inclut le paramètre de requête language pour répertorier tous les modèles de langue personnalisés en anglais américain appartenant aux données d'identification spécifiées :

IBM Cloud

curl -X GET -u "apikey:{apikey}" \
"{url}/v1/customizations?language=en-US"

IBM Cloud Pak for Data IBM Software Hub

curl -X GET \
--header "Authorization: Bearer {token}" \
"{url}/v1/customizations?language=en-US"

Les données d'identification sont propriétaires de deux modèles de ce type. Le premier modèle est en attente de données ou en cours de traitement par le service. Le second modèle a terminé son entraînement et est prêt à l'emploi. Les deux modèles personnalisés sont basés sur des modèles de génération précédente ; le premier modèle personnalisé comporte deux versions disponibles.

{
  "customizations": [
    {
      "customization_id": "74f4807e-b5ff-4866-824e-6bba1a84fe96",
      "created": "2016-06-01T14:21:26.894Z",
      "updated": "2020-01-18T18:42:25.324Z",
      "language": "en-US",
      "dialect": "en-US",
      "versions": [
        "en-US_BroadbandModel.v2018-07-31",
        "en-US_BroadbandModel.v2020-01-16"
      ],
      "owner": "297cfd08-330a-22ba-93ce-1a73f454dd98",
      "name": "Example model",
      "description": "Example custom language model",
      "base_model_name": "en-US_BroadbandModel",
      "status": "pending",
      "progress": 0
    },
    {
      "customization_id": "8391f918-3b76-e109-763c-b7732fae4829",
      "created": "2017-12-02T18:51:37.291Z",
      "updated": "2017-12-02T20:02:10.624Z",
      "language": "en-US",
      "dialect": "en-US",
      "versions": [
        "en-US_BroadbandModel.v2017-11-15"
      ],
      "owner": "297cfd08-330a-22ba-93ce-1a73f454dd98",
      "name": "Example model two",
      "description": "Example custom language model two",
      "base_model_name": "en-US_BroadbandModel",
      "status": "available",
      "progress": 100
    }
  ]
}

Liste d'un exemple de modèle de langue personnalisé spécifique

L'exemple suivant renvoie des informations sur le modèle personnalisé avec l'ID de personnalisation (customization_id) spécifié :

IBM Cloud

curl -X GET -u "apikey:{apikey}" \
"{url}/v1/customizations/{customization_id}"

IBM Cloud Pak for Data IBM Software Hub

curl -X GET \
--header "Authorization: Bearer {token}" \
"{url}/v1/customizations/{customization_id}"

La réponse duplique les informations de l'exemple précédent :

{
  "customization_id": "74f4807e-b5ff-4866-824e-6bba1a84fe96",
  "created": "2016-06-01T14:21:26.894Z",
  "updated": "2020-01-18T18:42:25.324Z",
  "language": "en-US",
  "dialect": "en-US",
  "versions": [
    "en-US_BroadbandModel.v2018-07-31",
    "en-US_BroadbandModel.v2020-01-16"
  ],
  "owner": "297cfd08-330a-22ba-93ce-1a73f454dd98",
  "name": "Example model",
  "description": "Example custom language model",
  "base_model_name": "en-US_BroadbandModel",
  "status": "pending",
  "progress": 0
}

Réinitialisation d'un modèle de langue personnalisé

Pour réinitialiser un modèle personnalisé, utilisez la méthode POST /v1/customizations/{customization_id}/reset. Cette opération retire tous les corpus et les mots du modèle, rétablissant le modèle à l'état initial qu'il avait lors de sa création. Cette méthode ne supprime pas le modèle proprement dit ou les métadonnées telles que son nom et la langue associée. Cependant, lorsque vous réinitialisez un modèle, sa ressource de mots est vide et doit être recréée en ajoutant des corpus et des mots.

Réinitialiser un exemple de modèle de langue personnalisé

L'exemple suivant réinitialise le modèle personnalisé avec l'ID de personnalisation (customization_id) spécifié :

IBM Cloud

curl -X POST -u "apikey:{apikey}" \
"{url}/v1/customizations/{customization_id}/reset"

IBM Cloud Pak for Data IBM Software Hub

curl -X POST \
--header "Authorization: Bearer {token}" \
"{url}/v1/customizations/{customization_id}/reset"

Suppression d'un modèle de langue personnalisé

Utilisez la méthode DELETE /v1/customizations/{customization_id} pour supprimer un modèle de langue personnalisé dont vous n'avez plus besoin. La méthode supprime tous les corpus et mots associés au modèle personnalisé, y compris le modèle lui-même. Utilisez cette méthode avec précaution : un modèle personnalisé et ses données ne peuvent pas être récupérés une fois le modèle supprimé.

Supprimer un exemple de modèle de langue personnalisé

L'exemple suivant supprime le modèle personnalisé avec l'ID de personnalisation (customization_id) spécifié :

IBM Cloud

curl -X DELETE -u "apikey:{apikey}" \
"{url}/v1/customizations/{customization_id}"

IBM Cloud Pak for Data IBM Software Hub

curl -X DELETE \
--header "Authorization: Bearer {token}" \
"{url}/v1/customizations/{customization_id}"