OpenAIClientOptionsWithAzureAgent interface

Opzioni client OpenAI estese per includere la configurazione degli endpoint Azure Agent.

Extends

ClientOptions

Proprietà

azureConfig

Azure Agent endpoint configuration.

Proprietà ereditate

adminAPIKey

Predefinito su process.env['OPENAI_ADMIN_KEY'].

apiKey

La chiave API viene usata per l'autenticazione.

  • Accetta sia una stringa statica che una funzione asincrona che si risolve in una stringa.
  • Predefinito su process.env['OPENAI_API_KEY'].
  • Quando viene fornita una funzione, viene invocata durante la costruzione delle header di autenticazione dei portatori per ogni tentativo, inclusi ritentativi e chiamate dirette buildRequest() . Il risultato di ogni invocazione viene utilizzato per una propria richiesta.
  • La funzione deve restituire una stringa non vuota; altrimenti viene lanciato un OpenAIErrr.
  • Se la funzione viene lanciata, l'errore viene avvolto in un OpenAIError con l'errore originale disponibile come cause.
  • Si escludono con workloadIdentity a vicenda.
baseURL

Sovrascrivere l'URL base predefinito per l'API, ad esempio, "https://api.example.com/v2/"

Predefinito process.env['OPENAI_BASE_URL'].

credential

Certificato di prima classe creato con fromX509 .openai/auth/x509-transport

dangerouslyAllowBrowser

Per impostazione predefinita, l'uso lato client di questa libreria non è consentito, poiché rischia di esporre le tue credenziali API segrete agli attaccanti. Imposta questa opzione solo true se comprendi i rischi e hai adeguate misure di mitigazione.

dataResidency

Seleziona un endpoint regionale OpenAI. Questo sovrascrive un URL ereditato o di base dell'ambiente ed è mutuamente esclusivo con un URL esplicito baseURL o provider. La disponibilità dipende dal tuo progetto e dal modello; non viene effettuato alcun fallback. null e undefined lasciare invariata la risoluzione degli URL base ordinaria.

defaultHeaders

Intestazioni predefinite da includere con ogni richiesta all'API.

Questi possono essere rimossi nelle singole richieste impostando esplicitamente l'intestazione su null in opzioni di richiesta.

defaultQuery

Parametri predefiniti di query da includere con ogni richiesta all'API.

Questi possono essere rimossi nelle singole richieste impostando esplicitamente il param su undefined in nelle opzioni di richiesta.

fetch

Specifica un'implementazione di una funzione personalizzata fetch .

Se non è fornito, ci aspettiamo che venga fetch definito a livello globale.

fetchOptions

Ulteriori RequestInit opzioni da passare alle fetch chiamate. Le proprietà saranno sovrascritte da ogni richiesta fetchOptions.

logger

Imposta il logger.

Predefinito su globalThis.console.

logLevel

Imposta il livello del log.

Di default usa process.env['OPENAI_LOG'] o 'warn' se non è impostato.

maxRetries

Il numero massimo di volte in cui il client ritenterà una richiesta in caso di fallimento temporaneo, come un errore di rete o un errore 5XX dal server.

organization

Predefinito su process.env['OPENAI_ORG_ID'].

project

Predefinito process.env['OPENAI_PROJECT_ID'].

provider

Configura questo client per utilizzare un provider API di terze parti. Mutuamente esclusivi con autenticazione di alto livello e baseURL opzioni.

timeout

Il tempo massimo (in millisecondi) che il client dovrebbe aspettare una risposta dal server prima di spegnere una singola richiesta.

Nota che i timeout delle richieste vengono riprovati di default, quindi nel peggiore dei casi potresti aspettare molto più a lungo prima che la promessa abbia successo o fallisca.

Node.js fetch impone timeout indipendenti di header di risposta e di inattività corporea, tipicamente di cinque minuti, anche quando questo timeout è più lungo. Per aumentarle, installa undici e configura un Agent con l'implementazione fetch corrispondente:

