UNPKG

route-claudecode

Version:

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

135 lines 3.6 kB
/** * 智能模型发现系统 v2.0 * 通过/models端点获取模型列表,多次测试避免流控误判,智能更新配置 */ import { ProviderConfig } from '@/types'; export interface ModelTestResult { modelId: string; isAvailable: boolean; responseTime: number; successRate: number; testCount: number; errors: string[]; statusCodes: number[]; lastTestTime: number; confidence: 'high' | 'medium' | 'low'; } export interface ProviderModelInfo { id: string; name?: string; description?: string; created?: number; owned_by?: string; capabilities?: { text: boolean; vision: boolean; tools: boolean; streaming: boolean; }; pricing?: { input: number; output: number; }; context_length?: number; } export interface IntelligentDiscoveryConfig { providerId: string; provider: ProviderConfig; testConfig: { testCount: number; testInterval: number; requestTimeout: number; testPrompt: string; maxTokens: number; rateLimitBackoff: number; maxConcurrentTests: number; }; qualityThresholds: { minSuccessRate: number; maxResponseTime: number; minConfidenceLevel: 'high' | 'medium' | 'low'; }; cacheConfig: { modelListTTL: number; testResultTTL: number; enablePersistentCache: boolean; }; } export interface DiscoveryReport { providerId: string; discoveryTime: number; totalModelsFound: number; modelsFromAPI: number; modelsFromFallback: number; availableModels: ModelTestResult[]; unavailableModels: ModelTestResult[]; configurationUpdated: boolean; recommendations: string[]; warnings: string[]; errors: string[]; performance: { totalDuration: number; apiCallDuration: number; testingDuration: number; averageResponseTime: number; }; } export declare class IntelligentModelDiscovery { private config; private cache; private cacheExpiry; private testQueue; private activeTests; constructor(config: IntelligentDiscoveryConfig); /** * 执行完整的智能模型发现流程 */ discoverAndUpdateModels(): Promise<DiscoveryReport>; /** * 从API获取模型列表 */ private fetchModelsFromAPI; /** * 智能模型测试 - 考虑流控和并发限制 */ private intelligentModelTesting; /** * 带重试逻辑的模型测试 */ private testModelWithRetryLogic; /** * 分析单个模型的测试结果 */ private analyzeModelTestResults; /** * 分析所有测试结果 */ private analyzeTestResults; /** * 更新提供商配置 */ private updateProviderConfiguration; /** * 生成建议和警告 */ private generateRecommendations; private buildModelsEndpoint; private buildAuthHeaders; private parseModelsResponse; private prioritizeModels; private sendTestRequest; private inferModelCapabilities; private getFallbackModels; private findConfigurationFile; private isCacheValid; private delay; } /** * 创建智能模型发现实例的工厂函数 */ export declare function createIntelligentModelDiscovery(config: IntelligentDiscoveryConfig): IntelligentModelDiscovery; /** * 默认配置 */ export declare const DEFAULT_DISCOVERY_CONFIG: Omit<IntelligentDiscoveryConfig, 'providerId' | 'provider'>; //# sourceMappingURL=intelligent-model-discovery.d.ts.map