Habilidade de Prompt GenAI

Note

Pesquisa de IA do Azure  está disponível por meio do portal Azure, APIs REST e SDKs do Azure. Ele também sustenta o IQ do Foundry, a camada de conhecimento gerenciado que transforma o conteúdo da empresa em bases de conhecimento reutilizáveis e com reconhecimento de permissão para agentes no portal do Microsoft Foundry.

Importante

Esses recursos e funcionalidades dão suporte a conexões com outros serviços de serviços Microsoft e de terceiros. O uso desses serviços está sujeito aos respectivos termos e pode resultar em processamento ou armazenamento de dados fora do limite de conformidade Azure, bem como dados que fluem para o limite de conformidade Azure.

É sua responsabilidade gerenciar se seus dados fluirão fora dos limites geográficos e de conformidade da sua organização e quaisquer implicações relacionadas, e que as permissões, os limites e as aprovações apropriados sejam provisionados.

Você é responsável por examinar e testar cuidadosamente os aplicativos que cria no contexto de seus casos de uso específicos e tomar todas as decisões e personalizações apropriadas. Isso inclui implementar suas próprias mitigações de IA responsáveis, como metaprompts, filtros de conteúdo ou outros sistemas de segurança, e garantir que seus aplicativos atendam aos padrões adequados de qualidade, confiabilidade, segurança e confiabilidade. Para obter mais informações, consulte a Pesquisa de IA do Azure  Nota de Transparência.

A habilidade GenAI (IA Generativa) Prompt executa uma solicitação chat completation contra um grande modelo de linguagem (LLM) implantado em Azure OpenAI em Foundry Models ou Microsoft Foundry. Use essa habilidade para criar novas informações que possam ser indexadas e armazenadas como conteúdo pesquisável.

Aqui estão alguns exemplos de como a habilidade do prompt GenAI pode ajudar você a criar conteúdo:

  • Verbalizar imagens
  • Resuma grandes trechos de texto
  • Simplificar conteúdo complexo
  • Realize qualquer outra tarefa que você consiga articular em um prompt

A habilidade GenAI Prompt está geralmente disponível na API REST do Serviço de Busca 2026-04-01 e em SDKs do Azure que têm como alvo esta versão. Essa habilidade suporta texto, imagem e conteúdo multimodal, como imagens com imagens e texto extraído de arquivos PDF.

Dica

É comum combinar essa habilidade com uma habilidade de fragmentação de dados. O tutorial Multimodal demonstra verbalização de imagens com duas estratégias diferentes de fragmentação de dados.

Modelos com suporte

  • Você pode usar qualquer modelo de inferência de conclusão de chat implantado no Foundry, como modelos GPT, DeepSeek-R#, Llama-4-Maverick e Cohere-command-r. Para modelos GPT especificamente, apenas os endpoints da API de completação de chat são suportados. Endpoints que usam a API Azure OpenAI Responses (contendo /openai/responses no URI) atualmente não são compatíveis.

  • Para verbalização de imagens, o modelo que você usa para analisar a imagem determina quais formatos de imagem são suportados.

  • Para modelos GPT-5, o temperature parâmetro não é suportado da mesma forma que os modelos anteriores. Se definido, deve ser definido para 1.0, pois outros valores resultarão em erros.

  • A cobrança é baseada no preço do modelo que você usa.

Note

O serviço de busca se conecta ao seu modelo por um endpoint público, então não há requisitos de localização regional. No entanto, se você estiver usando uma solução Azure completa, deve verificar as regiões Pesquisa de IA do Azure  e as regiões do modelo OpenAI ><Azure para encontrar pares adequados, especialmente se você tiver requisitos de residência de dados.

