Gestione di token

Completato

Si supponga di ottenere un improvviso picco di traffico verso l'API, forse c'è una vendita o un altro motivo. Per evitare il consumo eccessivo e le possibili interruzioni del servizio, è necessario capire come gestirlo.

Criteri di limite dei token OpenAI di Azure

Come accennato all'inizio di questa unità, un picco improvviso è qualcosa, è necessario gestire. La buona notizia è che Gestione API di Azure ha qualcosa di chiamato Criteri limite token.

Questo criterio consente ai clienti di impostare limiti sull'utilizzo dei token, espressi in token al minuto (TPM) e garantisce un utilizzo equo ed efficiente delle risorse OpenAI.

Funzionalità principali

Le funzionalità principali di questo criterio sono:

  • Controllo preciso: I clienti possono assegnare limiti basati su token su varie chiavi del contatore, ad esempio la chiave di sottoscrizione o l'indirizzo IP, adattando l'imposizione a casi d'uso specifici.
  • Monitoraggio in tempo reale: I criteri si basano sulle metriche di utilizzo dei token restituite dall'endpoint OpenAI, consentendo un monitoraggio accurato e l'applicazione dei limiti in tempo reale.
  • Pre-calcolo dei token: Consente il precalcolazione dei token di richiesta sul lato Gestione API di Azure, riducendo al minimo le richieste non necessarie al back-end OpenAI se il limite è già superato.
  • Personalizzazione avanzata: I clienti possono applicare intestazioni e variabili, ad esempio token usati e token rimanenti all'interno dei criteri, per migliorare il controllo e la personalizzazione.

Ss si può vedere, ci sono alcune funzionalità che consentono di gestire i costi e grazie al monitoraggio in tempo reale è possibile assicurarsi di non superare i limiti.

Modalità d'uso

Per usare questo criterio, è necessario aggiungerlo alla pipeline di elaborazione in ingresso dell'operazione API. È necessario eseguire la procedura seguente:

<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" />

È possibile impostare alcuni attributi, ma quelli più importanti sono:

  • chiave-contatore: Chiave da usare per il conteggio dei token. Questo valore può essere una chiave di sottoscrizione o un indirizzo IP.
  • token al minuto: Numero di token consentiti al minuto.
  • token-richieste-stime: Indica se stimare o meno i token di richiesta.

Criteri delle metriche dei token di creazione di Azure OpenAI

Questo criterio risolve la necessità di monitorare e analizzare in modo dettagliato l'utilizzo dei token nelle applicazioni usando i modelli OpenAI di Azure.

Fornendo metriche complete, consente alle organizzazioni di:

  • Ottimizzare l'allocazione delle risorse: Comprendere e gestire il consumo di token in modo efficace.
  • Migliorare il processo decisionale: Ottenere informazioni dettagliate sui modelli di utilizzo per prendere decisioni informate sul ridimensionamento e sulla gestione delle risorse.
  • Migliorare il monitoraggio delle prestazioni: Tenere traccia e analizzare l'utilizzo dei token per identificare e risolvere i potenziali problemi in modo proattivo

Come usare i criteri delle metriche dei token di emissione

Per usare questo criterio, è necessario aggiungerlo alla pipeline di elaborazione in ingresso dell'operazione API. Ecco come codificarlo in XML:

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

Ecco un esempio che usa diverse dimensioni:

<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>

Nell'esempio precedente:

  • Il criterio è configurato per generare metriche del token nello spazio dei nomi AzureOpenAI con dimensioni per ID utente, IP client e ID API.
  • Il valore della dimensione IP client è impostato sull'indirizzo IP del client che effettua la richiesta.

Si supponga ora di poter visualizzare queste metriche in un dashboard ed è possibile monitorare l'utilizzo dell'API in tempo reale. Ad esempio, è possibile vedere il numero di token usati da un utente specifico o il numero di token usati da un'API specifica. Questa potente funzionalità che consente di ottimizzare le risorse e prendere decisioni informate sul ridimensionamento e sulla gestione delle risorse.