import { Agent, fetch } from 'undici';

const timeout = 20 * 60 * 1000;
const client = new OpenAI({
  timeout,
  fetch,
  fetchOptions: {
    dispatcher: new Agent({ headersTimeout: timeout, bodyTimeout: timeout }),
  },
});
webhookSecret

Predefinito su process.env['OPENAI_WEBHOOK_SECRET'].

workloadIdentity

Configurazione dell'identità del carico di lavoro per l'autenticazione OAuth2 token exchange. Si escludono con apiKey a vicenda.

x509Transport

Approvato, blocco Node.js trasporto certificato richiesto solo per l'identità del carico di lavoro X.509.

Dettagli proprietà

azureConfig

Azure Agent endpoint configuration.

azureConfig?: AzureAgentConfig

Valore della proprietà

Dettagli proprietà ereditate

adminAPIKey

Predefinito su process.env['OPENAI_ADMIN_KEY'].

adminAPIKey?: string | null

Valore della proprietà

string | null

Ereditato da OpenAIClientOptions.adminAPIKey

apiKey

La chiave API viene usata per l'autenticazione.

  • Accetta sia una stringa statica che una funzione asincrona che si risolve in una stringa.
  • Predefinito su process.env['OPENAI_API_KEY'].
  • Quando viene fornita una funzione, viene invocata durante la costruzione delle header di autenticazione dei portatori per ogni tentativo, inclusi ritentativi e chiamate dirette buildRequest() . Il risultato di ogni invocazione viene utilizzato per una propria richiesta.
  • La funzione deve restituire una stringa non vuota; altrimenti viene lanciato un OpenAIErrr.
  • Se la funzione viene lanciata, l'errore viene avvolto in un OpenAIError con l'errore originale disponibile come cause.
  • Si escludono con workloadIdentity a vicenda.
apiKey?: string | ApiKeySetter | null

Valore della proprietà

string | ApiKeySetter | null

Ereditato da OpenAIClientOptions.apiKey

baseURL

Sovrascrivere l'URL base predefinito per l'API, ad esempio, "https://api.example.com/v2/"

Predefinito process.env['OPENAI_BASE_URL'].

baseURL?: string | null

Valore della proprietà

string | null

Ereditato da OpenAIClientOptions.baseURL

credential

Certificato di prima classe creato con fromX509 .openai/auth/x509-transport

credential?: X509Credential

Valore della proprietà

X509Credential

Ereditato da OpenAIClientOptions.credential

dangerouslyAllowBrowser

Per impostazione predefinita, l'uso lato client di questa libreria non è consentito, poiché rischia di esporre le tue credenziali API segrete agli attaccanti. Imposta questa opzione solo true se comprendi i rischi e hai adeguate misure di mitigazione.

dangerouslyAllowBrowser?: boolean

Valore della proprietà

boolean

Ereditato da OpenAIClientOptions.dangerouslyAllowBrowser

dataResidency

Seleziona un endpoint regionale OpenAI. Questo sovrascrive un URL ereditato o di base dell'ambiente ed è mutuamente esclusivo con un URL esplicito baseURL o provider. La disponibilità dipende dal tuo progetto e dal modello; non viene effettuato alcun fallback. null e undefined lasciare invariata la risoluzione degli URL base ordinaria.

dataResidency?: DataResidency | null

Valore della proprietà

DataResidency | null

Ereditato da OpenAIClientOptions.dataResidency

defaultHeaders

Intestazioni predefinite da includere con ogni richiesta all'API.

Questi possono essere rimossi nelle singole richieste impostando esplicitamente l'intestazione su null in opzioni di richiesta.

defaultHeaders?: HeadersLike

Valore della proprietà

HeadersLike

Ereditato da OpenAIClientOptions.defaultHeaders

defaultQuery

Parametri predefiniti di query da includere con ogni richiesta all'API.