Pré-requisitos

  • Um recurso Azure OpenAI em Foundry Models ou Foundry.

  • Um modelo suportado implantado no seu recurso ou projeto.

    • Para Azure OpenAI, copie o endpoint com o domínio openai.azure.com da página Keys e Endpoint no portal Azure. Use este endpoint para o Uri parâmetro dessa habilidade.

    • Para o Foundry, copie o URI alvo para a implantação da página de Modelos no portal do Foundry. Use este endpoint para o Uri parâmetro dessa habilidade.

  • A autenticação pode ser baseada em chaves com uma chave API do seu recurso Foundry ou Azure OpenAI. No entanto, recomendamos o acesso baseado em função usando uma identidade gerenciada por serviço de busca atribuída a uma função.

    • No Azure OpenAI, atribua Cognitive Services OpenAI User à identidade gerenciada.

    • No Foundry, atribua o Usuário do Foundry à identidade gerenciada.

      Importante

      As funções RBAC da Foundry foram renomeada recentemente. Foundry User, Foundry Owner, Foundry Account Owner e Foundry Project Manager foram previamente nomeados Azure Usuário de IA, proprietário de IA Azure, proprietário da conta de IA Azure e Azure Gerente de Project de IA. Você ainda pode ver os nomes anteriores em alguns lugares enquanto a renomeação é distribuída. As IDs de função e as permissões principais não são alteradas pela renomeação.

@odata.type

#Microsoft.Skills.Custom.ChatCompletionSkill

Limites de dados

Limite Observações
maxTokens O padrão é 1024 se for omitido. O valor máximo depende do modelo.
Solicitar tempo limite Fixo em 30 segundos. Considere esse limite ao escolher um modelo para indexação em massa, pois modelos de raciocínio (como o1 e o3) podem excedê-lo.
Imagens Imagens codificadas em base 64 e URLs de imagem são suportadas. O limite de tamanho depende do modelo.

Parâmetros de habilidade

Property Tipo Obrigatório Observações
uri cadeia Sim Ponto de extremidade do modelo implantado. Domínios suportados são:

  • openai.azure.com
  • services.ai.azure.com
  • cognitiveservices.azure.com

Gerenciamento de API do Azure pontos de extremidade também têm suporte, incluindo domínios personalizados do Gerenciamento de API. Para configurar, incluindo autenticação, RBAC e conectividade privada opcional, consulte Use Gerenciamento de API do Azure com Azure de vetores e habilidades openai.

apiKey cadeia Cond.* Chave secreta para o modelo. Deixe em branco ao usar identidade gerenciada.
authIdentity cadeia Cond.* User-Assigned ID de cliente com identidade gerenciada (Azure OpenAI apenas). Deixe em branco para usar a identidade atribuída pelo sistema .
commonModelParameters objeto No Controles padrão de geração como temperature, maxTokens, etc.
extraParameters objeto No Dicionário aberto foi transmitido para a API do modelo subjacente.
extraParametersBehavior cadeia No "pass-through" | "drop" | "error" (padrão "error").
responseFormat objeto No Controle se o modelo retorna texto, um objeto JSON de formato livre ou um esquema JSON fortemente tipado. responseFormat Exemplos de payload: {responseFormat: { type: text }}, {responseFormat: { type: json_object }}, {responseFormat: { type: json_schema }}

* Exatamente uma das apiKey, authIdentity, ou a identidade atribuída ao sistema do serviço deve ser usada.

commonModelParameters Padrões

Parâmetro Default
model (padrão de implantação)
frequencyPenalty 0
presencePenalty 0
maxTokens 1024
temperature 0.7
seed zero
stop zero

Entradas de competências

Nome do campo de entrada Tipo Obrigatório Descrição
systemMessage cadeia Sim Instrução em nível de sistema (ex: "Você é um assistente prestativo.").
userMessage cadeia Sim Prompt do usuário.
text cadeia No Texto opcional adicionado a userMessage (cenários apenas de texto).
image cadeia de caracteres (URL de dados base 64) No Adiciona uma imagem ao prompt (apenas modelos multimodais).
imageDetail cadeia de caracteres (low | high | auto) No Fidelity hint para modelos multimodais Azure OpenAI.

Resultados de competências

Nome do resultado Tipo Descrição
response string ou objeto JSON Saída do modelo no formato solicitado por responseFormat.type.
usageInformation Objeto JSON Contagem de tokens e eco dos parâmetros do modelo.

Definições de exemplo

Resumo somente texto

