Gestão de tokens

Concluído

Imagine que você tenha um aumento repentino no tráfego em direção à sua API, talvez haja uma venda ou algum outro motivo. Para evitar o consumo excessivo e a possível interrupção do serviço, você precisa descobrir como gerenciar isso.

Política de Limite de Token OpenAI do Azure

Como mencionado no início desta unidade, pico repentino é algo, você precisa lidar. A boa notícia é que o Gerenciamento de API do Azure tem algo chamado Política de Limite de Token.

Esta política permite que os clientes definam limites de consumo de tokens, expressos em tokens por minuto (TPM) e garante uma utilização justa e eficiente dos recursos OpenAI.

Funcionalidades principais

As principais características desta política são:

  • Controle preciso: os clientes podem atribuir limites baseados em tokens em várias chaves de contador, como chave de assinatura ou endereço IP, adaptando a aplicação a casos de uso específicos.
  • Monitoramento em tempo real: a política se baseia em métricas de uso de token retornadas do endpoint OpenAI, permitindo o monitoramento preciso e a aplicação de limites em tempo real.
  • Pré-cálculo de tokens: permite o pré-cálculo de tokens de prompt no lado do Gerenciamento de API do Azure, minimizando solicitações desnecessárias para o back-end do OpenAI se o limite já for excedido.
  • Personalização aprimorada: os clientes podem aplicar cabeçalhos e variáveis, como tokens consumidos e tokens restantes, dentro de políticas para melhor controle e personalização.

Ss você pode ver, há alguns recursos que ajudam você a gerenciar custos e, graças ao monitoramento em tempo real, você pode ter certeza de que não está excedendo os limites.

Como utilizá-lo

Para usar essa política, você precisa adicioná-la ao pipeline de processamento de entrada da operação da API. Veja como você pode fazer isso:

<azure-openai-token-limit counter-key="key value"
        tokens-per-minute="number"
        estimate-prompt-tokens="true | false"    
        retry-after-header-name="custom header name, replaces default 'Retry-After'" 
        retry-after-variable-name="policy expression variable name"
        remaining-tokens-header-name="header name"  
        remaining-tokens-variable-name="policy expression variable name"
        tokens-consumed-header-name="header name"
        tokens-consumed-variable-name="policy expression variable name" />

Há alguns atributos que você pode definir, mas os mais importantes são:

  • counter-key: A chave a ser usada para contar tokens. Esse valor pode ser uma chave de assinatura ou um endereço IP.
  • tokens por minuto: o número de tokens permitidos por minuto.
  • estimate-prompt-tokens: se os tokens de prompt devem ser estimados ou não.

Azure OpenAI Emit Token Metric Policy

Esta política aborda a necessidade de monitoramento e análise detalhados do uso de token em aplicativos que usam modelos do Azure OpenAI.

Ao fornecer métricas abrangentes, ajuda as organizações a:

  • Otimizar a alocação de recursos: entenda e gerencie o consumo de tokens de forma eficaz.
  • Melhorar a tomada de decisões: obtenha informações sobre padrões de uso para tomar decisões informadas sobre dimensionamento e gerenciamento de recursos.
  • Aprimore o monitoramento de desempenho: rastreie e analise o uso de tokens para identificar e resolver possíveis problemas de forma proativa

Como usar a política de métrica de token de emissão

Para usar essa política, você precisa adicioná-la ao pipeline de processamento de entrada da operação da API. Veja como codificá-lo em XML:

<azure-openai-emit-token-metric
        namespace="metric namespace" >      
        <dimension name="dimension name" value="dimension value" />
        ...additional dimensions...
</azure-openai-emit-token-metric>

Aqui está um exemplo usando várias dimensões:

<policies>
  <inbound>
      <azure-openai-emit-token-metric
            namespace="AzureOpenAI">   
            <dimension name="User ID" />
            <dimension name="Client IP" value="@(context.Request.IpAddress)" />
            <dimension name="API ID" />
        </azure-openai-emit-token-metric> 
  </inbound>
  <outbound>
  </outbound>
</policies>

No exemplo anterior:

  • a política é configurada para emitir métricas de token para o namespace AzureOpenAI com dimensões para ID de usuário, IP do cliente e ID de API.
  • O valor da dimensão IP do cliente é definido como o endereço IP do cliente que faz a solicitação.

Imagine agora que você pode mostrar essas métricas em um painel e pode monitorar o uso da sua API em tempo real. Por exemplo, você pode ver quantos tokens estão sendo usados por um usuário específico ou quantos tokens estão sendo usados por uma API específica. Este poderoso recurso que pode ajudá-lo a otimizar seus recursos e tomar decisões informadas sobre dimensionamento e gerenciamento de recursos.

Verifique o seu conhecimento

1.

Como uma política de limite de token ajuda no gerenciamento do uso da API?

2.

Quais são algumas boas dimensões a serem usadas para uma política de métrica de token no Gerenciamento de API do Azure e por quê?