Compartilhar via


Importar uma API do OpenAI do Azure

APLICA-SE A: todas as camadas do Gerenciamento de API

Este artigo mostra duas opções para importar uma API de Serviço OpenAI do Azure para uma instância de Gerenciamento de API do Azure como uma API REST:

Pré-requisitos

  • Uma instância de Gerenciamento de API existente. Crie uma, se ainda não tiver.

  • Um recurso do OpenAI do Azure com um modelo implantado. Para obter mais informações sobre a implantação do modelo, consulte o Guia de implantação de recursos.

    Anote a ID (o nome) da implantação. Você precisará dela ao testar a API importada no Gerenciamento de API.

  • Permissões para conceder acesso ao recurso do OpenAI do Azure da instância de Gerenciamento de API.

Opção 1. Importar a API do Serviço OpenAI do Azure

Você pode importar uma API do OpenAI do Azure diretamente para o Gerenciamento de API do Serviço OpenAI do Azure.

Observação

Atualmente, esse recurso não está disponível em workspaces.

Quando você importa a API, o Gerenciamento de API configura automaticamente o seguinte:

  • As operações para cada um dos pontos de extremidade da API REST do OpenAI do Azure.
  • Uma identidade atribuída pelo sistema com as permissões necessárias para acessar o recurso do OpenAI do Azure.
  • Um recurso de back-end e uma política de set-back-end-service que direciona as solicitações de API para o ponto de extremidade do Serviço OpenAI do Azure.
  • Uma política de authentication-managed-identity que pode se autenticar no recurso do OpenAI do Azure usando a identidade da instância atribuída pelo sistema.
  • (opcionalmente) Políticas para ajudar você a monitorar e gerenciar o consumo de tokens pela API do OpenAI do Azure.

Para importar uma API do OpenAI do Azure para o Gerenciamento de API:

  1. No portal do Azure, navegue até a instância do Gerenciamento de API.

  2. No menu do lado esquerdo, em APIs, selecione APIs>+ Adicionar API.

  3. Em Criar a partir do recurso do Azure, selecione Serviço OpenAI do Azure.

    Captura de tela da criação de uma API a partir do Serviço OpenAI do Azure no portal.

  4. Na guia Informações Básicas:

    1. Selecione o recurso do OpenAI do Azure que você quer importar.

    2. Opcionalmente, selecione uma versão da API do OpenAI do Azure. Se você não selecionar uma, a versão mais recente da API REST pronta para a produção será usada por padrão.

    3. Insira um Nome de exibição e uma Descrição opcional para a API.

    4. Na URL de Base, acrescente um caminho que sua instância de Gerenciamento de API usará para acessar os pontos de extremidade da API do OpenAI do Azure. Se você habilitar Garantir a compatibilidade do SDK da OpenAI (recomendado), /openai será acrescentado automaticamente à URL de Base.

      Por exemplo, se o seu ponto de extremidade do gateway do Gerenciamento de API for https://contoso.azure-api.net, defina uma URL de Base semelhante a https://contoso.azure-api.net/my-openai-api/openai.

    5. Opcionalmente, selecione um ou mais produtos e os associe à API. Selecione Avançar.

  5. Na guia Políticas, habilite opcionalmente as políticas para monitorar e gerenciar o consumo de tokens da API do OpenAI do Azure. Se esse recurso for selecionado, insira as configurações ou aceite os padrões que definem as políticas azure-openai-token-limit e azure-openai-emit-token-metric para a sua API. Você também pode definir ou atualizar as configurações de políticas mais tarde. Selecione Examinar + criar.

  6. Após as configurações terem sido validadas, selecione Criar.

Opção 2. Adicionar a especificação OpenAPI ao Gerenciamento de API

Alternativamente, baixe manualmente a especificação OpenAPI para a API REST do OpenAI do Azure e a adicione ao Gerenciamento de API como uma API OpenAPI.

Baixar a especificação de OpenAPI