{
  "@odata.type": "#Microsoft.Skills.Custom.ChatCompletionSkill",
  "name": "Summarizer",
  "description": "Summarizes document content.",
  "context": "/document",
  "inputs": [
    { "name": "text", "source": "/document/content" },
    { "name": "systemMessage", "source": "='You are a concise AI assistant.'" },
    { "name": "userMessage", "source": "='Summarize the following text:'" }
  ],
  "outputs": [ { "name": "response" } ],
  "uri": "https://demo.openai.azure.com/openai/deployments/gpt-4o/chat/completions",
  "apiKey": "<api-key>",
  "commonModelParameters": { "temperature": 0.3 }
}

Descrição de texto + imagem

{
  "@odata.type": "#Microsoft.Skills.Custom.ChatCompletionSkill",
  "name": "Image Describer",
  "context": "/document/normalized_images/*",
  "inputs": [
    { "name": "image", "source": "/document/normalized_images/*/data" },
    { "name": "imageDetail", "source": "=high" },
    { "name": "systemMessage", "source": "='You are a useful AI assistant.'" },
    { "name": "userMessage", "source": "='Describe this image:'" }
  ],
  "outputs": [ { "name": "response" } ],
  "uri": "https://demo.openai.azure.com/openai/deployments/gpt-4o/chat/completions",
  "authIdentity": "11111111-2222-3333-4444-555555555555",
  "responseFormat": { "type": "text" }
}

Localizador numérico estruturado de fatos

{
  "@odata.type": "#Microsoft.Skills.Custom.ChatCompletionSkill",
  "name": "NumericalFactFinder",
  "context": "/document",
  "inputs": [
    { "name": "systemMessage", "source": "='You are an AI assistant that helps people find information.'" },
    { "name": "userMessage", "source": "='Find all the numerical data and put it in the specified fact format.'"}, 
    { "name": "text", "source": "/document/content" }
  ],
  "outputs": [ { "name": "response" } ],
  "uri": "https://demo.openai.azure.com/openai/deployments/gpt-4o/chat/completions",
  "apiKey": "<api-key>",
  "responseFormat": {
    "type": "json_schema",
    "jsonSchemaProperties": {
      "name": "NumericalFactObj",
      "strict": true,
      "schema": {
        "type": "object",
        "properties": "{\"facts\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"number\":{\"type\":\"number\"},\"fact\":{\"type\":\"string\"}},\"required\":[\"number\",\"fact\"]}}}",
        "required": [ "facts" ],
        "additionalProperties": false
      }
    }
  }
}

Saída de amostra (truncada)

{
  "response": {
    "facts": [
      { "number": 32.0, "fact": "Jordan scored 32 points per game in 1986-87." },
      { "number": 6.0,  "fact": "He won 6 NBA championships." }
    ]
  },
  "usageInformation": {
    "usage": {
      "completion_tokens": 203,
      "prompt_tokens": 248,
      "total_tokens": 451
    }
  }
}

Práticas recomendadas

  • Faça blocos de documentos longos com a habilidade Text Split para permanecer dentro da janela de contexto do modelo.
  • Para indexação de alto volume, dedique uma implantação separada do modelo a essa habilidade para que as cotas de tokens para cargas de trabalho RAG em tempo de consulta permaneçam inalteradas.
  • Para minimizar a latência, coloque o modelo e seu serviço Pesquisa de IA do Azure  na mesma região do Azure.
  • Use responseFormat.json_schema com GPT-4o para extração estruturada confiável e mapeamento mais fácil para campos de índice.
  • Monitore o uso dos tokens e envie solicitações de aumento de cota se o indexador saturar seus limites de Tokens por Minuto (TPM).

Erros e avisos

Condição Resultado
Faltando ou inválido uri Erro
Nenhum método de autenticação especificado Erro
Ambos apiKey e authIdentity fornecidos Erro
Modelo não suportado para prompt multimodal Erro
Entrada excede o limite do token do modelo Erro
O modelo retorna JSON inválido para json_schema Aviso: cadeia de caracteres bruta retornada em response

Considerações de segurança para autenticação de identidade gerenciada

