다음을 통해 공유


다국어 에이전트 구성 및 생성

다국어 에이전트는 모든 콘텐츠를 단일 에이전트에 유지하면서 다양한 언어로 고객과 통신합니다. 대부분의 경우 에이전트 사용자의 웹 브라우저 설정에 따라 원하는 언어를 자동으로 검색하고 동일한 언어로 응답하여 고객에게 보다 개인화되고 매력적인 환경을 제공합니다.

에이전트를 만들 때 기본 언어를 지정합니다.

에이전트에 보조 언어를 추가 한 후에는 사용자가 만든 토픽의 메시지에 대한 번역을 제공해야 합니다. 생성 오케스트레이션을 사용하는 에이전트의 경우 생성된 메시지가 자동으로 변환됩니다.

고객이 게시된 에이전트로 세션을 시작하면 에이전트는 해당 언어 중 하나를 선택하여 고객의 클라이언트 또는 브라우저에 지정된 언어와 일치합니다. 에이전트가 클라이언트 또는 브라우저 언어를 검색할 수 없거나 검색된 언어가 에이전트에 대해 지정한 언어 중 하나가 아닌 경우 에이전트는 기본 언어로 설정됩니다.

대화 중에 사용하는 언어를 변경하도록 에이전트를 디자인할 수 있습니다( 에이전트를 다른 언어로 전환하기 참조). 생성 오케스트레이션을 사용하여 현재 대화 턴에서 사용되는 언어를 따르도록 언어를 동적으로 전환하는 에이전트를 설정할 수도 있습니다(동적 언어 전환에 대한 에이전트 설정 참조).

지원되는 언어 목록은 언어 지원을 참조하세요.

참고

클래식 챗봇은 하나의 언어만 지원합니다. 클래식 챗봇을 에이전트로 변환하는 방법에 대한 자세한 내용은 Copilot Studio 통합 작성으로 업그레이드를 참조하세요.

에이전트에 언어 추가

  1. 에이전트의 설정 페이지로 이동하여 언어를 선택합니다.

  2. 언어 추가를 선택합니다.

  3. 언어 추가 패널에서 에이전트에 추가할 언어를 선택하고 추가를 선택합니다.

  4. 언어 목록을 검토하고 설정 페이지를 닫습니다.

다국어 에이전트에 대한 지역화 관리

Copilot Studio에서는 에이전트의 기본 언어로 모든 토픽 및 콘텐츠 편집을 수행합니다. 이 섹션에서는 에이전트에서 문자열을 다운로드하고 에이전트의 보조 언어로 번역하는 방법을 설명합니다. 번역된 문자열을 업로드하면 테스트 패널에서 언어를 전환 하고 보조 언어의 대화도 예상대로 흐르는지 확인할 수 있습니다.

지역화된 콘텐츠 준비

보조 언어에 대한 지역화 파일을 처음 다운로드하면 모든 문자열이 에이전트의 기본 언어로 표시됩니다. 지역화 파일을 다운로드한 후 원하는 지역화 프로세스와 함께 사용합니다.

  1. 에이전트의 설정 페이지로 이동하여 언어를 선택합니다.

  2. 언어 페이지의 보조 언어 목록에서 업데이트할 언어에 대한 업로드를 선택합니다.

  3. 업데이트 지역화 패널에서 JSON 또는 ResX 형식을 선택하여 해당 언어에 대한 현재 지역화 파일을 다운로드합니다.

    참고

    다운로드한 파일에는 에이전트에 대한 최신 현지화 콘텐츠가 포함되어 있습니다. 이전 버전의 지역화 파일을 다운로드해야 하는 경우 에이전트의 솔루션을 엽니다.

  4. 다운로드한 파일을 열고 기본 언어 문자열을 적절하게 번역된 텍스트로 바꿉니다.

  5. 업데이트 지역화 패널로 돌아가서 찾아보기를 선택하고 번역된 파일을 업로드합니다.

  6. 업데이트 지역화 패널 및 설정 페이지를 닫습니다.

지역화된 콘텐츠 업데이트

기본 언어 문자열을 변경하는 경우 보조 언어의 콘텐츠도 업데이트해야 합니다. 이 프로세스에는 새 콘텐츠와 수정된 콘텐츠가 모두 포함됩니다. 증분 변경사항은 자동으로 번역되지 않습니다. 보조 언어 JSON 또는 ResX 파일을 다운로드하고 원하는 지역화 프로세스를 사용하여 번역되지 않은 문자열을 업데이트해야 합니다.

다음 시나리오는 번역된 콘텐츠에 대한 일반적인 워크플로입니다. 이전에 기본 언어(en-US)를 보조 언어(fr-FR)로 번역했으며 기본 언어로 콘텐츠를 추가 및 수정했습니다. 보조 언어에 대한 지역화 파일을 다운로드하면 모든 새 콘텐츠가 기본 언어(en-US)에 있습니다. 그러나 수정된 콘텐츠는 여전히 보조 언어로 표시됩니다. 수정된 콘텐츠는 동일한 ID를 사용하므로 새 파일을 이전에 업로드한 파일과 비교해야 합니다.

