다국어 에이전트

Dialogflow는 다국어를 지원합니다. 전체 목록은 언어 참조 페이지를 참조하세요. 에이전트를 만들 때 선택한 언어가 기본 언어로 설정되며 다른 언어를 추가할 수 있습니다.

루트 언어 및 로캘별 언어

언어에는 두 가지 카테고리가 있습니다.

  • 루트 언어: English(en)와 같이 로캘을 지정하지 않는 언어입니다.
  • 로캘별 언어: English-US(en-US)와 같이 특정 리전이나 국가로서 로캘을 지정하는 언어입니다.

일부 언어는 루트 언어 및 로캘별 언어로 모두 작동합니다. 이러한 언어는 로캘 간에 상당한 차이가 있으므로 로캘이 공통 루트 언어를 공유할 수 없습니다. 예를 들면 다음과 같습니다.

  • 중국어-광둥어(zh-HK)
  • 중국어-간체(zh-CN)
  • 중국어-번체(zh-TW)
  • 포르투갈어-브라질(pt-BR)
  • 포르투갈어-포르투갈(pt)

기본적으로 루트 언어에 맞게 에이전트를 설계하고 필요한 경우에만 로캘별 언어에 맞춤설정해야 합니다.

언어 추가

Dialogflow 콘솔을 사용하여 언어나 로캘을 추가하려면 다음 안내를 따르세요.

  1. Dialogflow CX 콘솔을 엽니다.
  2. 에이전트의 GCP 프로젝트를 선택합니다.
  3. 목록에서 에이전트를 찾습니다.
  4. 에이전트 표시 이름을 클릭합니다.
  5. 에이전트 설정을 클릭합니다.
  6. 언어 탭을 클릭합니다.
  7. 필요에 따라 언어를 추가하거나 삭제합니다.
  8. 저장을 클릭합니다.

언어별 데이터

대부분의 에이전트 데이터는 다국어 에이전트의 모든 언어에 공통적입니다. 그러나 최종 사용자와 상호작용하는 데 사용되는 텍스트는 언어에 따라 다릅니다. 다국어 에이전트를 빌드할 때 각 언어에 해당하는 언어별 데이터를 제공해야 합니다. 콘솔에서 언어를 선택하거나 API에 언어를 제공하면 지정된 언어의 이 언어별 데이터에 액세스할 수 있습니다. 다음은 언어별 데이터의 전체 목록입니다.

콘솔에서 언어별 데이터에 액세스하려면 콘솔 상단에 있는 언어 버튼을 클릭합니다.

언어 선택 스크린샷

예를 들어 아래의 사이즈 항목 유형은 티셔츠를 주문하는 데 사용됩니다. 에이전트는 원래 영어로 구성되었으므로 이 개체에는 'S'와 같은 항목이 동의어 'small'과 함께 포함되어 있습니다. 스페인어가 언어로 추가되면 Dialogflow가 새로운 언어로 항목을 만들지만 항목 입력을 스페인어로 제공해야 합니다.

항목 스크린샷

API를 사용하여 언어별 데이터에 액세스하려면 EntityType, Intent 또는 Page 유형을 가져오거나 만들거나 업데이트할 때 languageCode 매개변수를 제공합니다.

EntityType 참조의 프로토콜 및 버전 선택:

프로토콜 V3 V3beta1
REST EntityType 리소스 EntityType 리소스
RPC EntityType 인터페이스 EntityType 인터페이스
C++ EntityTypesClient 사용 불가능
C# EntityTypesClient 사용 불가능
Go EntityTypesClient 사용 불가능
자바 EntityTypesClient EntityTypesClient
Node.js EntityTypesClient EntityTypesClient
PHP 사용 불가능 사용 불가능
Python EntityTypesClient EntityTypesClient
Ruby 사용 불가능 해당 사항 없음

인텐트 참조의 프로토콜 및 버전 선택:

프로토콜 V3 V3beta1
REST 인텐트 리소스 인텐트 리소스
RPC 인텐트 인터페이스 인텐트 인터페이스
C++ IntentsClient 사용 불가능
C# IntentsClient 사용 불가능
Go IntentsClient 사용 불가능
자바 IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP 사용 불가능 사용 불가능
Python IntentsClient IntentsClient
Ruby 사용 불가능 해당 사항 없음

페이지 참조의 프로토콜 및 버전 선택:

프로토콜 V3 V3beta1
REST 페이지 리소스 페이지 리소스
RPC 페이지 인터페이스 페이지 인터페이스
C++ PagesClient 사용 불가능
C# PagesClient 사용 불가능
Go PagesClient 사용 불가능
자바 PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 사용 불가능 사용 불가능
Python PagesClient PagesClient
Ruby 사용 불가능 해당 사항 없음

모든 언어별 데이터에 액세스하려면 언어별로 별도의 API를 호출해야 합니다. API 호출에서 언어 일반적 데이터를 업데이트하면 해당 데이터는 모든 언어로 업데이트됩니다.

시뮬레이터에서 테스트

시뮬레이터를 사용할 때는 에이전트 이름 아래에서 사용하려는 언어를 선택합니다.

API를 사용하여 언어 제공

API를 통해 요청을 보낼 때는 detectIntent 메서드의 queryInput.languageCode 필드를 설정합니다. 자세한 내용은 Sessions 유형을 참조하세요.

세션 참조의 프로토콜 및 버전을 선택합니다.

프로토콜 V3 V3beta1
REST 세션 리소스 세션 리소스
RPC 세션 인터페이스 세션 인터페이스
C++ SessionsClient 사용 불가능
C# SessionsClient 사용 불가능
Go SessionsClient 사용 불가능
자바 SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP 사용 불가능 사용 불가능
Python SessionsClient SessionsClient
Ruby 사용 불가능 해당 사항 없음

에이전트의 언어를 제공하지 않는 요청

Dialogflow에서 에이전트가 지원하는 언어를 제공하지 않는 요청을 받으면 다음 규칙이 적용됩니다.

  • 요청이 언어를 제공하지 않으면 Dialogflow가 기본 언어를 사용하여 요청을 처리합니다.
  • 요청이 에이전트에서 지원하지 않는 로캘별 언어를 제공하지만 에이전트가 관련 루트 언어를 지원하는 경우 Dialogflow는 루트 언어를 사용하여 요청을 처리합니다.
  • 시스템 개체 추출은 이전 규칙에 대한 예외입니다. 시스템 항목 추출은 에이전트가 로캘별 언어를 지원하지 않는 경우에도 제공된 로캘별 언어를 사용합니다.

통합

텍스트 기반 통합을 통한 에이전트 상호작용에는 에이전트의 기본 언어만 사용됩니다.