Поделиться через


Когнитивный навык перевода текста

Навык Перевод текста оценивает текст и возвращает для каждой записи текст, переведенный на указанный целевой язык. Этот навык использует API перевода текстов версии 3.0, доступный в службах ИИ Azure.

Эта возможность полезна, если вы предполагаете, что не все документы написаны на одном языке. В этом случае можно путем перевода привести текст к одному языку перед индексированием для поиска. Это также полезно для вариантов использования локализации, где может потребоваться наличие копий одного и того же текста на нескольких языках.

API перевода текстов версии 3.0 — это нерегиональная служба ИИ Azure, что означает, что ваши данные не гарантированы оставаться в том же регионе, что и ресурс службы ИИ Azure или присоединенные к ним ресурсы.

Примечание.

Этот навык привязан к службам ИИ Azure и требует оплачиваемого ресурса для транзакций, превышающих 20 документов на индексатор в день. За выполнение встроенных навыков взимается плата за существующие службы ИИ Azure по мере использования.

При использовании этого навыка все документы в источнике обрабатываются и выставляются за перевод, даже если исходные и целевые языки одинаковы. Это поведение полезно для поддержки нескольких языков в одном документе, но это может привести к ненужной обработке. Чтобы избежать непредвиденных расходов на выставление счетов из документов, которые не требуют обработки, переместите их из контейнера источника данных до запуска навыка.

@odata.type

Microsoft.Skills.Text.TranslationSkill

Ограничения данных

Максимальный размер записи — 50 000 знаков по оценке String.Length. Если вам нужно разбить данные перед отправкой для применения навыка перевода текста, попробуйте использовать навык разделения текста. Если вы используете навык разделения текста, задайте длину страницы равным 5000 для оптимальной производительности.

Параметры навыков

Параметры зависят от регистра.

Входные данные Description
defaultToLanguageCode (обязательно) Код языка для перевода документов в документы, которые не указывают язык "to" явным образом.
Полный список поддерживаемых языков.
defaultFromLanguageCode (Необязательно) Код языка для перевода документов из документов, которые не указывают язык "from" явным образом. Если значение по умолчаниюFromLanguageCode не указано, автоматическое обнаружение языка, предоставленное API перевода текстов, будет использоваться для определения языка "from".
Полный список поддерживаемых языков.
suggestedFrom (Необязательно) Код языка для перевода документов из случаев, если fromLanguageCode или defaultFromLanguageCode не указан, и автоматическое обнаружение языка завершается неудачно. Если предлагаемый языкFrom не указан, английский (en) будет использоваться в качестве предлагаемого языкаFrom.
Полный список поддерживаемых языков.

Входные данные навыков

Ввод имени Описание
text Текст для перевода.
toLanguageCode Строка, указывающая язык, на который необходимо перевести текст. Если этот вход не указан, для перевода текста будет использоваться defaultToLanguageCode.
Полный список поддерживаемых языков.
fromLanguageCode Строка, указывающая текущий язык текста. Если этот параметр не указан, для перевода текста будет использоваться значение defaultFromLanguageCode (или автоматическое обнаружение языка, если не указано значение defaultFromLanguageCode).
Полный список поддерживаемых языков.

Выходные данные навыка

Имя вывода Description
translatedText Строковый результат перевода текста с языка translatedFromLanguageCode на язык translatedToLanguageCode.
translatedToLanguageCode Строка, указывающая код языка, на который переведен текст. Полезно, если вы переводите на несколько языков и хотите иметь возможность отслеживать, какой текст является языком.
translatedFromLanguageCode Строка, указывающая код языка, с которого переведен текст. Этот параметр полезен, если вы выбрали автоматическое распознавание языка, так как выходные данные покажут результат распознавания.

Пример определения

 {
    "@odata.type": "#Microsoft.Skills.Text.TranslationSkill",
    "defaultToLanguageCode": "fr",
    "suggestedFrom": "en",
    "context": "/document",
    "inputs": [
      {
        "name": "text",
        "source": "/document/text"
      }
    ],
    "outputs": [
      {
        "name": "translatedText",
        "targetName": "translatedText"
      },
      {
        "name": "translatedFromLanguageCode",
        "targetName": "translatedFromLanguageCode"
      },
      {
        "name": "translatedToLanguageCode",
        "targetName": "translatedToLanguageCode"
      }
    ]
  }

Пример ввода

{
  "values": [
    {
      "recordId": "1",
      "data":
        {
          "text": "We hold these truths to be self-evident, that all men are created equal."
        }
    },
    {
      "recordId": "2",
      "data":
        {
          "text": "Estamos muy felices de estar con ustedes."
        }
    }
  ]
}

Пример полученных результатов

{
  "values": [
    {
      "recordId": "1",
      "data":
        {
          "translatedText": "Nous tenons ces vérités pour évidentes, que tous les hommes sont créés égaux.",
          "translatedFromLanguageCode": "en",
          "translatedToLanguageCode": "fr"
        }
    },
    {
      "recordId": "2",
      "data":
        {
          "translatedText": "Nous sommes très heureux d'être avec vous.",
          "translatedFromLanguageCode": "es",
          "translatedToLanguageCode": "fr"
        }
    }
  ]
}

Ошибки и предупреждения

Если вы предоставляете неподдерживаемый языковой код для языка "to" или "from", создается ошибка, а текст не преобразуется. Если текст пуст, появится предупреждение. Если размер текста превышает 50 000 символов, будут переведены только первые 50 000 символов, и будет выдано предупреждение.

См. также