GeniusResultContext – Umfang

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 6 Minuten Lesedauer
  • Die GeniusResultContext Die API bietet Methoden zum Abrufen von Suchabfragekriterien aus dem Kontext einer Genius-Ergebniskonfiguration.

    Sie können Suchabfragedetails verwenden, die mit dieser API abgerufen wurden, um Genius-Ergebnisantwortobjekte auszufüllen, die mit erstellt wurden GeniusResultAnswer API.

    Verwenden Sie diese API in serverseitigen Genius-Ergebnisskripts mit sn_ais Namespace-Bezeichner. Weitere Informationen zur Skripting-Logik für Genius-Ergebnisse finden Sie unter Erstellen Sie eine neue Genius-Ergebniskonfiguration .

    GeniusResultContext – getMatchingDocuments()

    Ruft Suchergebnisdokumente aus der Suchabfrage ab, die Ihre Genius-Ergebniskonfiguration auslöst.

    Verwenden Sie diese Methode im Antwortprozessorskript einer Genius-Ergebniskonfiguration, um Feldwerte aus Suchergebnisdokumenten abzurufen, die von der Suchabfrage zurückgegeben werden, die Ihr Genius-Ergebnis auslöst. Sie können Genius-Ergebnisantworten mit Feldern aus den Suchergebnisdokumenten ausfüllen GeniusResultAnswer API-Methoden.
    Hinweis:
    Diese Methode gibt keine Ergebnisse zurück, wenn sie in aufgerufen wird AI Search request processorSkript, da das Skript vor ausgeführt wird KI-Suche Berechnet Ergebnisse für die auslösende Suchabfrage. Verwenden Sie diese Methode nicht in Ihren Anforderungsprozessorskripts.
    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 2. Ergebnisse
    Typ Beschreibung
    [Array]

    Array von Objekten, in denen jedes Objekt ein Suchergebnisdokument darstellt, das der Suchabfrage entspricht.

    Datentyp: Array

    [
      {
        ".score": Number,
        ".table": "String",
        ".text": "String",
        ".title": "String",
        ".url": "String",
        "class_name": "String",
        "sys_id": "String",
        "<field_name>": <field_value>
      }
    ]
    Hinweis:
    Abhängig von der Suchabfrage werden einige der Suchergebnisdokumente verwendet KI-Suche Indexfelder können im Objekt zusätzlich zu den aufgeführten Name-Wert-Paaren angezeigt werden.
    [Array]..Punktzahl

    Relevanzpunktzahl, die für das Suchergebnisdokument im Kontext der Suchabfrage berechnet wird.

    Datentyp: Zahl

    Hinweis:
    Der Name für dieses Name-Wert-Paar beginnt mit einem Punkt, um es von zu unterscheiden KI-Suche Index Punktzahl Allgemeines Feld.
    [Array]..Tabelle

    Name des ServiceNow AI Platform Tabelle, aus der das Suchergebnisdokument indiziert wurde.

    Datentyp: Zeichenfolge

    Hinweis:
    Der Name für dieses Name-Wert-Paar beginnt mit einem Punkt, um es von zu unterscheiden KI-Suche Index Tabelle Allgemeines Feld.
    [Array]..Text

    Indizierter Text aus dem Suchergebnisdokument.

    Datentyp: Zeichenfolge

    Hinweis:
    Der Name für dieses Name-Wert-Paar beginnt mit einem Punkt, um es von zu unterscheiden KI-Suche Index Text Allgemeines Feld.
    [Array]..Titel

    Indizierter Titel für das Suchergebnisdokument.

    Datentyp: Zeichenfolge

    Hinweis:
    Der Name für dieses Name-Wert-Paar beginnt mit einem Punkt, um es von zu unterscheiden KI-Suche Index Titel Allgemeines Feld.
    [Array]..url

    URL für das Suchergebnisdokument.

    Datentyp: Zeichenfolge

    Hinweis:
    Der Name für dieses Name-Wert-Paar beginnt mit einem Punkt, um es von zu unterscheiden KI-Suche Index url Allgemeines Feld.
    [Array].class_Name

    Die untergeordnete Klasse, zu der das Suchergebnisdokument gehört. Weitere Informationen zu untergeordneten Tabellenklassen finden Sie unter Table extension and classes.

    Datentyp: Zeichenfolge

    [Array].sys_ID

    SYS_ID für das Suchergebnisdokument.

    Datentyp: Zeichenfolge

    [Array].<field_name>

    KI-Suche Indexfeld aus dem Suchergebnisdokument.

    Datentyp: Der Datentyp des KI-Suche Indexfeld.

    Dies AI Search response processorDas Skript ruft bis zu drei Suchergebnisdokumente ab, die mit der Suchabfrage übereinstimmen, und überprüft, ob eines davon aus der Tabelle „Wissen“ [kb_Knowledge] stammt. Wenn ein Suchergebnisdokument aus der Tabelle „Wissen“ gefunden wird, fügt die Funktion die Felder dieses Dokuments zu hinzu GeniusResultAnswer Objekt, damit die Anwenderoberfläche sie dem Anwender anzeigen kann.

    function process(context) {
      var answer = new sn_ais.GeniusResultAnswer();
      var matchingDocuments = context.getMatchingDocuments();
      if (matchingDocuments.length > 1) {
        for (var i = 0; i < 3; i++) {
          var currentDocument = matchingDocuments[i];
          if (currentDocument['.table'] == 'kb_knowledge') {
            var gr = new GlideRecord("kb_knowledge");
            if (gr.get(currentDocument['sys_id'])) {
              answer.addDataMap({
                "number": currentDocument['number'],
                "url": currentDocument['.url'],
                "title": currentDocument['.title']
              });
            }
          }
          break;
        }
      }
      return answer;
    }

    GeniusResultContext – getOriginalSearchPhrase()

    Ruft die ursprünglichen Suchbegriffe aus der Suchabfrage ab, die Ihre Genius-Ergebniskonfiguration auslöst.

    Sie können abgerufene Suchbegriffe verwenden, um Genius-Ergebnisantworten mit auszufüllen GeniusResultAnswer API-Methoden.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    Zeichenfolge

    Ursprüngliche Begriffe aus der Suchabfrage.

    Datentyp: Zeichenfolge

    Dies AI Search request processorDas Skript ruft die ursprünglichen Begriffe der Suchabfrage ab und verwendet sie als Abfragebegriffe für eine neue Fragmentsuche.

    function process(context) {
      var answer = new sn_ais.GeniusResultAnswer();
    
      var searchPhrase = context.getOriginalSearchPhrase();
      answer.setSearchPhrase(searchPhrase);
      answer.snippetSearch(true);
    
      return answer;
    }

    GeniusResultContext – getPredictionResult()

    Ruft Ab NLU Modellvorhersageergebnisse für die Suchabfrage, die Ihre Genius-Ergebniskonfiguration auslöst.

    Verwenden Sie diese Methode im Anforderungs- oder Antwortprozessorskript einer Genius-Ergebniskonfiguration, um die für die auslösende Suchabfrage erkannte Absicht abzurufen. Mit können Sie Genius-Ergebnisantworten mit Details aus der erkannten Absicht ausfüllen GeniusResultAnswer API-Methoden.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 6. Ergebnisse
    Typ Beschreibung
    [Array]

    Array von Objekten, in denen jedes Objekt einen darstellt NLU Ergebnis der Modellabsichtsvorhersage für die Suchabfrage.

    Datentyp: Array

    [
      {
        "intentName": "String",
        "result": {Object},
        "solutionName": "String"
      }
    ]
    [Array].intentName

    Name des NLU Modellabsicht in der Suchabfrage erkannt.

    Datentyp: Zeichenfolge

    [Array].Ergebnis

    Objekt, das darstellt NLU Ergebnis der Modellabsichtsvorhersage für die Suchabfrage.

    Datentyp: Objekt

    "result": {
      "application": {Object},
      "result": {Object},
      "solutionLabel": "String",
      "solutionName": "String",
      "solutionType": "String",
      "type": "String",
      "version": Number
    }
    [Array].Ergebnis.Anwendung

    Objekt mit Metadaten für die Suchanwendung, die das Vorhersageergebnis generiert hat.

    Datentyp: Objekt

    "application": {
      "language": "String",
      "type": "String"
    }
    [Array].Ergebnis.Anwendung.Sprache

    Sprachkontext für ServiceNow AI Platform Anwendung, die das Vorhersageergebnis erzeugt hat.

    Datentyp: Zeichenfolge

    [Array].Ergebnis.Anwendung.Typ

    Typ des ServiceNow AI Platform Anwendung, die das Vorhersageergebnis erzeugt hat.

    Datentyp: Zeichenfolge

    [Array].Ergebnis.Ergebnis

    Objekt, das Details für enthält NLU Ergebnis der Modellabsichtsvorhersage.

    Datentyp: Objekt

    "result": {
      "entities": [Array],
      "intentName": "String",
      "intents": [Array],
      "nluModelName": "String",
      "score": Number
    }
    [Array].Ergebnis.Ergebnis.Entitäten

    Array von Objekten, in denen jedes Objekt einen darstellt NLU Entität der Modellabsicht in der Suchabfrage erkannt.

    Datentyp: Array

    "entities": [
      {
        "matchingSegments": [Array],
        "name": "String",
        "parts": [Array],
        "score": Number,
        "startingPosition": Number,
        "value": "String"
      }
    ]
    [Array].Ergebnis.Entitäten.übereinstimmende Segmente

    Array von Objekten, in denen jedes Objekt ein übereinstimmendes Segment des erkannten darstellt NLU Entität.

    Datentyp: Array

    "matchingSegments": [
      {
        "directMatch": Boolean
        "meta": {Object},
        "value": "String"
      }
    ]
    [Array].Ergebnis.Entitäten.MatchingSegments.directMatch

    Kennzeichnung, die angibt, ob NLU Das Entitätsübereinstimmungssegment stellt eine genaue Übereinstimmung für den Entitätswert dar.

    [Array].Ergebnis.Entitäten.MatchingSegmente.Meta

    Objekt mit Schlüssel-Wert-Paarfeldern, die Metadaten für darstellen NLU Entitätsübereinstimmendes Segment.

    Datentyp: Objekt

    "meta": {
      "augmentedBy": "String",
      "colMeta:first_name": "String",
      "colMeta:last_name": "String",
      "compositionStrategy": "String",
      "fieldName": "String",
      "searchPreProcessors": "String",
      "SUB_PHRASE.penalty": "String",
      "tableName": "String"
    }
    [Array].Ergebnis.Entitäten.MatchingSegmente.Wert

    Zeichenfolgenwert von NLU Entitätsübereinstimmendes Segment.

    Datentyp: Zeichenfolge

    [Array].result.result.entities.name

    Name für erkannte NLU Entität, in Entität:[NLU_model].[Absicht].[Entity_type] Format.

    Datentyp: Zeichenfolge

    [Array].result.result.entities.parts

    Array von Objekten, in denen jedes Objekt einen darstellt NLU Entitätsteil im Vorhersageergebnis gefunden.

    Datentyp: Array

    "parts": [
      {
        "meta": {Object},
        "value": "String"
      }
    ]
    [Array].Ergebnis.Entitäten.Teile.Meta

    Objekt mit Schlüssel-Wert-Paarfeldern, die Metadaten für darstellen NLU Entitätsteil.

    Datentyp: Objekt

    "meta": {
      "augmentedBy": "String",
      "colMeta:name": "String",
      "compositionStrategy": "String",
      "fieldName": "String",
      "searchPreProcessors": "String",
      "SUB_PHRASE.penalty": "String",
      "tableName": "String"
    }
    [Array].Ergebnis.Entitäten.Teile.Wert

    Zeichenfolgenwert von NLU Entitätsteil.

    Datentyp: Zeichenfolge

    [Array].Ergebnis.Ergebnis.Entitäten.Punktzahl

    Numerische Punktzahl von 0 bis 1, die die Konfidenz für den erkannten angibt NLU Entität.

    Datentyp: Zahl

    [Array].Ergebnis.Ergebnis.Entitäten.Startposition

    Numerischer Index für die Zeichenposition in der Suchabfrage, an der erkannt wurde NLU Entität beginnt.

    Datentyp: Zahl

    [Array].Ergebnis.Ergebnis.Entitäten.Wert

    Zeichenfolgenwert von NLU In der Suchabfrage erkannt.

    Datentyp: Zeichenfolge

    [Array].result.result.intentName

    Name des NLU Modellabsicht in der Suchabfrage erkannt.

    Datentyp: Zeichenfolge

    [Array].result.result.intents

    Array von Objekten, in denen jedes Objekt ein geschachteltes darstellt NLU Modellabsicht in der Suchabfrage erkannt.

    Geschachtelte Absichtsobjekte enthalten dieselben Parameternamen und Datentypen wie das übergeordnete Element NLU Modellabsichtsobjekt.

    Datentyp: Array

    "intents": [
      {
        "entities": [Array],
        "intentName": "String",
        "intents": [Array],
        "nluModelName": "String",
        "score": Number
      }
    ]
    [Array].result.result.nluModelName

    Name des NLU Modell, das das Vorhersageergebnis erzeugt hat.

    Datentyp: Zeichenfolge

    [Array].Ergebnis.Ergebnis.Punktzahl

    Numerische Punktzahl von 0 bis 1, die die Konfidenz für angibt NLU Modellvorhersageergebnis.

    Datentyp: Zahl

    [Array].result.solutionLabel

    Bezeichnung für NLU Modell, das das Vorhersageergebnis erzeugt hat.

    Datentyp: Zeichenfolge

    [Array].result.SolutionName

    Name für NLU Modell, das das Vorhersageergebnis erzeugt hat.

    Datentyp: Zeichenfolge

    [Array].result.solutionType

    Geben Sie für ein NLU Modell, das das Vorhersageergebnis erzeugt hat.

    Datentyp: Zeichenfolge

    [Array].Ergebnis.Typ

    Typ des Vorhersageergebnisses.

    Datentyp: Zeichenfolge

    [Array].Ergebnis.Version

    Version von NLU Modell, das das Vorhersageergebnis erzeugt hat.

    Datentyp: Zahl

    [Array].SolutionName

    Name des NLU Modell, das das Vorhersageergebnis erzeugt hat.

    Datentyp: Zeichenfolge

    Dies AI Search request processorDas Skript überprüft, ob die Suchabfrage einen enthält NLU Modellvorhersageergebnis. Wenn ein Vorhersageergebnis gefunden wird, werden die übereinstimmenden Segmente aus allen erkannten katalogItem-Entitäten als Suchbegriffe hinzugefügt.

    function process(context) {
      var answer = new sn_ais.GeniusResultAnswer();
    
      answer.setTable('sc_cat_item');
      answer.setSearchLimit(2);
      var predictionResult = context.getPredictionResult();
      if (predictionResult && predictionResult.length == 1) {
        var detail = predictionResult[0];
        if (detail['result'] && detail['result']['entities']) {
          var entities = detail['result']['entities'];
          for (var i = 0; i < entities.length; i++) {
            if (entities[i]['name'].endsWith('catalogItem')) {
              var matchingSegments = entities[i]['matchingSegments'];
              for (var j = 0; j < matchingSegments.length; j++)
                answer.addSearchPhrases([matchingSegments[j]['value']]);
            }
          }
        }
      }
    
      return answer;
    }