Metodi di autenticazione senza chiave
Nell'autenticazione senza chiave in Azure OpenAI per JavaScript, si usano le identità gestite o i principali del servizio di Azure per autenticarsi anziché inserire direttamente nel codice le chiavi API o altre credenziali. Questa operazione viene eseguita tramite la classe DefaultAzureCredential o ManagedIdentityCredential, che offre un modo sicuro e semplificato per ottenere i token necessari per l'autenticazione dei servizi di Azure. Ecco come funziona in pratica:
- Configurare l'ambiente di Azure: assicurarsi che l'ambiente di Azure sia configurato correttamente con le identità gestite.
- Inizializza credenziali: usare la classe
DefaultAzureCredentialoManagedIdentityCredentialda Azure Identity SDK per JavaScript per gestire facilmente il processo di autenticazione.
Ecco un frammento di codice di esempio:
import { AzureOpenAI } from 'openai';
import { getBearerTokenProvider, DefaultAzureCredential } from '@azure/identity';
// Make sure to set AZURE_OPENAI_ENDPOINT with the endpoint of your Azure resource.
const credential = new DefaultAzureCredential();
const scope = 'https://cognitiveservices.azure.com/.default';
const azureADTokenProvider = getBearerTokenProvider(credential, scope);
// Create client instance
// 3) Create an Azure OpenAI client
const openai = new AzureOpenAI({ azureADTokenProvider });
// 4) Make API call and print response
const result = await openai.chat.completions.create({
model: 'gpt-4-1106-preview',
messages: [{ role: 'user', content: 'Say hello!' }],
});
console.log(result.choices[0]!.message?.content);
- Creare un'istanza client: Creare un'istanza di
AzureOpenAIcon l'endpoint e le credenziali ottenute daDefaultAzureCredential. - Effettuare chiamate API: usare il client per interagire con i servizi OpenAI di Azure in modo sicuro, senza gestire in modo esplicito le credenziali sensibili.