/** * Azure OpenAI LLM Provider * * Azure OpenAI Service provider for chat completions * * @requirement REQ-LLM-001 * @design DES-KATASHIRO-003-LLM */ import type { z, ZodType } from 'zod'; import type { ProviderConfig, GenerateRequest, GenerateResponse, StreamChunk } from '../types.js'; import { BaseLLMProvider } from './BaseLLMProvider.js'; /** * Azure OpenAI設定 */ export interface AzureOpenAIProviderConfig extends ProviderConfig { /** Azure OpenAI エンドポイント */ endpoint?: string; /** APIキー */ apiKey?: string; /** デプロイメント名 */ deploymentName?: string; /** APIバージョン */ apiVersion?: string; } /** * Azure OpenAI LLMプロバイダー * * Azure OpenAI Serviceを使用したテキスト生成 * * @example * ```typescript * const provider = new AzureOpenAILLMProvider({ * endpoint: 'https://your-resource.openai.azure.com', * apiKey: process.env.AZURE_OPENAI_API_KEY, * deploymentName: 'gpt-4o', * apiVersion: '2024-02-15-preview', * }); * * const response = await provider.generate({ * messages: [{ role: 'user', content: 'Hello!' }], * }); * ``` */ export declare class AzureOpenAILLMProvider extends BaseLLMProvider { readonly name = "azure-openai"; readonly supportedModels: string[]; private readonly endpoint; private readonly apiKey; private readonly deploymentName; private readonly apiVersion; constructor(config?: AzureOpenAIProviderConfig); protected getDefaultModel(): string; /** * メッセージ形式変換 */ private convertMessages; /** * ツール定義変換 */ private convertTools; /** * Finish Reason変換 */ private convertFinishReason; /** * テキスト生成 */ generate(request: GenerateRequest): Promise; /** * ストリーミング生成 */ generateStream(request: GenerateRequest): AsyncGenerator; /** * 構造化出力生成 */ generateStructured(request: GenerateRequest, schema: T): Promise>; /** * トークン数カウント(近似) */ countTokens(text: string, _model?: string): Promise; } //# sourceMappingURL=AzureOpenAILLMProvider.d.ts.map