Habilidade de inserção do Azure OpenAI

Importante

Esse recurso está em versão prévia pública nos Termos de Uso Complementares. A API REST 2023-10-01-Preview dá suporte a esse recurso.

A habilidade do Inserção do Azure OpenAI conecta-se a um modelo de inserção implantado no seu recurso do Azure OpenAI para gerar inserções.

A habilidade Importar e vetorizar dados usa a habilidade Incorporação do Azure OpenAI para vetorizar conteúdo. Você pode executar o assistente e revisar o conjunto de habilidades gerado para ver como o assistente o cria.

Observação

Essa habilidade está associada ao Azure OpenAI e é cobrada no Preço pago conforme o uso do Azure OpenAI existente.

@odata.type

Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill

Limites de dados

O tamanho máximo de uma entrada de texto deve ser de 8.000 tokens. Se a entrada exceder o máximo permitido, o modelo gerará um erro de solicitação inválido. Para obter mais informações, consulte o conceito-chave de tokens na documentação do Azure OpenAI. Considere o uso da habilidade Divisão de texto se precisar de fragmentação de dados.

Parâmetros de habilidades

Os parâmetros diferenciam maiúsculas de minúsculas.

Entradas Descrição
resourceUri O URI de um provedor de modelo, como um recurso do Azure OpenAI ou uma URL do OpenAI.
apiKey A chave secreta usada para acessar o modelo. Se você fornecer uma chave, deixe authIdentity em branco. Se você definir apiKey e authIdentity, apiKey será usado na conexão.
deploymentId O nome do modelo de inserção do Azure OpenAI implantado. O modelo deve ser um modelo de inserção, como text-embedding-ada-002. Consulte a Lista de modelos do Azure OpenAI para modelos com suporte.
authIdentity Uma identidade gerenciada pelo usuário usada pelo serviço de pesquisa para se conectar ao Azure OpenAI. Você pode usar um sistema ou uma identidade gerenciada pelo usuário. Para usar uma identidade gerenciada pelo sistema, deixe apiKey e authIdentity em branco. A identidade gerenciada pelo sistema é usada automaticamente. Uma identidade gerenciada deve ter permissões de Usuário do OpenAI dos Serviços Cognitivos para enviar textos ao Azure OpenAI.

Entradas de habilidades

Entrada Descrição
text O texto de entrada a ser vetorizado. Se você estiver usando o compartilhamento de dados, a origem pode ser /document/pages/*.

Saídas de habilidades

Saída Descrição
embedding Inserção vetorizada para o texto de entrada.

Definição de exemplo

Considere um registro que tenha os seguintes campos:

{
    "content": "Microsoft released Windows 10."
}

Assim, sua definição de habilidade pode ser:

{
  "@odata.type": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill",
  "description": "Connects a deployed embedding model.",
  "resourceUri": "https://my-demo-openai-eastus.openai.azure.com/",
  "deploymentId": "my-text-embedding-ada-002-model",
  "inputs": [
    {
      "name": "text",
      "source": "/document/content"
    }
  ],
  "outputs": [
    {
      "name": "embedding"
    }
  ]
}

Saída de exemplo

Para o texto de entrada especificado, uma saída de inserção vetorizada é produzida.

{
  "embedding": [
        0.018990106880664825,
        -0.0073809814639389515,
        .... 
        0.021276434883475304,
      ]
}

A saída reside na memória. Para enviar essa saída para um campo no índice de pesquisa, você deve definir um outputFieldMapping que mapeia a saída de incorporação vetorizada (que é uma matriz) para um campo vetorial. Supondo que a saída de habilidade resida no nó de incorporação do documento e content_vector for o campo no índice de pesquisa, o outputFieldMapping no indexador deve se parecer com:

  "outputFieldMappings": [
    {
      "sourceFieldName": "/document/embedding/*",
      "targetFieldName": "content_vector"
    }
  ]

Práticas recomendadas

A seguir estão algumas práticas recomendadas que você precisa considerar ao utilizar essa habilidade:

  • Se você estiver atingindo seu limite de TPM (Tokens por minuto) do Azure OpenAI, considere o aviso de limites de cota para que você possa resolver de acordo. Consulte a documentação de monitoramento do Azure OpenAI para obter mais informações sobre o desempenho da instância do Azure OpenAI.
  • A implantação do modelo de incorporação do Azure OpenAI que você usa para essa habilidade deve ser idealmente separada da implantação usada para outros casos de uso, incluindo o vetorizador de consulta. Isso ajuda cada implantação a ser adaptada ao seu caso de uso específico, levando a um desempenho otimizado e identificando facilmente o tráfego do indexador e das chamadas de incorporação de índice.
  • Sua instância do Azure OpenAI deve estar na mesma região ou, pelo menos, geograficamente perto da região onde seu serviço de Pesquisa de IA está hospedado. Isso reduz a latência e melhora a velocidade de transferência de dados entre os serviços.
  • Se você tiver um limite maior do que o padrão do Azure OpenAI TPM (Tokens por minuto), conforme publicado na documentação de cotas e limites, abra um caso de suporte com a equipe de Pesquisa de IA do Azure, para que isso possa ser ajustado de acordo. Isso ajuda seu processo de indexação a não ser desnecessariamente retardado pelo limite padrão documentado do TPM, se você tiver limites mais altos.

Erros e avisos

Condição Resultado
URI nulo ou inválido Erro
Implantação nula ou inválida Erro
O texto está vazio Aviso
O texto é maior que 8.000 tokens Erro

Confira também