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


---

# GeniusResultAnswer - 범위 지정됨

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

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

GeniusResultAnswer API는 Genius 결과 구성의 프로세서 스크립트에서 응답 객체를 작성하는 메서드를 제공합니다. 이 API로 생성된 답변은 Genius 결과 답변 카드를 채울 수 있는 검색 요청 또는 키-값 쌍 맵을 정의합니다.

[GeniusResultContext](https://servicenow-prod.fluidtopics.net/viuu3Luc7QwRFNoC0CtlRQ#GeniusResultContextScopedAPI "GeniusResultContext API는 Genius 결과 구성의 컨텍스트에서 검색 쿼리 정보를 검색하는 메서드를 제공합니다.") API를 사용하여 Genius 결과 구성의 컨텍스트에서 검색된 쿼리 상세 정보로 응답 객체를 채울 수 있습니다.  
대답 객체를 만들기 위해 호출해야 하는 GeniusResultAnswer API 메서드는 스크립트에 사용하는 Genius 결과 구성 양식 필드에 AI 검색 따라 다릅니다.

* Genius 결과 구성의 AI Search request processor 필드에서 스크립팅하는 경우 setTable() 메서드와 setSearchPhrase(), addSearchPhrases() 또는 setEncodedQuery() 메서드 중 하나를 호출해야 합니다. 이 사용 사례와 관련이 없는 addDataMap()을 제외한 다른 모든 메서드는 선택 사항입니다.
* Genius 결과 구성의 AI Search response processor 필드에서 스크립팅하는 경우 addDataMap() 메서드를 호출해야 합니다. 이 사용 사례와 관련된 다른 방법은 없습니다.

{#GeniusResultAnswerScopedAPI__ul_zbx_52j_snb}`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)를 참조하십시오.

## GeniusResultAnswer -- addDataMap(객체 맵) {#ariaid-title2}

Genius 결과 구성의 스크립트에 임의의 키-값 쌍 필드를 사용하여 Genius 결과 답변을 정의합니다 AI Search response processor . 모든 공개 ServiceNow AI Platform API를 활용하여 이러한 필드를 생성할 수 있습니다.
주:  
Genius AI Search response processor 결과 구성의 필드에서 스크립팅할 때 이 메서드를 호출해야 합니다. 이 메서드를 호출하지 않으면 트리거될 때 Genius 결과가 응답을 반환하지 않습니다.

이 메서드를 두 번 이상 호출하여 단일 AI Search response processor 스크립트에 여러 필드 맵을 추가할 수 있습니다. 각 필드 맵은 개별 Genius 결과 답변 카드를 채웁니다.
{#GRAnswer-addDataMap_O__table_bp3_3xm_qnb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 맵 | 객체 | 의 검색 쿼리 응답 AI 검색에 추가할 임의의 키-값 쌍 필드 집합을 정의합니다. 모든 필드 값은 문자열이어야 합니다. { "fieldName1": String, "fieldName2": String } |
[표 1. 매개변수]

{#GRAnswer-addDataMap_O__table_bp3_3xm_qnb} {#GRAnswer-addDataMap_O__GRAnswer-returns-Boolean-tgroup__entry__2}{#GRAnswer-addDataMap_O__GRAnswer-returns-Boolean-row}

| 유형 | 설명 |
|-|-|
| 부울 | 메서드 호출이 성공했는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * true: 메서드 호출에 성공했습니다. * false: 메서드 호출에 실패했습니다. {#GRAnswer-addDataMap_O__ul_unq_dzn_vnb} |
[표 2. 반환]

{#GRAnswer-addDataMap_O__id_qyq_cg4_vnb}  
이 AI Search response processor 스크립트는 Genius 결과 대답 카드에 표시할 사용자 지정 제목 및 URL 키-값 쌍 필드를 답변 객체에 추가합니다.

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

      var customFieldMap = {
        "title": "My custom Genius Result answer",
        "url": "https://example.com/myGeniusResultLink"
      }

      answer.addDataMap(customFieldMap);

      return answer;
    }

## GeniusResultAnswer -- addSearchPhrases(배열 searchPhrases) {#ariaid-title3}

Genius AI Search request processor 결과 구성의 스크립트에 정의된 검색 쿼리에 용어를 추가합니다.
주:  
Genius 결과 구성의 AI Search request processor 필드에서 스크립팅할 때 setTable() 메서드와 setSearchPhrase(), addSearchPhrases() 또는 setEncodedQuery() 메서드 중 하나를 호출해야 합니다. 필요한 두 메서드를 모두 호출하지 않으면 트리거될 때 Genius 결과가 답변을 반환하지 않습니다.
{#GRAnswer-addSearchPhrases_A__table_tn5_jxm_qnb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| searchPhrases | 배열 | Genius 결과 구성의 AI Search request processor 스크립트에 정의된 검색 쿼리에 대한 검색어로 추가할 임의의 문자열 배열입니다. AI 검색 는 이러한 검색어를 OR 연산자로 구분된 것처럼 처리합니다. 예제: [ "Term": String, "Quoted phrase": String ] |
[표 3. 매개변수]

{#GRAnswer-addSearchPhrases_A__table_tn5_jxm_qnb} {#GRAnswer-addSearchPhrases_A__GRAnswer-returns-Boolean-tgroup__entry__2}{#GRAnswer-addSearchPhrases_A__GRAnswer-returns-Boolean-row}

| 유형 | 설명 |
|-|-|
| 부울 | 메서드 호출이 성공했는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * true: 메서드 호출에 성공했습니다. * false: 메서드 호출에 실패했습니다. {#GRAnswer-addSearchPhrases_A__ul_unq_dzn_vnb} |
[표 4. 반환]

{#GRAnswer-addSearchPhrases_A__id_qyq_cg4_vnb}  
이 AI Search request processor 스크립트는 <kbd class="ph userinput">Beth</kbd> 또는 <kbd class="ph userinput">Anglin</kbd>이라는 용어가 포함된 사용자 \[sys_user\] 테이블의 기록에 대한 검색 쿼리를 만듭니다.

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

      answer.setTable('sys_user');
      answer.addSearchPhrases(['Beth','Anglin']);

      return answer;
    }

## GeniusResultAnswer -- setEncodedQuery(문자열 쿼리) {#ariaid-title4}

Genius 결과 구성의 AI Search request processor 스크립트에 인코딩된 검색 쿼리를 지정합니다. 이 인코딩된 검색 쿼리의 결과는 Genius 결과 답변 카드로 표시됩니다.
주:  
Genius 결과 구성의 AI Search request processor 필드에서 스크립팅할 때 setTable() 메서드와 setSearchPhrase(), addSearchPhrases() 또는 setEncodedQuery() 메서드 중 하나를 호출해야 합니다. 필요한 두 메서드를 모두 호출하지 않으면 트리거될 때 Genius 결과가 답변을 반환하지 않습니다.
{#GRAnswer-setEncodedQuery_S__table_awn_kxm_qnb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 쿼리 | 문자열 | Genius 결과 구성의 AI Search request processor 스크립트에서 보낼 AI 검색 인코딩된 검색 쿼리입니다. |
[표 5. 매개변수]

{#GRAnswer-setEncodedQuery_S__table_awn_kxm_qnb} {#GRAnswer-setEncodedQuery_S__GRAnswer-returns-Boolean-tgroup__entry__2}{#GRAnswer-setEncodedQuery_S__GRAnswer-returns-Boolean-row}

| 유형 | 설명 |
|-|-|
| 부울 | 메서드 호출이 성공했는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * true: 메서드 호출에 성공했습니다. * false: 메서드 호출에 실패했습니다. {#GRAnswer-setEncodedQuery_S__ul_unq_dzn_vnb} |
[표 6. 반환]

{#GRAnswer-setEncodedQuery_S__id_qyq_cg4_vnb}  
이 AI Search request processor 스크립트는 사용자 \[sys_user\] 테이블에 대해 인코딩된 검색 쿼리를 만듭니다. 최종 쿼리는 사용자의 원래 검색 쿼리에서 검색된 엔터티에서 생성된 여러 하위 쿼리를 결합합니다.

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

      answer.setTable('sys_user');
      answer.setSearchLimit(2);
      answer.spellCheck(false);
      var queries = [];
      var matchingSegments;
      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('personName')) {
              matchingSegments = entities[i]['matchingSegments'];
              for (var j = 0; j < matchingSegments.length; j++)
                answer.addSearchPhrases([matchingSegments[j]['value']]);
            } else if (entities[i]['name'].endsWith('cityLocation')) {
              matchingSegments = entities[i]['matchingSegments'];
              if (matchingSegments && matchingSegments.length > 0)
                queries.push('location.nameLIKE' + matchingSegments[0]['value']);
            } else if (entities[i]['name'].endsWith('departmentName')) {
              matchingSegments = entities[i]['matchingSegments'];
              if (matchingSegments && matchingSegments.length > 0)
                queries.push('department.nameLIKE' + matchingSegments[0]['value']);
            } else if (entities[i]['name'].endsWith('jobTitle')) {
              matchingSegments = entities[i]['matchingSegments'];
              if (matchingSegments && matchingSegments.length > 0)
                queries.push('titleLIKE' + matchingSegments[0]['value']);
            }
          }
        }
      }

      if (queries.length > 0)
        answer.setEncodedQuery(queries.join('^'));

      return answer;
    }

## GeniusResultAnswer -- setSearchLimit(Number searchLimit) {#ariaid-title5}

Genius 결과 구성의 AI Search request processor 스크립트에 정의된 검색 쿼리에 대해 반환되는 최대 결과 수를 제한합니다. 기본적으로 검색 쿼리는 최대 3개의 결과를 반환합니다.
{#GRAnswer-setSearchLimit_N__table_yq1_lxm_qnb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 검색 제한 | 번호 | Genius 결과 구성의 AI Search request processor 스크립트에 정의된 검색 쿼리에 대해 반환할 최대 검색 결과 수에 대한 양의 정수 값입니다. 3보다 큰 값은 적용되지 않습니다. 기본값: 3 |
[표 7. 매개변수]

{#GRAnswer-setSearchLimit_N__table_yq1_lxm_qnb} {#GRAnswer-setSearchLimit_N__GRAnswer-returns-Boolean-tgroup__entry__2}{#GRAnswer-setSearchLimit_N__GRAnswer-returns-Boolean-row}

| 유형 | 설명 |
|-|-|
| 부울 | 메서드 호출이 성공했는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * true: 메서드 호출에 성공했습니다. * false: 메서드 호출에 실패했습니다. {#GRAnswer-setSearchLimit_N__ul_unq_dzn_vnb} |
[표 8. 반환]

{#GRAnswer-setSearchLimit_N__id_qyq_cg4_vnb}  
이 AI Search request processor 스크립트는 <kbd class="ph userinput">랩톱</kbd> 이라는 용어가 포함된 카탈로그 항목 \[sc_cat_item\] 테이블에서 기록을 검색하고 최대 2개의 결과를 반환합니다.

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

      answer.setTable('sc_cat_item');
      answer.setSearchPhrase('laptop');
      answer.setSearchLimit(2);

      return answer;
    }

## GeniusResultAnswer -- setSearchPhrase(String searchPhrase) {#ariaid-title6}

Genius 결과 구성의 AI Search request processor 스크립트에 정의된 검색 쿼리에 대한 용어를 지정합니다.
주:  
Genius 결과 구성의 AI Search request processor 필드에서 스크립팅할 때 setTable() 메서드와 setSearchPhrase(), addSearchPhrases() 또는 setEncodedQuery() 메서드 중 하나를 호출해야 합니다. 필요한 두 메서드를 모두 호출하지 않으면 트리거될 때 Genius 결과가 답변을 반환하지 않습니다.
{#GRAnswer-setSearchPhrase_S__table_icm_lxm_qnb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| searchPhrase | 문자열 | Genius 결과 구성의 AI Search request processor 스크립트에 정의된 검색 쿼리에 사용할 용어입니다. Genius 결과 구성을 트리거한 쿼리의 검색어를 유지하려면 이 매개변수를 GeniusResultContext.getOriginalSearchPhrase() 메서드에서 반환한 문자열 값으로 설정합니다. |
[표 9. 매개변수]

{#GRAnswer-setSearchPhrase_S__table_icm_lxm_qnb} {#GRAnswer-setSearchPhrase_S__GRAnswer-returns-Boolean-tgroup__entry__2}{#GRAnswer-setSearchPhrase_S__GRAnswer-returns-Boolean-row}

| 유형 | 설명 |
|-|-|
| 부울 | 메서드 호출이 성공했는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * true: 메서드 호출에 성공했습니다. * false: 메서드 호출에 실패했습니다. {#GRAnswer-setSearchPhrase_S__ul_unq_dzn_vnb} |
[표 10. 반환]

{#GRAnswer-setSearchPhrase_S__id_qyq_cg4_vnb}  
이 AI Search request processor 스크립트는 사용자 \[sys_user\] 테이블에서 <kbd class="ph userinput">Anglin</kbd>이라는 용어가 포함된 기록에 대한 검색 쿼리를 만듭니다.

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

      answer.setTable('sys_user');
      answer.setSearchPhrase('Anglin');

      return answer;
    }

## GeniusResultAnswer -- setTable(문자열 테이블) {#ariaid-title7}

Genius 결과 구성의 AI Search request processor 스크립트에 정의된 검색 쿼리를 특정 테이블로 제한합니다. 쿼리는 지정된 테이블의 검색 결과만 Genius 결과 답변 카드로 반환합니다.
주:  
Genius 결과 구성의 AI Search request processor 필드에서 스크립팅할 때 이 메서드와 setSearchPhrase(), addSearchPhrases() 또는 setEncodedQuery() 메서드 중 하나를 호출해야 합니다. 필요한 두 메서드를 모두 호출하지 않으면 트리거될 때 Genius 결과가 답변을 반환하지 않습니다.
{#GRAnswer-setTable_S__table_jgx_lxm_qnb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 테이블 | 문자열 | ServiceNow AI Platform 테이블 이름입니다. 이 테이블의 인덱싱된 기록만 Genius 결과 구성의 AI Search request processor 스크립트에 정의된 검색 쿼리에 대한 결과로 반환됩니다. |
[표 11. 매개변수]

{#GRAnswer-setTable_S__table_jgx_lxm_qnb} {#GRAnswer-setTable_S__GRAnswer-returns-Boolean-tgroup__entry__2}{#GRAnswer-setTable_S__GRAnswer-returns-Boolean-row}

| 유형 | 설명 |
|-|-|
| 부울 | 메서드 호출이 성공했는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * true: 메서드 호출에 성공했습니다. * false: 메서드 호출에 실패했습니다. {#GRAnswer-setTable_S__ul_unq_dzn_vnb} |
[표 12. 반환]

{#GRAnswer-setTable_S__id_qyq_cg4_vnb}  
이 AI Search request processor 스크립트는 사용자 \[sys_user\] 테이블에서 <kbd class="ph userinput">Anglin</kbd>이라는 용어가 포함된 기록에 대한 검색 쿼리를 만듭니다.

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

      answer.setTable('sys_user');
      answer.setSearchPhrase('Anglin');

      return answer;
    }

## GeniusResultAnswer -- spellCheck(부울 spellCheck) {#ariaid-title8}

Genius 결과 구성의 AI Search request processor 스크립트에 정의된 검색 쿼리에 대해 오타 처리 자동 수정(맞춤법 검사)을 수행할지 여부를 지정합니다.
Genius 결과 구성의 AI Search request processor 스크립트에서 이 메서드를 호출하지 않으면 정의된 검색 쿼리가 Genius 결과 구성을 트리거하는 검색 쿼리에서 오타 처리 플래그를 상속합니다.
{#GRAnswer-spellCheck_B__table_j1x_x14_vnb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| spellCheck | 부울 | Genius 결과 구성의 AI Search request processor 스크립트에 정의된 검색 쿼리에 대해 오타 처리 자동 수정을 수행할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * true: 검색 쿼리에 대해 오타 처리 자동 수정을 수행합니다. * false: 검색 쿼리에 대한 오타 처리 자동 수정을 바이패스합니다. {#GRAnswer-spellCheck_B__ul_ugr_xps_qnb} 기본값: true |
[표 13. 매개변수]

{#GRAnswer-spellCheck_B__table_j1x_x14_vnb} {#GRAnswer-spellCheck_B__table_zxh_mxm_qnb__entry__2}

| 유형 | 설명 |
|-|-|
| 없음 |   |
[표 14. 반환]

{#GRAnswer-spellCheck_B__table_zxh_mxm_qnb}  
이 AI Search request processor 스크립트는 사용자 \[sys_user\] 테이블에 대한 검색 쿼리에 대해 오타 처리 자동 수정을 비활성화합니다.

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

      answer.setTable('sys_user');
      answer.setSearchLimit(2);
      answer.spellCheck(false);
      var queries = [];
      var matchingSegments;
      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('personName')) {
              matchingSegments = entities[i]['matchingSegments'];
              for (var j = 0; j < matchingSegments.length; j++)
                answer.addSearchPhrases([matchingSegments[j]['value']]);
            } else if (entities[i]['name'].endsWith('cityLocation')) {
              matchingSegments = entities[i]['matchingSegments'];
              if (matchingSegments && matchingSegments.length > 0)
                queries.push('location.nameLIKE' + matchingSegments[0]['value']);
            } else if (entities[i]['name'].endsWith('departmentName')) {
              matchingSegments = entities[i]['matchingSegments'];
              if (matchingSegments && matchingSegments.length > 0)
                queries.push('department.nameLIKE' + matchingSegments[0]['value']);
            } else if (entities[i]['name'].endsWith('jobTitle')) {
              matchingSegments = entities[i]['matchingSegments'];
              if (matchingSegments && matchingSegments.length > 0)
                queries.push('titleLIKE' + matchingSegments[0]['value']);
            }
          }
        }
      }

      if (queries.length > 0)
        answer.setEncodedQuery(queries.join('^'));

      return answer;
    }


