UNPKG

route-claudecode

Version:

Advanced routing and transformation system for Claude Code outputs to multiple AI providers

62 lines 2.05 kB
/** * OpenAI SDK Client - 并行模块 * @deprecated Use UnifiedOpenAIClient instead - this client will be removed in v3.0.0 * 废弃警告:请使用UnifiedOpenAIClient - 此客户端将在v3.0.0中移除 * * 使用官方OpenAI SDK实现,提供平滑切换选项 * 设计目标: * 1. 使用官方OpenAI SDK * 2. 保持与enhanced-client相同的接口 * 3. 支持平滑切换 * 4. 集成竞态控制系统 */ import OpenAI from 'openai'; import { BaseRequest, BaseResponse, Provider, ProviderConfig } from '@/types'; export interface OpenAISDKConfig extends ProviderConfig { useOfficialSDK?: boolean; sdkOptions?: { timeout?: number; maxRetries?: number; defaultHeaders?: Record<string, string>; }; } /** * OpenAI SDK客户端 - 官方SDK实现 */ export declare class OpenAISDKClient implements Provider { readonly name: string; readonly type = "openai-sdk"; readonly config: OpenAISDKConfig; protected openaiClient: OpenAI; private validatedConfig; private sessionManager; private apiHandler; constructor(config: OpenAISDKConfig, providerId: string); /** * 健康检查 */ isHealthy(): Promise<boolean>; /** * 发送非流式请求 - 使用统一API处理器 */ sendRequest(request: BaseRequest): Promise<BaseResponse>; /** * 发送流式请求 - 基于非流式API的流式模拟 */ sendStreamRequest(request: BaseRequest): AsyncIterable<any>; /** * 从 BaseRequest 提取 OpenAI 格式(备用方法) * 预期外部 Transformer 已完成转换,这里只是简单提取 */ private extractOpenAIFormat; /** * 包装原始 OpenAI 响应为 BaseResponse 格式 * 最小包装,详细转换由外部 Transformer 处理 */ private wrapResponse; } /** * 创建OpenAI SDK客户端 - 重构后的简化版本 */ export declare function createOpenAISDKClient(config: OpenAISDKConfig, providerId: string): OpenAISDKClient; //# sourceMappingURL=sdk-client.d.ts.map