Localizar seu agente

Os agentes são essencialmente aplicativos para o Microsoft 365. Eles compartilham um esquema de manifesto comum, empacotamento de aplicativos e processo de distribuição e gerenciamento. O manifesto do aplicativo faz referência ao arquivo de definição para seus agentes declarativos no copilotAgents objeto.

A maneira como você localiza um agente é um pouco diferente de como você localiza outros recursos (como guias, bots e extensões de mensagem) em um manifesto do aplicativo Microsoft 365.

Você usa o mesmo arquivo de localização (por idioma) para os recursos e agentes de aplicativos do Teams. No entanto, enquanto todos os outros campos de manifesto do aplicativo são referenciados usando expressões JSONPath nos arquivos de idioma, os campos relacionados ao agente são referenciados usando chaves de dicionário. Ao contrário dos recursos clássicos do aplicativo Teams, que usam cadeias de caracteres de idioma padrão no próprio manifesto do aplicativo, os agentes localizados exigem um arquivo de idioma para o idioma padrão e para cada idioma extra.

Diagrama mostrando a relação entre o manifesto do aplicativo, o manifesto declarativo do agente e um arquivo de idioma para fins de localização de um agente

Este artigo descreve como adicionar suporte para outros idiomas (além do idioma padrão) aos seus agentes.

Atualizar os manifestos do agente com chaves tokenizadas

Atualize seu agente declarativo e/ou manifestos de plug-in de API com chaves tokenizadas (indicadas com colchetes duplos, por exemplo [[PLUGIN_NAME]]) para todos os valores de campo que você deseja localizar. As chaves de localização devem corresponder a esta expressão regular: ^[a-zA-Z_][a-zA-Z0-9_]*$

O exemplo a seguir mostra um manifesto de agente declarativo com valores tokenizados para seu nome e descrição.

{
    "$schema": "https://developer.microsoft.com/json-schemas/copilot/declarative-agent/v1.0/schema.json",
    "name": "[[DA_Name]]",
    "description": "[[DA_Description]]",
    "instructions": "# You are an assistant..."
}

Adicionar localizationInfo ao manifesto do aplicativo

Adicione a seção ao manifesto do localizationInfo aplicativo, com marcas de idioma e caminhos relativos para cada arquivo de idioma com suporte no pacote do aplicativo.

Se o agente oferecer suporte a mais de um idioma, você deverá especificar um arquivo de idioma autônomo para cada idioma compatível, incluindo o idioma padrão.

O exemplo a seguir mostra a seção em um manifesto localizationInfo do aplicativo.

"localizationInfo": {
    "defaultLanguageTag": "en",
    "defaultLanguageFile": "en.json",
    "additionalLanguages": [
        {
            "languageTag": "fr",
            "file": "fr.json"
        }
    ]
},

Se o agente não for compatível com outros idiomas, as cadeias de caracteres de idioma padrão serão representadas no próprio arquivo de manifesto do aplicativo. Os pacotes de aplicativos de idioma único não exigem um arquivo de idioma separado para o idioma padrão.

Criar um arquivo de localização para cada idioma extra

Crie um arquivo de localização para cada idioma com suporte com valores para as chaves tokenizadas, usando os nomes de arquivo especificados (para as defaultLanguageFile propriedades and file ) no manifesto do aplicativo na etapa anterior.

O exemplo a seguir mostra um arquivo de idioma, fr.json, com cadeias de caracteres localizadas nas guias um agente e pessoal.

{
    "$schema": "https://developer.microsoft.com/json-schemas/teams/vDevPreview/MicrosoftTeams.Localization.schema.json",
    "name.short": "Agent de Communications",
    "name.full": "Agent pour les Communications",
    "description.short": "Outils pour les professionnels de la communication",
    "description.full": "Outils pour les professionnels de la communication Contoso, y compris la galerie de ressources et les assistants personnels",
    "localizationKeys": {
        "DA_Name": "Agent de Communications",
        "DA_Description": "Un assistant pour les professionnels de la communication et des relations publiques chez Contoso."
    },
    "staticTabs[0].name": "Accueil",
    "staticTabs[1].name": "Galerie de ressources",
    "staticTabs[2].name": "À propos de Contoso"
}

Campos localizáveis no manifesto do aplicativo

Para cada arquivo de idioma, especifique as seguintes propriedades do esquema de localização do aplicativo que precisam ser localizadas.

Campo de manifesto Descrição Comprimento máximo Obrigatório
$schema A URL para o esquema de localização. Para agentes, use devPreview: https://developer.microsoft.com/en-us/json-schemas/teams/vDevPreview/MicrosoftTeams.Localization.schema.json. A versão do esquema do manifesto deve ser a mesma para os arquivos de manifesto e localização do aplicativo. ✔️
name.short Substitui o nome curto do manifesto do aplicativo pelo valor fornecido. 30 caracteres ✔️
name.full Substitui o nome completo do manifesto do aplicativo pelo valor fornecido 100 caracteres ✔️
description.short Substitui a breve descrição do manifesto do aplicativo pelo valor fornecido. 80 caracteres ✔️
description.full Substitui a descrição completa do manifesto do aplicativo pelo valor fornecido. 4.000 caracteres ✔️
Pares de chave/valor para cadeias de caracteres localizadas em agentes Para agentes, use chaves tokenizadas (conforme especificado no aplicativo manifest.json, mas sem colchetes duplos) com seus valores localizados. Por exemplo: "DA_Name": "Agent de Communications"
Pares JSONPath/value para cadeias de caracteres localizadas de qualquer outro componente do aplicativo Para todos os outros componentes de aplicativo (do Teams clássico), use expressões JSONPath como chaves para os valores localizados. Por exemplo: "staticTabs[0].name": "Accueil"

Para saber mais, consulte Localizar seu aplicativo (Microsoft Teams) e a referência do esquema de localização.

Campos localizáveis no manifesto do agente declarativo

Os campos a seguir podem ser localizados no manifesto do agente declarativo.

Campo de manifesto Descrição Comprimento máximo Obrigatório
name O nome do agente declarativo. Deve conter pelo menos um caractere que não seja espaço em branco. 100 caracteres ✔️
description A descrição do agente declarativo. Deve conter pelo menos um caractere que não seja espaço em branco. 1.000 caracteres ✔️
conversation_starters Uma lista (matriz) de exemplos de perguntas que o agente declarativo pode responder, onde cada exemplo é um objeto com title e text, ambos localizáveis. 12 objetos na matriz

Para saber mais, consulte Referência do manifesto do agente declarativo.

Campos localizáveis no manifesto do plug-in da API

Os campos a seguir podem ser localizados no manifesto do plug-in da API.

Campo de manifesto Descrição Comprimento máximo Obrigatório
name_for_human Um nome curto e legível para o plug-in. Deve conter pelo menos um caractere que não seja espaço em branco. 20 caracteres ✔️
description_for_model A descrição do plug-in fornecido ao modelo, incluindo para que serve o plug-in e em que circunstâncias suas funções são relevantes. 2,048 caracteres
description_for_human Uma descrição legível do plug-in. 100 caracteres ✔️
logo_url Uma URL usada para buscar um logotipo que pode ser usado pelo orquestrador.
legal_info_url Uma URL absoluta que localiza um documento contendo os termos de serviço do plug-in.
privacy_policy_url Uma URL absoluta que localiza um documento que contém a política de privacidade do plug-in.
conversation_starters Uma lista (matriz) de exemplos de perguntas que o plug-in pode responder, onde cada exemplo é um objeto com title e text, ambos localizáveis.

Para saber mais, consulte Referência do manifesto do plug-in.