적응형 카드의 동적 콘텐츠를 지역화에 사용할 수 있도록 설정

지역화 파일에는 적응형 카드의 혼합 형식 문자열이 포함되지 않습니다. 문자열에 정적 텍스트와 변수(동적 콘텐츠)를 모두 포함할 수 있는 적응형 카드를 지역화해야 하는 경우 다음 해결 방법을 사용합니다. 이 절차에서는 텍스트 변수 집합 노드를 사용하여 중간 변수에 정적 텍스트 및 변수와 함께 전체 문자열을 저장하는 방법을 보여 줍니다. 그런 다음 적응형 카드에서 해당 중간 변수만 참조합니다. 에이전트에 대한 지역화 파일을 다운로드할 때 정적 텍스트 및 변수 참조가 있는 중간 변수의 값은 setVariable 작업의 일부로 지역화가 가능합니다.

적응형 카드의 동적 콘텐츠를 지역화하려면 다음을 수행합니다.

  1. 적응형 카드 앞에 변수 값 집합 노드를 추가합니다. 이 단계에서는 코드 편집기를 사용하여 노드를 텍스트 변수 집합 노드로 변환하여 업데이트할 수 있는 YAML 표현을 만듭니다. 작성 캔버스에서 직접 텍스트 변수 노드를 설정할 수는 없습니다.

  2. 변수 값 설정 노드에서 새 변수를 만들지만 아직 값을 설정하지 않습니다.

  3. 토픽에 대한 코드 편집기를 엽니다.

  4. 코드 편집기에서 변수 값 설정 노드를 나타내는 부분을 찾아서 kind: SetVariable를/을 kind: SetTextVariable로 교체하십시오. 이 변경은 변수 값 집합 노드를 텍스트 변수 집합 노드로 변환합니다.

  5. 코드 편집기를 닫습니다.

  6. 텍스트 변수 노드 설정의 아래쪽 필드를 선택하고 적응형 카드에 표시할 정적 텍스트 및 변수를 사용하여 전체 문자열을 입력합니다. 메시지에 변수를 삽입하는 것과 동일한 방식으로 변수를 삽입합니다.

  7. 적응형 카드를 이 새 변수에 대한 참조로 업데이트합니다.

  8. 토픽을 저장합니다. 이제 지역화 파일을 다운로드하고 적응형 카드에 대한 동적 콘텐츠가 포함되어 있는지 확인할 수 있습니다.

다국어 에이전트 테스트

  1. 테스트 패널을 엽니다.

  2. 테스트 패널 상단의 세 개의 점을 선택하고 원하는 언어를 선택하세요. 이번에는 선택한 언어를 사용하여 테스트 패널이 자체를 다시 로드합니다. 작성 캔버스는 기본 언어로 유지되며 기본 언어로 다시 전환할 때까지 항목에 대한 변경 내용을 저장할 수 없습니다.

  3. 에이전트를 테스트하려면 선택한 언어로 메시지를 입력합니다.

브라우저 언어를 에이전트의 언어 중 하나로 설정하고 미리 빌드된 데모 웹 사이트로 이동합니다. 데모 웹 사이트가 지정된 언어로 열리고 에이전트가 해당 언어로 채팅합니다.

에이전트를 다른 언어로 전환

작성할 때 대화 도중에 다른 언어로 전환하도록 에이전트를 구성할 수 있습니다. 논리는 에이전트의 모든 항목에 상주할 수 있습니다. 그러나 가장 좋은 방법은 질문 노드 바로 다음에 언어를 전환하는 것입니다. 이렇게 하면 다음 질문 노드까지 모든 메시지가 동일한 언어로 표시됩니다.

에이전트의 현재 언어를 변경하려면 User.Language 에이전트의 보조 언어 중 하나로 설정합니다. 이 옵션을 선택하면 에이전트에서 사용하는 언어가 즉시 변경됩니다.

동적 언어 전환을 위한 에이전트 설정

참고

이 기능은 생성형 오케스트레이션이 활성화된 에이전트에서만 사용할 수 있습니다.

고객이 사용하고 동일한 언어로 응답하는 언어를 검색하도록 에이전트를 구성할 수 있습니다. 이 구성을 사용하면 에이전트는 단일 대화 과정에서 언어를 여러 번 전환할 수 있습니다. 다음 시나리오에서는 네덜란드어와 영어 간에 전환하도록 에이전트를 설정하는 방법을 보여줍니다. 에이전트에서 지원하는 언어의 조합에 맞게 확장할 수 있습니다.