Questi possono essere rimossi nelle singole richieste impostando esplicitamente il param su undefined in nelle opzioni di richiesta.

defaultQuery?: Record<string, string | undefined>

Valore della proprietà

Record<string, string | undefined>

Ereditato da OpenAIClientOptions.defaultQuery

fetch

Specifica un'implementazione di una funzione personalizzata fetch .

Se non è fornito, ci aspettiamo che venga fetch definito a livello globale.

fetch?: Fetch

Valore della proprietà

Fetch

Ereditato da OpenAIClientOptions.fetch

fetchOptions

Ulteriori RequestInit opzioni da passare alle fetch chiamate. Le proprietà saranno sovrascritte da ogni richiesta fetchOptions.

fetchOptions?: MergedRequestInit

Valore della proprietà

MergedRequestInit

Ereditato da OpenAIClientOptions.fetchOptions

logger

Imposta il logger.

Predefinito su globalThis.console.

logger?: Logger

Valore della proprietà

Logger

Ereditato da OpenAIClientOptions.logger

logLevel

Imposta il livello del log.

Di default usa process.env['OPENAI_LOG'] o 'warn' se non è impostato.

logLevel?: LogLevel

Valore della proprietà

LogLevel

Ereditato da OpenAIClientOptions.logLevel

maxRetries

Il numero massimo di volte in cui il client ritenterà una richiesta in caso di fallimento temporaneo, come un errore di rete o un errore 5XX dal server.

maxRetries?: number

Valore della proprietà

number

Ereditato da OpenAIClientOptions.maxRetries

organization

Predefinito su process.env['OPENAI_ORG_ID'].

organization?: string | null

Valore della proprietà

string | null

Ereditato da OpenAIClientOptions.organization

project

Predefinito process.env['OPENAI_PROJECT_ID'].

project?: string | null

Valore della proprietà

string | null

Ereditato da OpenAIClientOptions.project

provider

Configura questo client per utilizzare un provider API di terze parti. Mutuamente esclusivi con autenticazione di alto livello e baseURL opzioni.

provider?: Provider

Valore della proprietà

Provider

Ereditato da OpenAIClientOptions.provider

timeout

Il tempo massimo (in millisecondi) che il client dovrebbe aspettare una risposta dal server prima di spegnere una singola richiesta.

Nota che i timeout delle richieste vengono riprovati di default, quindi nel peggiore dei casi potresti aspettare molto più a lungo prima che la promessa abbia successo o fallisca.

Node.js fetch impone timeout indipendenti di header di risposta e di inattività corporea, tipicamente di cinque minuti, anche quando questo timeout è più lungo. Per aumentarle, installa undici e configura un Agent con l'implementazione fetch corrispondente:

import { Agent, fetch } from 'undici';

const timeout = 20 * 60 * 1000;
const client = new OpenAI({
  timeout,
  fetch,
  fetchOptions: {
    dispatcher: new Agent({ headersTimeout: timeout, bodyTimeout: timeout }),
  },
});
timeout?: number

Valore della proprietà

number

Ereditato da OpenAIClientOptions.timeout

webhookSecret

Predefinito su process.env['OPENAI_WEBHOOK_SECRET'].

webhookSecret?: string | null

Valore della proprietà

string | null

Ereditato da OpenAIClientOptions.webhookSecret

workloadIdentity

Configurazione dell'identità del carico di lavoro per l'autenticazione OAuth2 token exchange. Si escludono con apiKey a vicenda.

workloadIdentity?: WorkloadIdentity | X509WorkloadIdentity

Valore della proprietà

WorkloadIdentity | X509WorkloadIdentity

Ereditato da OpenAIClientOptions.workloadIdentity

x509Transport

Approvato, blocco Node.js trasporto certificato richiesto solo per l'identità del carico di lavoro X.509.

x509Transport?: X509Transport

Valore della proprietà

X509Transport

Ereditato da OpenAIClientOptions.x509Transport