Baixe a especificação OpenAPI para a API REST do OpenAI do Azure, como, por exemplo, a versão GA 2024-02-01.

  1. Em um editor de texto, abra o arquivo de especificação que você baixou.

  2. No elemento servers na especificação, substitua o nome do seu ponto de extremidade do Serviço OpenAI do Azure no espaço reservado dos valores url e ponto de extremidade default na especificação. Por exemplo, se o seu ponto de extremidade do Serviço OpenAI do Azure for contoso.openai.azure.com, atualize o elemento servers com os seguintes valores:

    • URL: https://contoso.openai.azure.com/openai
    • ponto de extremidade padrão: contoso.openai.azure.com
    [...]
    "servers": [
        {
          "url": "https://contoso.openai.azure.com/openai",
          "variables": {
            "endpoint": {
              "default": "contoso.openai.azure.com"
            }
          }
        }
      ],
    [...]
    
  3. Anote o valor da API version na especificação. Você precisará dela para testar a API. Exemplo: 2024-02-01.

Adicionar a especificação OpenAPI para o Gerenciamento de API

  1. No portal do Azure, navegue até a instância do Gerenciamento de API.
  2. No menu à esquerda, selecione APIs>+ Adicionar API.
  3. Em Definir uma nova API, selecione OpenAPI. Insira um Nome de exibição e um Nome para a API.
  4. Insira um sufixo de URL de API que termine em /openai para acessar os pontos de extremidade da API do OpenAI do Azure na sua instância de Gerenciamento de API. Exemplo: my-openai-api/openai.
  5. Selecione Criar.

A API é importada e exibe as operações da especificação OpenAPI.

Configurar a autenticação para a API do OpenAI do Azure

Para se autenticar na API do OpenAI do Azure, você deve fornecer uma chave de API ou uma identidade gerenciada. Se você importou a API do OpenAI do Azure diretamente para a sua instância de Gerenciamento de API, a autenticação usando a identidade gerenciada da instância de Gerenciamento de API será configurada automaticamente.

Se adicionou a API do OpenAI do Azure da sua especificação OpenAPI, você precisará configurar a autenticação. Para obter mais informações sobre como configurar a autenticação usando políticas de Gerenciamento de API, confira Autenticar-se e autorizar a API do OpenAI do Azure.

Testar a API do OpenAI do Azure

Para garantir que a API do OpenAI do Azure esteja funcionando conforme o esperado, teste-a no console de testes do Gerenciamento de API. Você precisa fornecer uma ID de implantação de modelo (nome) configurada no recurso do OpenAI do Azure para testar a API.

  1. Selecione a API que você criou na etapa anterior.

  2. Selecione a guia Testar.

  3. Selecione uma operação que seja compatível com o modelo que você implantou no recurso do OpenAI do Azure. A página mostra os campos dos parâmetros e cabeçalhos.

  4. Nos Parâmetros de modelo, insira os seguintes valores:

    • deployment-id — a ID de uma implantação no Serviço OpenAI do Azure
    • api-version — uma versão válida da API do OpenAI do Azure, como a versão da API que você selecionou quando importou a API. Captura de tela do teste de uma API do Serviço OpenAI do Azure no portal.
  5. Insira outros parâmetros e cabeçalhos conforme necessário. Dependendo da operação, talvez você precise configurar ou atualizar um Corpo da solicitação.

    Observação

    No console de teste, o Gerenciamento de API preenche automaticamente um cabeçalho Ocp-Apim-Subscription-Key e configura a chave de assinatura da assinatura interna de acesso total. Essa chave permite o acesso a todas as API na instância de Gerenciamento de API. Opcionalmente, exiba o cabeçalho Ocp-Apim-Subscription-Key selecionando o ícone "olho" ao lado da Solicitação HTTP.

  6. Selecione Enviar.

    Quando o teste é bem-sucedido, o back-end responde com um código de resposta HTTP bem-sucedido e alguns dados. Os dados de uso de tokens são acrescentados à resposta para ajudar você a monitorar e gerenciar o consumo da sua API do OpenAI do Azure. Captura de tela dos dados de uso de tokens na resposta da API no portal.

Políticas de armazenamento em cache para as APIs do OpenAI do Azure

Além das políticas azure-openai-token-limit e azure-openai-emit-token-metric que você pode configurar ao importar uma API do Serviço OpenAI do Azure, o Gerenciamento de API fornece as seguintes políticas de armazenamento em cache para ajudar você a otimizar o desempenho e reduzir a latência das APIs do OpenAI do Azure:

  • azure-openai-semantic-cache-store
  • azure-openai-semantic-cache-lookup