이 시나리오에서는 메시지 수신토픽 트리거가 포함된 토픽을 사용합니다. 이 항목 트리거를 사용하면 에이전트가 수신하는 모든 메시지를 검사할 수 있습니다. 이 항목에서는 사용자 지정 프롬프트를 사용하여 언어를 검색하고 에이전트 언어 시스템 변수를 설정하는 조건을 사용합니다.

  1. 토픽을 만듭니다.

  2. 토픽의 기본 트리거 유형을수신된 메시지로 바꿉 있습니다.

  3. 토픽에 프롬프트를 추가합니다.

    1. 트리거노드 아래에서 노드 추가 아이콘 을 선택합니다.

    2. 도구> 추가새 프롬프트를 선택합니다.

    3. 프롬프트 편집기에서 프롬프트의 대표 이름(예: "언어 검색")을 입력합니다.

    4. 지침 창에서 "이 메시지가 기록되는 언어 확인: "를 입력 합니다 .

    5. 지침 창 아래쪽에서 콘텐츠 추가를 선택하고 텍스트를 선택합니다. 이름과 샘플 메시지를 입력하도록 초대하는 창이 나타납니다.

    6. 이름에 "메시지"를 입력합니다. 샘플 데이터의 경우 "사용자의 메시지"를 입력하고 닫기를 선택합니다.

    7. 모델 응답 창에서 출력 형식을 JSON으로 전환합니다.

    8. 테스트를 선택합니다. 프롬프트에 언어를 영어로 식별하는 단일 속성이 있는 JSON 리터럴이 표시됩니다.

      메시지의 언어를 검색하도록 구성된 프롬프트의 스크린샷

    9. 저장을 선택합니다. 프롬프트 노드가 캔버스에 나타납니다.

  4. 프롬프트 노드 구성:

    1. 입력의 경우 시스템 변수Activity.Text(들어오는 메시지의 텍스트)를 선택합니다.
    2. 출력의 경우 .라는DetectedLanguage새 변수를 만듭니다.
  5. 검색된 언어에 따라 논리를 분기합니다.

    1. 프롬프트 노드 아래에 조건을 추가합니다.

    2. 검색된 언어의 이름을 포함하는 사용자 지정 변수 DetectedLanguage.structuredOutput.language를 기준으로 조건을 설정합니다.

    3. 검색해야 하는 각 언어에 대한 조건 분기를 추가합니다.

    4. 각 분기에서 변수 값 집합 노드를 추가하여 그에 따라 시스템 변수를 User.Language 설정합니다. 다음 이미지는 네덜란드어와 영어 사이를 전환하는 조건이 있는 항목을 보여줍니다.

      에이전트 언어를 검색하고 전환하는 항목의 스크린샷

다국어 에이전트 문제 해결

이 섹션에서는 예기치 않은 다국어 에이전트 동작을 이해하는 팁을 제공합니다.

구성되지 않은 언어에 대한 다국어 에이전트 동작

사용자가 에이전트에 대해 구성하지 않은 언어에 대해 브라우저를 구성하는 경우 에이전트는 기본 언어로 대체됩니다.

에이전트를 만들 때 에이전트의 기본 언어 를 지정합니다. 만든 후에는 기본 언어를 변경할 수 없지만 둘 이상의 지역을 사용할 수 있는 경우 에이전트의 기본 언어에 대한 지역을 변경할 수 있습니다.

누락된 번역에 대한 다국어 에이전트 동작

기본 언어로 에이전트에 메시지를 추가하지만 새 메시지에 대한 번역을 업로드 하지 않는 경우 에이전트는 기본 언어로 번역되지 않은 변경 내용을 표시합니다. 에이전트를 변경한 후 항상 번역이 최신 상태(up-to-date)인지 확인합니다.

지역화 파일에는 적응형 카드의 혼합 형식 문자열이 포함되지 않습니다. 문자열에 정적 텍스트와 변수(동적 콘텐츠)를 모두 포함할 수 있는 적응형 카드를 지역화해야 하는 경우 해결 방법을 사용해야 합니다. 적응형 카드에서 사용하기 전에 혼합 형식 문자열을 텍스트 변수에 저장하는 방법을 알아봅니다.

다국어 에이전트 게시할 때 발생하는 오류

다국어 에이전트를 게시하려고 하면 원시 응답 오류 코드 SynonymsNotUnique와 함께 "봇에 대한 유효성 검사 실패" 오류 메시지가 표시되면 지역화 파일에 중복 동의어 또는 값과 일치하는 DisplayName 동의어가 포함됩니다. 일반적으로 노드에 다음 시나리오 중 하나가 발생한 위치가 포함된 Entity.Definition.'closedListItem' 경우 이 오류가 발생합니다.

  • 요소 중 Synonyms 하나가 고유 하지 않습니다 .
  • Synonyms 요소 중 하나가 DisplayName 요소와 동일한 값을 가집니다.

동일한 엔터티에 대한 모든 Synonyms은 고유해야 하며 DisplayName 요소와 다른 이름을 가져야 합니다.

오류를 수정하려면 보조 언어에 대한 JSON 또는 ResX 파일을 검토하고 이 조건이 있을 수 있는 인스턴스를 식별합니다.