Quando a habilidade do Prompt do GenAI usa a autenticação de identidade gerenciada, Pesquisa de IA do Azure  obtém um token de acesso Microsoft Entra para o público-alvo das Ferramentas de Pesquisa (https://cognitiveservices.azure.com) e inclui-o em solicitações enviadas para o ponto de extremidade especificado por uri. A autenticação de identidade gerenciada se aplica quando authIdentity é definida ou quando ambas apiKeyauthIdentity estão vazias e o serviço usa a identidade atribuída pelo sistema.

Espera-se que o ponto de extremidade referenciado seja uri seu próprio Azure recurso OpenAI ou Foundry. Domínios suportados são:

  • openai.azure.com
  • cognitiveservices.azure.com
  • services.ai.azure.com

também há suporte para pontos de extremidade *.azure-api.net e domínios personalizados que estão à frente desses recursos. Como um domínio personalizado ou nome de host APIM não pode ser verificado apenas em seu nome, Pesquisa de IA do Azure  valida esses pontos de extremidade com uma verificação de conectividade dinâmica no momento da configuração e não por correspondência de domínio. Você é responsável por configurar e manter a relação entre o ponto de extremidade e o Azure recurso OpenAI ou Foundry por trás dele.

Note

Um token de identidade gerenciada emitido para o público-alvo das Ferramentas de Fundação é válido em qualquer ferramenta do Foundry ou Azure recurso OpenAI no qual a identidade está autorizada. Enviá-lo para um ponto de extremidade não confiável pode expor o token.

Para ajudar a manter uma implantação segura, siga estas práticas:

  • Defina uri apenas como pontos de extremidade que você possui e confie. Prefira os domínios das Ferramentas de Fundimento listados anteriormente. Se você usar um APIM ou um ponto de extremidade de domínio personalizado, confirme se ele está à frente do seu próprio recurso antes de habilitar a identidade gerenciada. Um nome de host de aparência confiável não é prova de propriedade.
  • Aplique o princípio de privilégio mínimo à identidade gerenciada usada pelo serviço de pesquisa:
    • No Azure OpenAI, atribua apenas o Usuário openai dos Serviços Cognitivos.
    • No Foundry, atribua apenas o Usuário do Foundry. Evite conceder funções mais amplas.
  • Use o NSP (Perímetro de Segurança de Rede) e pontos de extremidade privados ou integração de VNet para restringir quais pontos de extremidade o serviço de pesquisa pode alcançar e de quais fontes o recurso de destino aceita solicitações.
  • Se você usar um APIM ou um ponto de extremidade de domínio personalizado, verifique se o gateway valida as solicitações de entrada e encaminha-as apenas para o back-end pretendido. Você também deve examinar suas políticas de acesso periodicamente.
  • Prefira a identidade gerenciada em vez de apiKey. Se você usar apiKey, armazene-o e gire-o com segurança e não insira-o no controle do código-fonte. O serviço rejeita configurações que definem ambos apiKey e authIdentity.
  • Examine periodicamente definições de conjunto de habilidades, atribuições de função de identidade gerenciada e APIM e configurações de domínio personalizado para confirmar que uri valores, controles de acesso e permissões de identidade permanecem atuais e apropriados. Examine as alterações de configuração por meio dos processos estabelecidos de gerenciamento de alterações e revisão de segurança.
  • Monitore Azure Logs de entrada, eventos de autenticação e logs de acesso do OpenAI, Das Ferramentas de Fundiária e do Foundry para atividades inesperadas ou não autorizadas.
  • Remova habilidades não utilizados, pontos de extremidade, atribuições de função e chaves de API que não são mais necessárias.

Restringir o acesso à configuração do conjunto de habilidades

Os usuários que podem criar, modificar ou executar conjuntos de habilidades controlam o ponto de extremidade de destino (uri) e a configuração de autenticação usada pela habilidade. Como a habilidade envia um token de identidade gerenciada para o público-alvo das Ferramentas de Pesquisa para esse ponto de extremidade, restrinja essas permissões a administradores confiáveis e siga seus processos padrão de gerenciamento de alterações e revisão de segurança ao configurar habilidades habilitadas para identidade gerenciada.

Consulte também