EncoderVersion : global

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 6 minutes de lecture
  • L’API EncoderVersion fournit un objet pouvant contenir des scripts utilisé dans Intelligence prédictive les magasins.

    Ce L’API nécessite le module d’extension Intelligence prédictive (com.glide.platform_ml) et est fournie dans l’espace de noms sn_ml .

    Cette API est utilisée pour travailler avec les versions d’encodeur basées sur les objets d’API Encoder dans le magasin Encoder.

    Le système active la version la plus récente de la codeur à la fin de la formation et n’autorise qu’une seule version à être active à la fois. Toutefois, vous pouvez activer n’importe quelle version précédemment formée que vous souhaitez utiliser pour faire des prédictions.

    Les méthodes de cette API sont accessibles à l’aide des méthodes Encoder suivantes :

    EncoderVersion : getProperties()

    Obtient les propriétés de et le numéro de versionl’objet codeur.

    Tableau 1. Paramètres
    Nom Type Description
    Aucun
    Tableau 2. Renvoie
    Type Description
    Objet Contenu du jeu de données et détails de l’encodeur . Les résultats varient selon la configuration des propriétés de l’objet.
    {
      "algorithmConfig" : {Object},
      "datasetsProperties": [Array],
      "domainName": "String",
      "isActive": "String",
      "label": "String",
      "name": "String",
      "predictedFieldName": "String",
      "processingLanguage": "String",
      "scope": "String",
      "stopwords": [Array],
      "trainingFrequency": "String",
      "versionNumber": "Number"
    }
    <Object>.algorithmConfig Facultatif. Objet JavaScript contenant les propriétés de configuration de l’algorithme.
    'algorithmConfig' : {
      "algorithm": "String"
    }

    Type de données : Objet.

    <Object>.algorithmConfig.algorithm Nom de l’algorithme pour l’entraînement de cet encodeur.
    Valeurs possibles :
    • paravec: Intégration de mots vectoriels de paragraphe.
    • tf-idf: texte basé sur la fréquence de terme : fréquence de document inverse (TF-IDF).

    Type de données : chaîne.

    <Object>.datasetsProperties

    Liste des propriétés DatasetDefinition() associées à l’encodeur.

    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }

    Type de données : tableau.

    <Object>.datasetsProperties.tableName Nom de la table pour l’ensemble de données. Par exemple, « tableName » : « Incident ».

    Type de données : chaîne.

    <Object>.datasetsProperties.fieldNames Liste des noms de champs de la table spécifiée en tant que chaînes. Par exemple, « fieldNames » : ["short_description », « priority"].

    Type de données : tableau.

    <Object>.datasetsProperties.fieldNames.fieldDetails Liste des objets JavaScript qui spécifient les propriétés du champ.
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    Type de données : tableau.

    <Object>.datasetsProperties.fieldNames.fieldDetails.<object>. nom Nom du champ définissant le type d’informations auquel limiter cet ensemble de données.

    Type de données : chaîne.

    <Object>.datasetsProperties.fieldDetails.<object>. type Type de champ d’apprentissage machine.

    Type de données : chaîne.

    <Object>.datasetsProperties.fieldDetails.encodedQuery Chaîne de requête codée au format Glide standard. Reportez-vous à la section Chaînes de requêtes codées.

    Type de données : chaîne.

    <Object>.domainName Nom du domaine associé à cet ensemble de données. Voir Séparation de domaine et Intelligence prédictive.

    Type de données : chaîne.

    <Object>.isActive Marqueur indiquant si cette version est active.
    Valeurs valides :
    • true : la version est active.
    • false : la version n’est pas active.

    Type de données : chaîne

    <Object>.étiquette Identifie la tâche de prédiction.
    {
      "label": "my first prediction"
    }

    Type de données : chaîne.

    <Object>.nom Nom affecté par le système.

    Type de données : chaîne.

    <Object>.predictedFieldName Identifie un champ à former pour des raisons de prévisibilité.

    Type de données : chaîne.

    <Object>.processingLanguage Traitement du langage au format de code de langue ISO 639-1 à deux lettres.

    Type de données : chaîne.

    <Object>.portée Périmètre de l’objet. Actuellement, la seule valeur valide est global.

    Type de données : chaîne

    <Object>.mots vides Facultatif. Liste prédéfinie de chaînes que le système génère automatiquement en fonction du language paramètre de propriété. Pour plus d’informations, reportez-vous à la section Créer une liste de mots vides personnalisés.

    Type de données : tableau.

    <Object>.trainingFrequency Fréquence de reformation du modèle.
    Valeurs possibles :
    • every_30_days
    • every_60_days
    • every_90_days
    • every_120_days
    • every_180_days
    • run_once
    Par défaut : run_once

    Type de données : chaîne.

    <Object>.numérodedeversion Numéro de version du Objet codeur.

    Type de données : chaîne.

    L’exemple suivant récupère les propriétés de la version d’objet active dans le magasin.

    // Get properties
    var mlEncoder = sn_ml.EncoderStore.get('ml_incident_categorization');
    
    gs.print(JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getProperties()), null, 2));

    Sortie :

    *** Script: {
      "datasetsProperties": [
        {
          "tableName": "incident",
          "fieldNames": [
            "assignment_group",
            "short_description",
            "description"
          ],
          "encodedQuery": "activeANYTHING"
        }
      ],
      "domainName": "global",
      "isActive": "true",
      "label": "my encoder definition",
      "name": "ml_x_snc_global_global_my_encoder_definition",
      "processingLanguage": "en",
      "stopwords": [
        "Default English Stopwords"
      ],
      "versionNumber": "1"
    }

    EncoderVersion : getSentenceVectors(entrée de tableau)

    Renvoie des vecteurs pour chaque phrase d’entrée.

    Tableau 3. Paramètres
    Nom Type Description
    entrée Tableau Tableau de chaînes de caractères en tant que phrases à partir desquelles recevoir des vecteurs.
    Tableau 4. Renvoie
    Type Description
    Chaîne Tableau de vecteurs de phrases.

    L’exemple suivant montre comment retourner un vecteur pour une seule phrase.

    var myEncoderName = 'GloVe';
    
    var myEncoder = sn_ml.EncoderStore.get(myEncoderName);
    
    var input = ["I like to code."];
    
    var vectors = myEncoder.getActiveVersion().getSentenceVectors(input);
    
    gs.print(vectors);
    

    Sortie :

    *** Script: [-0.16243751347064972,0.30614474415779114,0.08489049971103668,
    -0.48100000619888306,-0.170997753739357,0.08779674768447876,-0.07848624140024185,-0.15123701095581055,
    -0.07843250036239624,-1.9505999088287354,0.3007825016975403,-0.07804800570011139,-0.04779449850320816,
    0.04803549498319626,0.09848674386739731,0.2427891194820404,-0.41138750314712524,0.10880374908447266,
     … ,
    0.21227750182151794,0.18478751182556152,-0.3113832473754883,-0.16560424864292145,0.09052124619483948]

    EncoderVersion : getSimilarWords(entrée de tableau, options d’objet)

    Renvoie des mots similaires à chaque mot d’entrée dans l’ordre décroissant de similarité.

    Tableau 5. Paramètres
    Nom Type Description
    entrée Tableau Tableau de mots pour lesquels rechercher des mots similaires.
    options Objet Carte pour affiner les résultats.
    { "topN":"String" }
    options.topN Chaîne Si fourni, renvoie les meilleurs résultats jusqu’au nombre spécifié de mots. Par exemple, utilisez « 10 » pour renvoyer les 10 mots les plus similaires.
    Tableau 6. Renvoie
    Type Description
    Tableau Liste des éléments contenant les mots similaires pour le mot d’entrée dans la position correspondante. Ces mots similaires sont représentés par un tableau de paires au format [mot, score de similarité].

    L’exemple suivant montre comment obtenir des mots similaires à l’aide de l’encodeur GloVe .

    var myEncoderName = 'GloVe';
    var myEncoder = sn_ml.EncoderStore.get(myEncoderName);
    var input =  ["apple"];
    var options = {"topN":"5"};
    gs.print(myEncoder.getActiveVersion().getSimilarWords(input, options));	

    Sortie :

    *** Script: [[["iphone",0.5987],["macintosh",0.5836],["ipod",0.5761],["microsoft",0.5664],["ipad",0.5628]]]

    EncoderVersion : getStatus(Boolean includeDetails)

    Obtient l’état d’achèvement de la formation.

    Tableau 7. Paramètres
    Nom Type Description
    includeDetails (en anglais seulement) Booléen Marqueur indiquant s’il faut renvoyer l’état details.
    Valeurs valides :
    • true : renvoyer des détails supplémentaires.
    • false : ne renvoyez pas de détails supplémentaires.

    Valeur par défaut : false

    Tableau 8. Renvoie
    Type Description
    Objet Objet JavaScript contenant des informations sur l’état de la formation pour un objet Encoder .
    {
      "state": "String",
      "percentComplete": "Number as a String",
      "hasJobEnded": "Boolean value as a String",
      "details": {Object}
    }
    <Object>.état État d’achèvement de la formation. Si la tâche de formation atteint un état terminal, la tâche ne quitte pas cet état. Si l’état est final, la hasJobEnded propriété est définie sur true.
    Valeurs possibles :
    • fetching_files_for_training
    • preparing_data
    • retry
    • solution_cancelled (terminal)
    • solution_complete (terminal)
    • solution_error (terminal)
    • solution_incomplete
    • training_request_received
    • training_request_timed_out (terminal)
    • training_solution
    • uploading_solution
    • waiting_for_training

    Type de données : chaîne

    <Object>.hasJobEnded Marqueur indiquant si la formation est terminée.
    Valeurs valides :
    • true : la formation est terminée.
    • false : la formation est incomplète.

    Type de données : valeur booléenne sous forme de chaîne

    <Object>.percentComplete Pourcentage de formation terminée. Si le pourcentage d’achèvement est inférieur à 100, la tâche peut être dans un état terminal. Par exemple, si la formation expire.

    Type de données : Nombre sous forme de chaîne

    Plage : 0 à 100

    <Object>.Détails Objet contenant une liste de détails de formation supplémentaires.

    Type de données : objet

    L’exemple suivant montre un résultat correct une formation terminée.

    // Get status
    var mlEncoder = sn_ml.EncoderStore.get('ml_incident_categorization');
    
    gs.print(JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getStatus(true), null, 2)));

    Sortie :

    {
     "state":"solution_complete",
     "percentComplete":"100",
     "hasJobEnded":"true",
     "details":{"stepLabel":"Encoder Complete"} // This information is only returned if getStatus(true);
    }

    L’exemple suivant montre un résultat d’échec une fois la formation terminée.

    // Get status
    var encoderName = 'ml_x_snc_global_global_encoder';
    var mlEncoder = sn_ml.EncoderStore.get(encoderName);
    var trainingStatus = mlEncoder.getLatestVersion().getStatus();
    
    gs.print(JSON.stringify(JSON.parse(trainingStatus), null, 2));

    Sortie :

    {
     "state":"solution_error",
     "percentComplete":"100",
     "hasJobEnded":"true"
    }

    EncoderVersion : getVersionNumber()

    Obtient le numéro de version de un objet de solution.

    Tableau 9. Paramètres
    Nom Type Description
    Aucun
    Tableau 10. Renvoie
    Type Description
    Chaîne Numéro de version.

    L’exemple suivant montre comment obtenir un numéro de version.

    // Get version number
    var mlEncoder = sn_ml.EncoderStore.get('ml_incident_categorization');
    
    gs.print("Version number: "+JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getVersionNumber()), null, 2));

    Sortie :

    Version number: 1

    EncoderVersion : getWordVectors(entrée de tableau)

    Renvoie des vecteurs pour chaque mot d’entrée.

    Tableau 11. Paramètres
    Nom Type Description
    entrée Tableau Liste de chaînes en tant que mots à partir desquels recevoir des vecteurs.
    Tableau 12. Renvoie
    Type Description
    Tableau Liste de vecteurs pour chaque mot fourni.

    L’exemple suivant montre comment obtenir un vecteur à partir du mot bonjour.

    var myEncoderName = 'GloVe';
    var myEncoder = sn_ml.EncoderStore.get(myEncoderName);
    var input =  ["hello"];
    
    gs.print(myEncoder.getActiveVersion().getWordVectors(input));

    Sortie :

    *** Script: [[-0.337119996547699,-0.2169100046157837,-0.006636499892920256,
    -0.41624999046325684,-1.2554999589920044,-0.0284659992903471,-0.7219499945640564,
    -0.5288699865341187,0.0072085000574588776,0.3199700117111206,0.02942500077188015,
    -0.013236000202596188,0.4351100027561188,0.2571600079536438,0.3899500072002411,
     … ,
    0.3384299874305725,0.4055800139904022,0.18073000013828278,0.6424999833106995]]