---
sourceDocument: 호주 API 참조
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/api-reference

 Release :

    - australia

ft:locale :

    - ko-KR

ft:publication_title :

    - 호주 API 참조

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# GeniusResultContext - 범위 지정됨

# GeniusResultContext - 범위 지정됨 {#ariaid-title1}

* 릴리스 버전: Australia
* 
* 업데이트 날짜 2026년 03월 12일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 12분

GeniusResultContext API는 Genius 결과 구성의 컨텍스트에서 검색 쿼리 정보를 검색하는 메서드를 제공합니다.

이 API로 검색된 검색 쿼리 상세 정보를 사용하여 [GeniusResultAnswer](https://servicenow-prod.fluidtopics.net/QYy31vd8s7OmWh3K2EBzUA#GeniusResultAnswerScopedAPI "GeniusResultAnswer API는 Genius 결과 구성의 프로세서 스크립트에서 응답 객체를 작성하는 메서드를 제공합니다. 이 API로 생성된 답변은 Genius 결과 답변 카드를 채울 수 있는 검색 요청 또는 키-값 쌍 맵을 정의합니다.") API로 생성된 Genius 결과 답변 객체를 채울 수 있습니다.

`sn_ais` 네임스페이스 식별자를 사용하여 Genius 결과 서버 측 스크립트에서 이 API를 사용합니다. Genius 결과의 스크립팅 논리에 대한 자세한 내용은 [새 Genius 결과 구성 만들기](https://www.servicenow.com/docs/access?context=create-genius-results-config-ais&version=australia&pubname=australia-platform-administration&ft:locale=en-US)를 참조하십시오.

## GeniusResultContext - getMatchingDocuments() {#ariaid-title2}

Genius 결과 구성을 트리거하는 검색 쿼리에서 검색 결과 문서를 검색합니다.
Genius 결과 구성의 응답 프로세서 스크립트에서 이 방법을 사용하여 Genius 결과를 트리거하는 검색 쿼리에서 반환된 검색 결과 문서에서 필드 값을 검색합니다. GeniusResultAnswer API 메서드를 사용하여 검색 결과 문서의 필드로 Genius 결과 답변을 채울 수 있습니다.  
주:  
트리거하는 검색 쿼리에 대한 결과를 계산하기 전에 AI 검색 스크립트가 실행되기 때문에 이 메서드는 스크립트에서 AI Search request processor 호출될 때 결과를 반환하지 않습니다. 요청 프로세서 스크립트에서 이 메서드를 사용하지 마십시오.
{#GRContext-getMatchingDocuments__table_ehg_4gr_ywb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 안 함 |   |   |
[표 1. 매개변수]

{#GRContext-getMatchingDocuments__table_ehg_4gr_ywb} {#GRContext-getMatchingDocuments__table_fhg_4gr_ywb__entry__2}

| 유형 | 설명 |
|-|-|
| \[배열\] | 각 객체가 검색 쿼리와 일치하는 검색 결과 문서를 나타내는 객체의 배열입니다. 데이터 유형: 배열 [ { ".score": Number, ".table": "String", ".text": "String", ".title": "String", ".url": "String", "class_name": "String", "sys_id": "String", "<field_name>": <field_value> } ] 주: 검색 쿼리에 따라 나열된 이름-값 쌍 외에 검색 결과 문서의 AI 검색 인덱스 필드 중 일부가 객체에 나타날 수 있습니다. |
| \[배열\].. 점수 | 검색 쿼리의 컨텍스트에서 검색 결과 문서에 대해 계산된 관련성 점수입니다. 데이터 유형: 숫자 주: 이 이름-값 쌍의 이름은 인덱스의 점수 공통 필드와 구 AI 검색 분하기 위한 마침표로 시작합니다. |
| \[배열\].. 테이블 | 검색 결과 문서가 인덱싱된 테이블의 ServiceNow AI Platform 이름입니다. 데이터 유형: 문자열 주: 이 이름-값 쌍의 이름은 인덱스의 테이블 공통 필드와 구 AI 검색 분하기 위해 마침표로 시작합니다. |
| \[배열\].. 텍스트 | 검색 결과 문서에서 인덱싱된 텍스트입니다. 데이터 유형: 문자열 주: 이 이름-값 쌍의 이름은 인덱스의 텍스트 공통 필드와 구 AI 검색 분하기 위해 마침표로 시작합니다. |
| \[배열\].. 제목 | 검색 결과 문서의 인덱싱된 제목입니다. 데이터 유형: 문자열 주: 이 이름-값 쌍의 이름은 인덱스의 제목인 공통 필드와 구 AI 검색 분하기 위해 마침표로 시작합니다. |
| \[배열\].. URL | 검색 결과 문서의 URL입니다. 데이터 유형: 문자열 주: 이 이름-값 쌍의 이름은 인덱스의 url 공통 필드와 구 AI 검색 분하기 위해 마침표로 시작합니다. |
| \[배열\].class_name | 검색 결과 문서가 속한 하위 클래스입니다. 테이블 하위 클래스에 대한 자세한 내용은 다음 문서를 참조하십시오 [Table extension and classes](https://www.servicenow.com/docs/access?context=table-extension-and-classes&version=australia&pubname=australia-platform-administration&ft:locale=en-US). 데이터 유형: 문자열 |
| \[배열\].sys_id | 검색 결과 문서에 대한 Sys_id입니다. 데이터 유형: 문자열 |
| \[배열\].\<field_name\> | AI 검색 검색 결과 문서의 인덱스 필드입니다. 데이터 유형: 인덱스 필드의 데이터 유형입니다.AI 검색 |
[표 2. 반환]

{#GRContext-getMatchingDocuments__table_fhg_4gr_ywb}  
이 스크립트는 AI Search response processor 검색 쿼리와 일치하는 검색 결과 문서를 최대 3개까지 검색하고 그 중 지식 \[kb_knowledge\] 테이블에서 가져온 문서가 있는지 확인합니다. 지식 테이블에서 검색 결과 문서를 찾으면 함수는 UI가 사용자에게 표시할 수 있도록 해당 문서의 필드를 GeniusResultAnswer 객체에 추가합니다.

    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() {#ariaid-title3}

Genius 결과 구성을 트리거하는 검색 쿼리에서 원래 검색어를 검색합니다.
검색된 검색어를 사용하여 GeniusResultAnswer API 메서드를 통해 Genius 결과 답변을 채울 수 있습니다.
{#GRContext-getOriginalSearchPhrase__table_d5s_ntm_qnb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 안 함 |   |   |
[표 3. 매개변수]

{#GRContext-getOriginalSearchPhrase__table_d5s_ntm_qnb} {#GRContext-getOriginalSearchPhrase__table_e5s_ntm_qnb__entry__2}

| 유형 | 설명 |
|-|-|
| 문자열 | 검색 쿼리의 원래 용어입니다. 데이터 유형: 문자열 |
[표 4. 반환]

{#GRContext-getOriginalSearchPhrase__table_e5s_ntm_qnb}  
이 스크립트는 AI Search request processor 검색 쿼리의 원래 용어를 가져와 새 스니펫 검색을 위한 쿼리 용어로 사용합니다.

    function process(context) {
      var answer = new sn_ais.GeniusResultAnswer();

      var searchPhrase = context.getOriginalSearchPhrase();
      answer.setSearchPhrase(searchPhrase);
      answer.snippetSearch(true);

      return answer;
    }

## GeniusResultContext -- getPredictionResult() {#ariaid-title4}

Genius 결과 구성을 트리거하는 검색 쿼리에 대한 모델 예측 결과를 검색 NLU 합니다.
Genius 결과 구성의 요청 또는 응답 프로세서 스크립트에서 이 방법을 사용하여 트리거 검색 쿼리에 대해 탐지된 의도를 검색합니다. GeniusResultAnswer API 메서드를 사용하여 탐지된 의도의 상세 정보로 Genius 결과 답변을 채울 수 있습니다.
{#GRContext-getPredictionResult__table_z3s_4tm_qnb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 안 함 |   |   |
[표 5. 매개변수]

{#GRContext-getPredictionResult__table_z3s_4tm_qnb} {#GRContext-getPredictionResult__table_ajs_4tm_qnb__entry__2}

| 유형 | 설명 |
|-|-|
| \[배열\] | 각 객체가 검색 쿼리에 대한 모델 의도 예측 결과를 나타내는 NLU 객체의 배열입니다. 데이터 유형: 배열 [ { "intentName": "String", "result": {Object}, "solutionName": "String" } ] |
| \[배열\].intentName | 검색 쿼리에서 탐지된 모델 의도의 NLU 이름입니다. 데이터 유형: 문자열 |
| \[배열\].result | 검색 쿼리에 NLU 대한 모델 의도 예측 결과를 나타내는 객체입니다. 데이터 유형: 객체 "result": { "application": {Object}, "result": {Object}, "solutionLabel": "String", "solutionName": "String", "solutionType": "String", "type": "String", "version": Number } |
| \[배열\].결과.애플리케이션 | 예측 결과를 생성한 검색 애플리케이션의 메타데이터를 포함하는 객체입니다. 데이터 유형: 객체 "application": { "language": "String", "type": "String" } |
| \[배열\].result.application.language | 예측 결과를 생성한 애플리케이션의 ServiceNow AI Platform 언어 컨텍스트입니다. 데이터 유형: 문자열 |
| \[배열\].result.application.type | 예측 결과를 생성한 애플리케이션의 ServiceNow AI Platform 유형입니다. 데이터 유형: 문자열 |
| \[배열\].결과.결과 | 모델 의도 예측 결과에 대한 상세 정보를 포함하는 객체입니다 NLU . 데이터 유형: 객체 "result": { "entities": [Array], "intentName": "String", "intents": [Array], "nluModelName": "String", "score": Number } |
| \[배열\].결과.결과.엔터티 | 각 객체가 검색 쿼리에서 탐지된 모델 의도 엔터티를 NLU 나타내는 객체의 배열입니다. 데이터 유형: 배열 "entities": [ { "matchingSegments": [Array], "name": "String", "parts": [Array], "score": Number, "startingPosition": Number, "value": "String" } ] |
| \[배열\].결과.결과.엔터티.matchingSegments | 각 객체가 탐지된 NLU 엔터티의 일치하는 세그먼트를 나타내는 객체의 배열입니다. 데이터 유형: 배열 "matchingSegments": [ { "directMatch": Boolean "meta": {Object}, "value": "String" } ] |
| \[배열\].결과.결과.entities.matchingSegments.directMatch | 엔터티 일치 세그먼트가 NLU 엔터티 값과 정확히 일치하는지 여부를 나타내는 플래그입니다. |
| \[배열\].결과.결과.entities.matchingSegments.meta | 엔터티 일치 세그먼트에 대한 메타데이터를 나타내는 키-값 쌍 필드를 NLU 포함하는 객체입니다. 데이터 유형: 객체 "meta": { "augmentedBy": "String", "colMeta:first_name": "String", "colMeta:last_name": "String", "compositionStrategy": "String", "fieldName": "String", "searchPreProcessors": "String", "SUB_PHRASE.penalty": "String", "tableName": "String" } |
| \[배열\].결과.결과.entities.matchingSegments.값 | 엔터티 일치 세그먼트의 NLU 문자열 값입니다. 데이터 유형: 문자열 |
| \[Array\].result.result.entities.name | 엔터티에서 탐지된 NLU 엔터티 의 이름:\[NLU_model\].\[ 의도\]. \[entity_type\] 형식. 데이터 유형: 문자열 |
| \[Array\].result.result.entities.parts | 각 객체가 예측 결과에서 발견된 엔터티 부분을 NLU 나타내는 객체의 배열입니다. 데이터 유형: 배열 "parts": [ { "meta": {Object}, "value": "String" } ] |
| \[배열\].결과.결과.엔터티.부품.메타 | 엔터티 파트에 대한 메타데이터를 나타내는 키-값 쌍 필드를 포함하는 객체입니다 NLU . 데이터 유형: 객체 "meta": { "augmentedBy": "String", "colMeta:name": "String", "compositionStrategy": "String", "fieldName": "String", "searchPreProcessors": "String", "SUB_PHRASE.penalty": "String", "tableName": "String" } |
| \[배열\].결과.결과.엔터티.부품.값 | 엔터티 파트의 문자열 값입니다 NLU . 데이터 유형: 문자열 |
| \[배열\].결과.결과.엔터티.점수 | 탐지된 NLU 엔터티에 대한 신뢰도를 나타내는 0에서 1까지의 숫자 점수입니다. 데이터 유형: 숫자 |
| \[배열\].결과.결과.엔터티.startingPosition | 검색 NLU 된 엔터티가 시작되는 검색 쿼리의 문자 위치에 대한 숫자 인덱스입니다. 데이터 유형: 숫자 |
| \[배열\].결과.결과.엔터티.값 | 검색 쿼리에서 탐지된 문자열 NLU 값입니다. 데이터 유형: 문자열 |
| \[배열\].result.result.intentName | 검색 쿼리에서 탐지된 모델 의도의 NLU 이름입니다. 데이터 유형: 문자열 |
| \[배열\].result.result.intents | 각 객체가 검색 쿼리에서 탐지된 중첩된 NLU 모델 의도를 나타내는 객체의 배열입니다. 중첩된 의도 객체에는 상위 NLU 모델 의도 객체와 동일한 매개변수 이름과 데이터 유형이 포함됩니다. 데이터 유형: 배열 "intents": [ { "entities": [Array], "intentName": "String", "intents": [Array], "nluModelName": "String", "score": Number } ] |
| \[배열\].result.result.nluModelName | 예측 결과를 생성한 모델의 NLU 이름입니다. 데이터 유형: 문자열 |
| \[배열\].결과.결과.점수 | 모델 예측 결과에 대한 신뢰도를 나타내는 0에서 1까지의 숫자 점수입니다 NLU . 데이터 유형: 숫자 |
| \[배열\].result.solutionLabel | 예측 결과를 생성한 모델의 NLU 레이블입니다. 데이터 유형: 문자열 |
| \[배열\].result.solutionName | 예측 결과를 생성한 모델의 NLU 이름입니다. 데이터 유형: 문자열 |
| \[배열\].result.solutionType | 예측 결과를 생성한 모델의 NLU 유형입니다. 데이터 유형: 문자열 |
| \[배열\].결과.유형 | 예측 결과의 유형입니다. 데이터 유형: 문자열 |
| \[배열\].result.version | 예측 결과를 생성한 모델의 NLU 버전입니다. 데이터 유형: 숫자 |
| \[배열\].solutionName | 예측 결과를 생성한 모델의 NLU 이름입니다. 데이터 유형: 문자열 |
[표 6. 반환]

{#GRContext-getPredictionResult__table_ajs_4tm_qnb}  
이 AI Search request processor 스크립트는 검색 쿼리에 모델 예측 결과가 NLU 포함되어 있는지 확인합니다. 예측 결과를 찾으면 검색된 모든 catalogItem 엔터티에서 일치하는 세그먼트를 검색어로 추가합니다.

    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;
    }


