Core language model functionality for text generation using Azure OpenAI's chat and completion models. Supports both modern chat-based and legacy completion-based text generation with full AI SDK integration.
Creates a chat language model when the provider is called directly.
/**
* Creates an Azure OpenAI chat model for text generation
* @param deploymentId - Azure OpenAI deployment name
* @param settings - Optional model settings and parameters
* @returns Language model instance for text generation
*/
azure(deploymentId: string, settings?: OpenAIChatSettings): LanguageModelV1;Usage Example:
import { azure } from "@ai-sdk/azure";
import { generateText } from "ai";
const model = azure("gpt-4o");
const { text } = await generateText({
model,
prompt: "Explain quantum computing in simple terms",
});Creates Azure OpenAI chat models for conversational text generation using the chat completions API.
/**
* Creates an Azure OpenAI chat model for text generation
* @param deploymentId - Azure OpenAI deployment name
* @param settings - Optional chat model settings
* @returns Language model instance optimized for chat interactions
*/
languageModel(deploymentId: string, settings?: OpenAIChatSettings): LanguageModelV1;
chat(deploymentId: string, settings?: OpenAIChatSettings): LanguageModelV1;Usage Examples:
import { azure } from "@ai-sdk/azure";
import { generateText, streamText } from "ai";
// Basic chat model
const chatModel = azure.chat("gpt-4o");
// With custom settings
const customChatModel = azure.languageModel("gpt-4o", {
temperature: 0.7,
maxTokens: 1000,
topP: 0.9,
});
// Use with generateText
const { text } = await generateText({
model: chatModel,
messages: [
{ role: "user", content: "What are the benefits of renewable energy?" }
],
});
// Use with streamText
const { textStream } = await streamText({
model: customChatModel,
prompt: "Write a story about a time traveler",
});Creates Azure OpenAI completion models for text generation using the legacy completions API.
/**
* Creates an Azure OpenAI completion model for text generation
* @param deploymentId - Azure OpenAI deployment name (e.g., "gpt-35-turbo-instruct")
* @param settings - Optional completion model settings
* @returns Language model instance using completions API
*/
completion(deploymentId: string, settings?: OpenAICompletionSettings): LanguageModelV1;Usage Example:
import { azure } from "@ai-sdk/azure";
import { generateText } from "ai";
const completionModel = azure.completion("gpt-35-turbo-instruct", {
temperature: 0.5,
maxTokens: 500,
});
const { text } = await generateText({
model: completionModel,
prompt: "Complete this sentence: The future of artificial intelligence is",
});Creates Azure OpenAI responses API models for text generation using the responses endpoint.
/**
* Creates an Azure OpenAI responses API model for text generation
* @param deploymentId - Azure OpenAI deployment name
* @returns Language model instance using responses API
*/
responses(deploymentId: string): LanguageModelV1;Usage Example:
import { azure } from "@ai-sdk/azure";
import { generateText } from "ai";
const responsesModel = azure.responses("gpt-4o");
const { text } = await generateText({
model: responsesModel,
prompt: "Analyze the impact of climate change on agriculture",
});interface OpenAIChatSettings {
logitBias?: Record<number, number>;
logprobs?: boolean | number;
parallelToolCalls?: boolean;
structuredOutputs?: boolean;
useLegacyFunctionCalling?: boolean; // @deprecated
user?: string;
downloadImages?: boolean;
simulateStreaming?: boolean; // @deprecated
reasoningEffort?: 'low' | 'medium' | 'high';
}
interface OpenAICompletionSettings {
echo?: boolean;
logitBias?: Record<number, number>;
logprobs?: boolean | number;
suffix?: string;
user?: string;
}All language models created by the Azure provider implement the LanguageModelV1 interface and are compatible with all AI SDK functions:
generateText() - Generate single text completionstreamText() - Stream text generation in real-timegenerateObject() - Generate structured objects with JSON schemastreamObject() - Stream structured object generationAdvanced Usage Example:
import { azure } from "@ai-sdk/azure";
import { generateObject } from "ai";
import { z } from "zod";
const model = azure("gpt-4o", {
temperature: 0.1, // Low temperature for structured output
});
const result = await generateObject({
model,
schema: z.object({
title: z.string(),
summary: z.string(),
categories: z.array(z.string()),
}),
prompt: "Analyze this article and extract structured information: [article text]",
});
console.log(result.object.title);
console.log(result.object.categories);