@llumiverse/drivers
Version:
LLM driver implementations. Currently supported are: openai, huggingface, bedrock, replicate.
27 lines • 1.02 kB
JavaScript
import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity";
import { AzureOpenAI } from "openai";
import { BaseOpenAIDriver } from "./index.js";
export class AzureOpenAIDriver extends BaseOpenAIDriver {
service;
provider;
constructor(opts) {
super(opts);
if (!opts.azureADTokenProvider && !opts.apiKey) {
opts.azureADTokenProvider = this.getDefaultAuth();
}
this.service = new AzureOpenAI({
apiKey: opts.apiKey,
azureADTokenProvider: opts.azureADTokenProvider,
endpoint: opts.endpoint,
apiVersion: opts.apiVersion ?? "2024-10-21",
deployment: opts.deployment
});
this.provider = "azure_openai";
}
getDefaultAuth() {
const scope = "https://cognitiveservices.azure.com/.default";
const azureADTokenProvider = getBearerTokenProvider(new DefaultAzureCredential(), scope);
return azureADTokenProvider;
}
}
//# sourceMappingURL=azure.js.map