Condividi tramite


OpenAIUsageDebuggingPlugin

Registra le metriche di utilizzo dell'API OpenAI in un file CSV a scopo di debug e analisi.

Definizione dell'istanza del plug-in

{
  "name": "OpenAIUsageDebuggingPlugin",
  "enabled": true,
  "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll"
}

Esempio di configurazione

None

Proprietà di configurazione

None

Opzioni della riga di comando

None

Osservazioni:

OpenAIUsageDebuggingPlugin acquisisce metriche di utilizzo dettagliate dalle richieste e dalle risposte dell'API compatibili con OpenAI e li scrive in un file CSV. Queste informazioni sono utili per il debug, il rilevamento dell'utilizzo dei token, il monitoraggio dei limiti di frequenza e l'analisi dei modelli di utilizzo delle API nel tempo.

File di output

Il plug-in crea un file CSV denominato devproxy_llmusage_<timestamp>.csv nella directory corrente all'avvio di Dev Proxy. Il formato timestamp è yyyyMMddHHmmss.

Struttura di file CSV

Il file CSV contiene le colonne seguenti:

colonna Description
time Timestamp ISO 8601 della richiesta
status Codice di stato HTTP della risposta
retry-after Valore dell'intestazione retry-after (per le richieste con frequenza limitata)
policy Valore dell'intestazione policy-id (per le richieste con frequenza limitata)
prompt tokens Numero di token nel prompt/input
completion tokens Numero di token nel completamento/output
cached tokens Numero di token memorizzati nella cache (dalla cache dei prompt)
total tokens Numero totale di token usati (richiesta + completamento)
remaining tokens Token rimanenti nella finestra limite di frequenza
remaining requests Richieste rimanenti nella finestra limite di frequenza

Output di esempio

time,status,retry-after,policy,prompt tokens,completion tokens,cached tokens,total tokens,remaining tokens,remaining requests
2025-10-28T10:15:30.123Z,200,,,150,75,,225,9850,49
2025-10-28T10:15:35.456Z,200,,,200,100,50,300,9550,48
2025-10-28T10:15:40.789Z,429,60,rate-limit-policy-1,,,,,,0

Scenari supportati

Il plug-in registra le metriche per:

  • Richieste riuscite (codici di stato 2xx): acquisisce le metriche di utilizzo dei token, inclusi token di richiesta, token di completamento, token memorizzati nella cache e limiti di frequenza rimanenti
  • Risposte di errore (codici di stato 4xx): acquisisce informazioni sulla limitazione della frequenza, incluse le intestazioni e gli ID dei criteri di ripetizione dei tentativi

Risposte in streaming

Il plug-in gestisce correttamente le risposte in streaming (usando text/event-stream il tipo di contenuto) estraendo il blocco finale contenente le informazioni sull'utilizzo.

Casi d'uso

Questo plug-in è utile per:

  • Debug del consumo di token: informazioni sul numero di token usati dai prompt e dai completamenti
  • Limiti di frequenza di monitoraggio: tenere traccia dei token e delle richieste rimanenti per evitare di raggiungere i limiti di frequenza
  • Analisi dei costi: analisi dei modelli di utilizzo dei token per stimare i costi
  • Ottimizzazione delle prestazioni: identificazione delle richieste con conteggi di token elevati
  • Analisi della memorizzazione nella cache prompt: rilevamento dell'utilizzo dei token memorizzati nella cache per ottimizzare le strategie di memorizzazione nella cache dei prompt

Confronto con OpenAITelemetryPlugin

Mentre OpenAITelemetryPlugin invia i dati di telemetria ai dashboard compatibili con OpenTelemetry per il monitoraggio e la visualizzazione in tempo reale, OpenAIUsageDebuggingPlugin è incentrato sulla creazione di log CSV dettagliati per l'analisi e il debug offline. I due plug-in si integrano tra loro:

  • Usare OpenAITelemetryPlugin per il monitoraggio in tempo reale, il rilevamento dei costi e l'integrazione con le piattaforme di osservabilità
  • Usare OpenAIUsageDebuggingPlugin per il debug dettagliato, l'analisi basata su CSV e le informazioni sul limite di frequenza di rilevamento

È possibile abilitare entrambi i plug-in contemporaneamente per ottenere dati di telemetria in tempo reale e log CSV dettagliati.

Passo successivo