@juspay/neurolink 9.30.0 ā 9.31.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/README.md +2 -3
- package/dist/adapters/providerImageAdapter.js +13 -22
- package/dist/adapters/video/videoAnalyzer.d.ts +4 -4
- package/dist/adapters/video/videoAnalyzer.js +3 -3
- package/dist/agent/directTools.d.ts +20 -289
- package/dist/agent/directTools.js +11 -10
- package/dist/auth/accountPool.d.ts +68 -0
- package/dist/auth/accountPool.js +178 -0
- package/dist/auth/anthropicOAuth.d.ts +15 -5
- package/dist/auth/anthropicOAuth.js +117 -57
- package/dist/auth/index.d.ts +7 -5
- package/dist/auth/index.js +6 -2
- package/dist/auth/tokenStore.d.ts +71 -27
- package/dist/auth/tokenStore.js +342 -64
- package/dist/cli/commands/auth.d.ts +39 -2
- package/dist/cli/commands/auth.js +585 -36
- package/dist/cli/commands/config.d.ts +47 -574
- package/dist/cli/commands/config.js +142 -24
- package/dist/cli/commands/docs.d.ts +1 -5
- package/dist/cli/commands/observability.d.ts +1 -17
- package/dist/cli/commands/ollama.js +1 -1
- package/dist/cli/commands/proxy.d.ts +20 -0
- package/dist/cli/commands/proxy.js +1254 -0
- package/dist/cli/commands/setup-anthropic.js +1 -1
- package/dist/cli/commands/setup-azure.js +1 -1
- package/dist/cli/commands/setup-bedrock.js +2 -2
- package/dist/cli/commands/setup-gcp.js +1 -1
- package/dist/cli/commands/setup-google-ai.js +1 -1
- package/dist/cli/commands/setup-huggingface.js +2 -2
- package/dist/cli/commands/setup-mistral.js +1 -1
- package/dist/cli/commands/setup-openai.js +1 -1
- package/dist/cli/commands/setup.js +3 -3
- package/dist/cli/commands/telemetry.d.ts +1 -22
- package/dist/cli/factories/authCommandFactory.d.ts +16 -11
- package/dist/cli/factories/authCommandFactory.js +96 -1
- package/dist/cli/factories/ollamaCommandFactory.js +1 -1
- package/dist/cli/factories/sagemakerCommandFactory.js +25 -6
- package/dist/cli/index.d.ts +0 -6
- package/dist/cli/index.js +5 -2
- package/dist/cli/loop/conversationSelector.js +7 -2
- package/dist/cli/parser.js +19 -1
- package/dist/cli/utils/envManager.js +2 -2
- package/dist/cli/utils/ollamaUtils.d.ts +1 -2
- package/dist/client/adapters/providerImageAdapter.js +588 -0
- package/dist/client/adapters/tts/googleTTSHandler.js +344 -0
- package/dist/client/adapters/video/directorPipeline.js +516 -0
- package/dist/client/adapters/video/ffmpegAdapter.js +206 -0
- package/dist/client/adapters/video/frameExtractor.js +143 -0
- package/dist/client/adapters/video/vertexVideoHandler.js +763 -0
- package/dist/client/adapters/video/videoAnalyzer.js +238 -0
- package/dist/client/adapters/video/videoMerger.js +171 -0
- package/dist/client/agent/directTools.js +840 -0
- package/dist/client/aiSdkAdapter.d.ts +196 -0
- package/dist/client/aiSdkAdapter.js +487 -0
- package/dist/client/auth/anthropicOAuth.js +974 -0
- package/dist/client/auth/tokenStore.js +799 -0
- package/dist/client/auth.d.ts +248 -0
- package/dist/client/auth.js +473 -0
- package/dist/client/client/aiSdkAdapter.js +487 -0
- package/dist/client/client/auth.js +473 -0
- package/dist/client/client/errors.js +552 -0
- package/dist/client/client/httpClient.js +837 -0
- package/dist/client/client/index.js +172 -0
- package/dist/client/client/interceptors.js +601 -0
- package/dist/client/client/reactHooks.js +1159 -0
- package/dist/client/client/sseClient.js +545 -0
- package/dist/client/client/streamingClient.js +917 -0
- package/dist/client/client/wsClient.js +369 -0
- package/dist/client/config/configManager.js +303 -0
- package/dist/client/config/conversationMemory.js +86 -0
- package/dist/client/config/taskClassificationConfig.js +148 -0
- package/dist/client/constants/contextWindows.js +295 -0
- package/dist/client/constants/enums.js +853 -0
- package/dist/client/constants/index.js +207 -0
- package/dist/client/constants/performance.js +389 -0
- package/dist/client/constants/retry.js +266 -0
- package/dist/client/constants/timeouts.js +182 -0
- package/dist/client/constants/tokens.js +380 -0
- package/dist/client/constants/videoErrors.js +46 -0
- package/dist/client/context/budgetChecker.js +98 -0
- package/dist/client/context/contextCompactor.js +205 -0
- package/dist/client/context/emergencyTruncation.js +88 -0
- package/dist/client/context/errorDetection.js +171 -0
- package/dist/client/context/errors.js +21 -0
- package/dist/client/context/fileTokenBudget.js +127 -0
- package/dist/client/context/prompts/summarizationPrompt.js +117 -0
- package/dist/client/context/stages/fileReadDeduplicator.js +66 -0
- package/dist/client/context/stages/slidingWindowTruncator.js +190 -0
- package/dist/client/context/stages/structuredSummarizer.js +99 -0
- package/dist/client/context/stages/toolOutputPruner.js +52 -0
- package/dist/client/context/summarizationEngine.js +136 -0
- package/dist/client/context/toolOutputLimits.js +78 -0
- package/dist/client/context/toolPairRepair.js +66 -0
- package/dist/client/core/analytics.js +88 -0
- package/dist/client/core/baseProvider.js +1385 -0
- package/dist/client/core/constants.js +140 -0
- package/dist/client/core/conversationMemoryFactory.js +141 -0
- package/dist/client/core/conversationMemoryInitializer.js +128 -0
- package/dist/client/core/conversationMemoryManager.js +344 -0
- package/dist/client/core/dynamicModels.js +358 -0
- package/dist/client/core/evaluation.js +309 -0
- package/dist/client/core/evaluationProviders.js +248 -0
- package/dist/client/core/factory.js +412 -0
- package/dist/client/core/infrastructure/baseError.js +22 -0
- package/dist/client/core/infrastructure/baseFactory.js +54 -0
- package/dist/client/core/infrastructure/baseRegistry.js +49 -0
- package/dist/client/core/infrastructure/index.js +5 -0
- package/dist/client/core/infrastructure/retry.js +20 -0
- package/dist/client/core/infrastructure/typedEventEmitter.js +23 -0
- package/dist/client/core/modelConfiguration.js +851 -0
- package/dist/client/core/modules/GenerationHandler.js +588 -0
- package/dist/client/core/modules/MessageBuilder.js +273 -0
- package/dist/client/core/modules/StreamHandler.js +185 -0
- package/dist/client/core/modules/TelemetryHandler.js +203 -0
- package/dist/client/core/modules/ToolsManager.js +499 -0
- package/dist/client/core/modules/Utilities.js +331 -0
- package/dist/client/core/redisConversationMemoryManager.js +1435 -0
- package/dist/client/core/streamAnalytics.js +131 -0
- package/dist/client/errors.d.ts +299 -0
- package/dist/client/errors.js +552 -0
- package/dist/client/evaluation/contextBuilder.js +134 -0
- package/dist/client/evaluation/index.js +61 -0
- package/dist/client/evaluation/prompts.js +73 -0
- package/dist/client/evaluation/ragasEvaluator.js +110 -0
- package/dist/client/evaluation/retryManager.js +78 -0
- package/dist/client/evaluation/scoring.js +61 -0
- package/dist/client/factories/providerFactory.js +166 -0
- package/dist/client/factories/providerRegistry.js +166 -0
- package/dist/client/features/ppt/constants.js +896 -0
- package/dist/client/features/ppt/contentPlanner.js +529 -0
- package/dist/client/features/ppt/presentationOrchestrator.js +236 -0
- package/dist/client/features/ppt/slideGenerator.js +532 -0
- package/dist/client/features/ppt/slideRenderers.js +2383 -0
- package/dist/client/features/ppt/slideTypeInference.js +405 -0
- package/dist/client/features/ppt/types.js +13 -0
- package/dist/client/features/ppt/utils.js +443 -0
- package/dist/client/files/fileReferenceRegistry.js +1543 -0
- package/dist/client/files/fileTools.js +450 -0
- package/dist/client/files/streamingReader.js +321 -0
- package/dist/client/files/types.js +23 -0
- package/dist/client/hitl/hitlErrors.js +54 -0
- package/dist/client/hitl/hitlManager.js +460 -0
- package/dist/client/httpClient.d.ts +297 -0
- package/dist/client/httpClient.js +837 -0
- package/dist/client/index.d.ts +111 -0
- package/dist/client/index.js +511 -0
- package/dist/client/interceptors.d.ts +283 -0
- package/dist/client/interceptors.js +601 -0
- package/dist/client/mcp/agentExposure.js +356 -0
- package/dist/client/mcp/auth/index.js +11 -0
- package/dist/client/mcp/auth/oauthClientProvider.js +325 -0
- package/dist/client/mcp/auth/tokenStorage.js +134 -0
- package/dist/client/mcp/batching/index.js +10 -0
- package/dist/client/mcp/batching/requestBatcher.js +441 -0
- package/dist/client/mcp/caching/index.js +10 -0
- package/dist/client/mcp/caching/toolCache.js +433 -0
- package/dist/client/mcp/elicitation/elicitationManager.js +376 -0
- package/dist/client/mcp/elicitation/index.js +11 -0
- package/dist/client/mcp/elicitation/types.js +10 -0
- package/dist/client/mcp/elicitationProtocol.js +375 -0
- package/dist/client/mcp/enhancedToolDiscovery.js +481 -0
- package/dist/client/mcp/externalServerManager.js +1478 -0
- package/dist/client/mcp/factory.js +161 -0
- package/dist/client/mcp/flexibleToolValidator.js +161 -0
- package/dist/client/mcp/httpRateLimiter.js +391 -0
- package/dist/client/mcp/httpRetryHandler.js +178 -0
- package/dist/client/mcp/index.js +74 -0
- package/dist/client/mcp/mcpCircuitBreaker.js +427 -0
- package/dist/client/mcp/mcpClientFactory.js +708 -0
- package/dist/client/mcp/mcpRegistryClient.js +488 -0
- package/dist/client/mcp/mcpServerBase.js +373 -0
- package/dist/client/mcp/multiServerManager.js +579 -0
- package/dist/client/mcp/registry.js +158 -0
- package/dist/client/mcp/routing/index.js +10 -0
- package/dist/client/mcp/routing/toolRouter.js +416 -0
- package/dist/client/mcp/serverCapabilities.js +502 -0
- package/dist/client/mcp/servers/agent/directToolsServer.js +150 -0
- package/dist/client/mcp/toolAnnotations.js +239 -0
- package/dist/client/mcp/toolConverter.js +258 -0
- package/dist/client/mcp/toolDiscoveryService.js +798 -0
- package/dist/client/mcp/toolIntegration.js +334 -0
- package/dist/client/mcp/toolRegistry.js +719 -0
- package/dist/client/memory/hippocampusInitializer.js +19 -0
- package/dist/client/memory/memoryRetrievalTools.js +166 -0
- package/dist/client/middleware/builtin/analytics.js +132 -0
- package/dist/client/middleware/builtin/autoEvaluation.js +203 -0
- package/dist/client/middleware/builtin/guardrails.js +109 -0
- package/dist/client/middleware/builtin/lifecycle.js +168 -0
- package/dist/client/middleware/factory.js +327 -0
- package/dist/client/middleware/registry.js +295 -0
- package/dist/client/middleware/utils/guardrailsUtils.js +396 -0
- package/dist/client/models/anthropicModels.js +527 -0
- package/dist/client/neurolink.js +8015 -0
- package/dist/client/observability/exporterRegistry.js +413 -0
- package/dist/client/observability/exporters/arizeExporter.js +138 -0
- package/dist/client/observability/exporters/baseExporter.js +190 -0
- package/dist/client/observability/exporters/braintrustExporter.js +154 -0
- package/dist/client/observability/exporters/datadogExporter.js +196 -0
- package/dist/client/observability/exporters/laminarExporter.js +302 -0
- package/dist/client/observability/exporters/langfuseExporter.js +209 -0
- package/dist/client/observability/exporters/langsmithExporter.js +143 -0
- package/dist/client/observability/exporters/otelExporter.js +164 -0
- package/dist/client/observability/exporters/posthogExporter.js +287 -0
- package/dist/client/observability/exporters/sentryExporter.js +165 -0
- package/dist/client/observability/index.js +31 -0
- package/dist/client/observability/metricsAggregator.js +556 -0
- package/dist/client/observability/otelBridge.js +131 -0
- package/dist/client/observability/retryPolicy.js +383 -0
- package/dist/client/observability/sampling/samplers.js +216 -0
- package/dist/client/observability/spanProcessor.js +303 -0
- package/dist/client/observability/tokenTracker.js +413 -0
- package/dist/client/observability/types/exporterTypes.js +5 -0
- package/dist/client/observability/types/index.js +4 -0
- package/dist/client/observability/types/spanTypes.js +92 -0
- package/dist/client/observability/utils/safeMetadata.js +25 -0
- package/dist/client/observability/utils/spanSerializer.js +292 -0
- package/dist/client/processors/archive/ArchiveProcessor.js +1308 -0
- package/dist/client/processors/base/BaseFileProcessor.js +614 -0
- package/dist/client/processors/base/types.js +82 -0
- package/dist/client/processors/config/fileTypes.js +520 -0
- package/dist/client/processors/config/index.js +92 -0
- package/dist/client/processors/config/languageMap.js +410 -0
- package/dist/client/processors/config/mimeTypes.js +363 -0
- package/dist/client/processors/config/sizeLimits.js +258 -0
- package/dist/client/processors/document/ExcelProcessor.js +590 -0
- package/dist/client/processors/document/OpenDocumentProcessor.js +212 -0
- package/dist/client/processors/document/PptxProcessor.js +157 -0
- package/dist/client/processors/document/RtfProcessor.js +361 -0
- package/dist/client/processors/document/WordProcessor.js +353 -0
- package/dist/client/processors/errors/FileErrorCode.js +255 -0
- package/dist/client/processors/errors/errorHelpers.js +386 -0
- package/dist/client/processors/errors/errorSerializer.js +507 -0
- package/dist/client/processors/errors/index.js +49 -0
- package/dist/client/processors/markup/SvgProcessor.js +240 -0
- package/dist/client/processors/media/AudioProcessor.js +707 -0
- package/dist/client/processors/media/VideoProcessor.js +1045 -0
- package/dist/client/providers/amazonBedrock.js +1512 -0
- package/dist/client/providers/amazonSagemaker.js +162 -0
- package/dist/client/providers/anthropic.js +831 -0
- package/dist/client/providers/azureOpenai.js +143 -0
- package/dist/client/providers/googleAiStudio.js +1200 -0
- package/dist/client/providers/googleNativeGemini3.js +543 -0
- package/dist/client/providers/googleVertex.js +2936 -0
- package/dist/client/providers/huggingFace.js +315 -0
- package/dist/client/providers/litellm.js +488 -0
- package/dist/client/providers/mistral.js +157 -0
- package/dist/client/providers/ollama.js +1579 -0
- package/dist/client/providers/openAI.js +627 -0
- package/dist/client/providers/openRouter.js +543 -0
- package/dist/client/providers/openaiCompatible.js +290 -0
- package/dist/client/providers/providerTypeUtils.js +46 -0
- package/dist/client/providers/sagemaker/adaptive-semaphore.js +215 -0
- package/dist/client/providers/sagemaker/client.js +472 -0
- package/dist/client/providers/sagemaker/config.js +317 -0
- package/dist/client/providers/sagemaker/detection.js +606 -0
- package/dist/client/providers/sagemaker/error-constants.js +227 -0
- package/dist/client/providers/sagemaker/errors.js +299 -0
- package/dist/client/providers/sagemaker/language-model.js +775 -0
- package/dist/client/providers/sagemaker/parsers.js +634 -0
- package/dist/client/providers/sagemaker/streaming.js +331 -0
- package/dist/client/providers/sagemaker/structured-parser.js +625 -0
- package/dist/client/proxy/accountQuota.js +162 -0
- package/dist/client/proxy/claudeFormat.js +595 -0
- package/dist/client/proxy/modelRouter.js +29 -0
- package/dist/client/proxy/oauthFetch.js +367 -0
- package/dist/client/proxy/proxyFetch.js +586 -0
- package/dist/client/proxy/requestLogger.js +207 -0
- package/dist/client/proxy/tokenRefresh.js +124 -0
- package/dist/client/proxy/usageStats.js +74 -0
- package/dist/client/proxy/utils/noProxyUtils.js +149 -0
- package/dist/client/rag/ChunkerFactory.js +320 -0
- package/dist/client/rag/ChunkerRegistry.js +421 -0
- package/dist/client/rag/chunkers/BaseChunker.js +143 -0
- package/dist/client/rag/chunkers/CharacterChunker.js +28 -0
- package/dist/client/rag/chunkers/HTMLChunker.js +38 -0
- package/dist/client/rag/chunkers/JSONChunker.js +68 -0
- package/dist/client/rag/chunkers/LaTeXChunker.js +63 -0
- package/dist/client/rag/chunkers/MarkdownChunker.js +306 -0
- package/dist/client/rag/chunkers/RecursiveChunker.js +139 -0
- package/dist/client/rag/chunkers/SemanticMarkdownChunker.js +138 -0
- package/dist/client/rag/chunkers/SentenceChunker.js +66 -0
- package/dist/client/rag/chunkers/TokenChunker.js +61 -0
- package/dist/client/rag/chunkers/index.js +15 -0
- package/dist/client/rag/chunking/characterChunker.js +142 -0
- package/dist/client/rag/chunking/chunkerRegistry.js +194 -0
- package/dist/client/rag/chunking/htmlChunker.js +247 -0
- package/dist/client/rag/chunking/index.js +17 -0
- package/dist/client/rag/chunking/jsonChunker.js +281 -0
- package/dist/client/rag/chunking/latexChunker.js +251 -0
- package/dist/client/rag/chunking/markdownChunker.js +373 -0
- package/dist/client/rag/chunking/recursiveChunker.js +148 -0
- package/dist/client/rag/chunking/semanticChunker.js +306 -0
- package/dist/client/rag/chunking/sentenceChunker.js +230 -0
- package/dist/client/rag/chunking/tokenChunker.js +183 -0
- package/dist/client/rag/document/MDocument.js +392 -0
- package/dist/client/rag/document/index.js +5 -0
- package/dist/client/rag/document/loaders.js +500 -0
- package/dist/client/rag/errors/RAGError.js +274 -0
- package/dist/client/rag/errors/index.js +6 -0
- package/dist/client/rag/graphRag/graphRAG.js +401 -0
- package/dist/client/rag/graphRag/index.js +4 -0
- package/dist/client/rag/index.js +141 -0
- package/dist/client/rag/metadata/MetadataExtractorFactory.js +418 -0
- package/dist/client/rag/metadata/MetadataExtractorRegistry.js +362 -0
- package/dist/client/rag/metadata/index.js +9 -0
- package/dist/client/rag/metadata/metadataExtractor.js +280 -0
- package/dist/client/rag/pipeline/RAGPipeline.js +436 -0
- package/dist/client/rag/pipeline/contextAssembly.js +341 -0
- package/dist/client/rag/pipeline/index.js +5 -0
- package/dist/client/rag/ragIntegration.js +321 -0
- package/dist/client/rag/reranker/RerankerFactory.js +430 -0
- package/dist/client/rag/reranker/RerankerRegistry.js +402 -0
- package/dist/client/rag/reranker/index.js +9 -0
- package/dist/client/rag/reranker/reranker.js +277 -0
- package/dist/client/rag/resilience/CircuitBreaker.js +431 -0
- package/dist/client/rag/resilience/RetryHandler.js +304 -0
- package/dist/client/rag/resilience/index.js +7 -0
- package/dist/client/rag/retrieval/hybridSearch.js +335 -0
- package/dist/client/rag/retrieval/index.js +5 -0
- package/dist/client/rag/retrieval/vectorQueryTool.js +307 -0
- package/dist/client/rag/types.js +8 -0
- package/dist/client/reactHooks.d.ts +239 -0
- package/dist/client/reactHooks.tsx +1483 -0
- package/dist/client/sdk/toolRegistration.js +377 -0
- package/dist/client/server/abstract/baseServerAdapter.js +575 -0
- package/dist/client/server/adapters/expressAdapter.js +486 -0
- package/dist/client/server/adapters/fastifyAdapter.js +472 -0
- package/dist/client/server/adapters/honoAdapter.js +632 -0
- package/dist/client/server/adapters/koaAdapter.js +510 -0
- package/dist/client/server/errors.js +486 -0
- package/dist/client/server/factory/serverAdapterFactory.js +160 -0
- package/dist/client/server/index.js +108 -0
- package/dist/client/server/middleware/abortSignal.js +111 -0
- package/dist/client/server/middleware/auth.js +388 -0
- package/dist/client/server/middleware/cache.js +359 -0
- package/dist/client/server/middleware/common.js +281 -0
- package/dist/client/server/middleware/deprecation.js +190 -0
- package/dist/client/server/middleware/mcpBodyAttachment.js +63 -0
- package/dist/client/server/middleware/rateLimit.js +227 -0
- package/dist/client/server/middleware/validation.js +388 -0
- package/dist/client/server/openapi/generator.js +398 -0
- package/dist/client/server/openapi/index.js +36 -0
- package/dist/client/server/openapi/schemas.js +695 -0
- package/dist/client/server/openapi/templates.js +374 -0
- package/dist/client/server/routes/agentRoutes.js +171 -0
- package/dist/client/server/routes/claudeProxyRoutes.js +1600 -0
- package/dist/client/server/routes/healthRoutes.js +187 -0
- package/dist/client/server/routes/index.js +57 -0
- package/dist/client/server/routes/mcpRoutes.js +342 -0
- package/dist/client/server/routes/memoryRoutes.js +350 -0
- package/dist/client/server/routes/openApiRoutes.js +126 -0
- package/dist/client/server/routes/toolRoutes.js +199 -0
- package/dist/client/server/streaming/dataStream.js +486 -0
- package/dist/client/server/streaming/index.js +11 -0
- package/dist/client/server/types.js +67 -0
- package/dist/client/server/utils/redaction.js +334 -0
- package/dist/client/server/utils/validation.js +243 -0
- package/dist/client/server/websocket/WebSocketHandler.js +383 -0
- package/dist/client/server/websocket/index.js +4 -0
- package/dist/client/services/server/ai/observability/instrumentation.js +808 -0
- package/dist/client/sseClient.d.ts +156 -0
- package/dist/client/sseClient.js +545 -0
- package/dist/client/streamingClient.d.ts +327 -0
- package/dist/client/streamingClient.js +917 -0
- package/dist/client/telemetry/attributes.js +100 -0
- package/dist/client/telemetry/index.js +26 -0
- package/dist/client/telemetry/telemetryService.js +308 -0
- package/dist/client/telemetry/tracers.js +17 -0
- package/dist/client/telemetry/withSpan.js +34 -0
- package/dist/client/types/actionTypes.js +6 -0
- package/dist/client/types/analytics.js +5 -0
- package/dist/client/types/authTypes.js +8 -0
- package/dist/client/types/circuitBreakerErrors.js +34 -0
- package/dist/client/types/cli.js +21 -0
- package/dist/client/types/clientTypes.js +10 -0
- package/dist/client/types/common.js +51 -0
- package/dist/client/types/configTypes.js +49 -0
- package/dist/client/types/content.js +19 -0
- package/dist/client/types/contextTypes.js +400 -0
- package/dist/client/types/conversation.js +47 -0
- package/dist/client/types/conversationMemoryInterface.js +6 -0
- package/dist/client/types/domainTypes.js +5 -0
- package/dist/client/types/errors.js +167 -0
- package/dist/client/types/evaluation.js +5 -0
- package/dist/client/types/evaluationProviders.js +5 -0
- package/dist/client/types/evaluationTypes.js +1 -0
- package/dist/client/types/externalMcp.js +6 -0
- package/dist/client/types/fileReferenceTypes.js +8 -0
- package/dist/client/types/fileTypes.js +4 -0
- package/dist/client/types/generateTypes.js +1 -0
- package/dist/client/types/guardrails.js +1 -0
- package/dist/client/types/hitlTypes.js +8 -0
- package/dist/client/types/index.js +57 -0
- package/dist/client/types/mcpTypes.js +5 -0
- package/dist/client/types/middlewareTypes.js +1 -0
- package/dist/client/types/modelTypes.js +30 -0
- package/dist/client/types/multimodal.js +135 -0
- package/dist/client/types/observability.js +6 -0
- package/dist/client/types/pptTypes.js +82 -0
- package/dist/client/types/providers.js +111 -0
- package/dist/client/types/proxyTypes.js +16 -0
- package/dist/client/types/ragTypes.js +7 -0
- package/dist/client/types/sdkTypes.js +8 -0
- package/dist/client/types/serviceTypes.js +5 -0
- package/dist/client/types/streamTypes.js +1 -0
- package/dist/client/types/subscriptionTypes.js +9 -0
- package/dist/client/types/taskClassificationTypes.js +5 -0
- package/dist/client/types/tools.js +24 -0
- package/dist/client/types/ttsTypes.js +57 -0
- package/dist/client/types/typeAliases.js +48 -0
- package/dist/client/types/utilities.js +4 -0
- package/dist/client/types/workflowTypes.js +30 -0
- package/dist/client/utils/async/withTimeout.js +98 -0
- package/dist/client/utils/asyncMutex.js +60 -0
- package/dist/client/utils/conversationMemory.js +431 -0
- package/dist/client/utils/csvProcessor.js +846 -0
- package/dist/client/utils/errorHandling.js +936 -0
- package/dist/client/utils/evaluationUtils.js +131 -0
- package/dist/client/utils/factoryProcessing.js +589 -0
- package/dist/client/utils/fileDetector.js +2161 -0
- package/dist/client/utils/imageCache.js +376 -0
- package/dist/client/utils/imageProcessor.js +704 -0
- package/dist/client/utils/logger.js +491 -0
- package/dist/client/utils/mcpDefaults.js +134 -0
- package/dist/client/utils/messageBuilder.js +1653 -0
- package/dist/client/utils/modelAliasResolver.js +54 -0
- package/dist/client/utils/modelDetection.js +80 -0
- package/dist/client/utils/modelRouter.js +292 -0
- package/dist/client/utils/multimodalOptionsBuilder.js +65 -0
- package/dist/client/utils/observabilityHelpers.js +47 -0
- package/dist/client/utils/parameterValidation.js +966 -0
- package/dist/client/utils/pdfProcessor.js +410 -0
- package/dist/client/utils/performance.js +222 -0
- package/dist/client/utils/pricing.js +340 -0
- package/dist/client/utils/promptRedaction.js +62 -0
- package/dist/client/utils/providerConfig.js +1009 -0
- package/dist/client/utils/providerHealth.js +1237 -0
- package/dist/client/utils/providerRetry.js +112 -0
- package/dist/client/utils/providerUtils.js +434 -0
- package/dist/client/utils/rateLimiter.js +200 -0
- package/dist/client/utils/redis.js +368 -0
- package/dist/client/utils/retryHandler.js +269 -0
- package/dist/client/utils/retryability.js +22 -0
- package/dist/client/utils/sanitizers/svg.js +481 -0
- package/dist/client/utils/schemaConversion.js +255 -0
- package/dist/client/utils/taskClassificationUtils.js +149 -0
- package/dist/client/utils/taskClassifier.js +94 -0
- package/dist/client/utils/thinkingConfig.js +104 -0
- package/dist/client/utils/timeout.js +359 -0
- package/dist/client/utils/tokenEstimation.js +142 -0
- package/dist/client/utils/tokenLimits.js +125 -0
- package/dist/client/utils/tokenUtils.js +239 -0
- package/dist/client/utils/toolUtils.js +75 -0
- package/dist/client/utils/transformationUtils.js +554 -0
- package/dist/client/utils/ttsProcessor.js +286 -0
- package/dist/client/utils/typeUtils.js +97 -0
- package/dist/client/utils/videoAnalysisProcessor.js +67 -0
- package/dist/client/workflow/config.js +398 -0
- package/dist/client/workflow/core/ensembleExecutor.js +407 -0
- package/dist/client/workflow/core/judgeScorer.js +544 -0
- package/dist/client/workflow/core/responseConditioner.js +225 -0
- package/dist/client/workflow/core/types/conditionerTypes.js +7 -0
- package/dist/client/workflow/core/types/ensembleTypes.js +7 -0
- package/dist/client/workflow/core/types/index.js +7 -0
- package/dist/client/workflow/core/types/judgeTypes.js +7 -0
- package/dist/client/workflow/core/types/layerTypes.js +7 -0
- package/dist/client/workflow/core/types/registryTypes.js +7 -0
- package/dist/client/workflow/core/workflowRegistry.js +304 -0
- package/dist/client/workflow/core/workflowRunner.js +586 -0
- package/dist/client/workflow/index.js +50 -0
- package/dist/client/workflow/types.js +9 -0
- package/dist/client/workflow/utils/types/index.js +7 -0
- package/dist/client/workflow/utils/workflowMetrics.js +311 -0
- package/dist/client/workflow/utils/workflowValidation.js +420 -0
- package/dist/client/workflow/workflows/adaptiveWorkflow.js +366 -0
- package/dist/client/workflow/workflows/consensusWorkflow.js +192 -0
- package/dist/client/workflow/workflows/fallbackWorkflow.js +225 -0
- package/dist/client/workflow/workflows/multiJudgeWorkflow.js +351 -0
- package/dist/client/wsClient.d.ts +130 -0
- package/dist/client/wsClient.js +369 -0
- package/dist/config/configManager.js +2 -2
- package/dist/constants/contextWindows.js +15 -13
- package/dist/constants/enums.d.ts +10 -16
- package/dist/constants/enums.js +12 -18
- package/dist/constants/index.d.ts +0 -10
- package/dist/constants/index.js +1 -1
- package/dist/constants/tokens.d.ts +29 -16
- package/dist/constants/tokens.js +23 -16
- package/dist/core/baseProvider.d.ts +5 -5
- package/dist/core/baseProvider.js +6 -6
- package/dist/core/constants.js +6 -1
- package/dist/core/dynamicModels.js +10 -6
- package/dist/core/evaluationProviders.js +1 -1
- package/dist/core/infrastructure/baseError.d.ts +1 -1
- package/dist/core/infrastructure/baseFactory.d.ts +1 -6
- package/dist/core/infrastructure/baseRegistry.d.ts +6 -5
- package/dist/core/infrastructure/index.d.ts +6 -4
- package/dist/core/infrastructure/index.js +2 -2
- package/dist/core/modelConfiguration.js +3 -1
- package/dist/core/modules/GenerationHandler.d.ts +3 -3
- package/dist/core/modules/GenerationHandler.js +49 -41
- package/dist/core/modules/MessageBuilder.d.ts +5 -5
- package/dist/core/modules/MessageBuilder.js +4 -6
- package/dist/core/modules/StreamHandler.js +26 -12
- package/dist/core/modules/TelemetryHandler.d.ts +4 -6
- package/dist/core/modules/TelemetryHandler.js +7 -6
- package/dist/core/modules/ToolsManager.d.ts +2 -12
- package/dist/core/modules/ToolsManager.js +20 -4
- package/dist/core/modules/Utilities.js +3 -1
- package/dist/core/redisConversationMemoryManager.js +3 -3
- package/dist/core/streamAnalytics.js +23 -9
- package/dist/evaluation/contextBuilder.d.ts +2 -2
- package/dist/evaluation/contextBuilder.js +2 -2
- package/dist/evaluation/index.d.ts +2 -2
- package/dist/evaluation/retryManager.js +1 -1
- package/dist/factories/providerFactory.js +2 -2
- package/dist/features/ppt/constants.js +1 -1
- package/dist/features/ppt/presentationOrchestrator.js +7 -3
- package/dist/features/ppt/slideGenerator.d.ts +2 -1
- package/dist/features/ppt/slideGenerator.js +6 -1
- package/dist/files/fileTools.d.ts +16 -247
- package/dist/files/fileTools.js +16 -15
- package/dist/index.d.ts +5 -3
- package/dist/index.js +20 -3
- package/dist/lib/adapters/providerImageAdapter.js +13 -22
- package/dist/lib/adapters/video/videoAnalyzer.d.ts +4 -4
- package/dist/lib/adapters/video/videoAnalyzer.js +3 -3
- package/dist/lib/agent/directTools.d.ts +20 -289
- package/dist/lib/agent/directTools.js +11 -10
- package/dist/lib/auth/accountPool.d.ts +68 -0
- package/dist/lib/auth/accountPool.js +179 -0
- package/dist/lib/auth/anthropicOAuth.d.ts +15 -5
- package/dist/lib/auth/anthropicOAuth.js +117 -57
- package/dist/lib/auth/index.d.ts +7 -5
- package/dist/lib/auth/index.js +6 -2
- package/dist/lib/auth/tokenStore.d.ts +71 -27
- package/dist/lib/auth/tokenStore.js +342 -64
- package/dist/lib/client/aiSdkAdapter.d.ts +196 -0
- package/dist/lib/client/aiSdkAdapter.js +488 -0
- package/dist/lib/client/auth.d.ts +248 -0
- package/dist/lib/client/auth.js +474 -0
- package/dist/lib/client/errors.d.ts +299 -0
- package/dist/lib/client/errors.js +553 -0
- package/dist/lib/client/httpClient.d.ts +297 -0
- package/dist/lib/client/httpClient.js +838 -0
- package/dist/lib/client/index.d.ts +111 -0
- package/dist/lib/client/index.js +173 -0
- package/dist/lib/client/interceptors.d.ts +283 -0
- package/dist/lib/client/interceptors.js +602 -0
- package/dist/lib/client/reactHooks.d.ts +239 -0
- package/dist/lib/client/reactHooks.js +1160 -0
- package/dist/lib/client/sseClient.d.ts +156 -0
- package/dist/lib/client/sseClient.js +546 -0
- package/dist/lib/client/streamingClient.d.ts +327 -0
- package/dist/lib/client/streamingClient.js +918 -0
- package/dist/lib/client/wsClient.d.ts +130 -0
- package/dist/lib/client/wsClient.js +370 -0
- package/dist/lib/config/configManager.js +2 -2
- package/dist/lib/constants/contextWindows.js +15 -13
- package/dist/lib/constants/enums.d.ts +10 -16
- package/dist/lib/constants/enums.js +12 -18
- package/dist/lib/constants/index.d.ts +0 -10
- package/dist/lib/constants/index.js +1 -1
- package/dist/lib/constants/tokens.d.ts +29 -16
- package/dist/lib/constants/tokens.js +23 -16
- package/dist/lib/core/baseProvider.d.ts +5 -5
- package/dist/lib/core/baseProvider.js +6 -6
- package/dist/lib/core/constants.js +6 -1
- package/dist/lib/core/dynamicModels.js +10 -6
- package/dist/lib/core/evaluationProviders.js +1 -1
- package/dist/lib/core/infrastructure/baseError.d.ts +1 -1
- package/dist/lib/core/infrastructure/baseFactory.d.ts +1 -6
- package/dist/lib/core/infrastructure/baseRegistry.d.ts +6 -5
- package/dist/lib/core/infrastructure/index.d.ts +6 -4
- package/dist/lib/core/infrastructure/index.js +2 -2
- package/dist/lib/core/modelConfiguration.js +3 -1
- package/dist/lib/core/modules/GenerationHandler.d.ts +3 -3
- package/dist/lib/core/modules/GenerationHandler.js +49 -41
- package/dist/lib/core/modules/MessageBuilder.d.ts +5 -5
- package/dist/lib/core/modules/MessageBuilder.js +4 -6
- package/dist/lib/core/modules/StreamHandler.js +26 -12
- package/dist/lib/core/modules/TelemetryHandler.d.ts +4 -6
- package/dist/lib/core/modules/TelemetryHandler.js +7 -6
- package/dist/lib/core/modules/ToolsManager.d.ts +2 -12
- package/dist/lib/core/modules/ToolsManager.js +20 -4
- package/dist/lib/core/modules/Utilities.js +3 -1
- package/dist/lib/core/redisConversationMemoryManager.js +3 -3
- package/dist/lib/core/streamAnalytics.js +23 -9
- package/dist/lib/evaluation/contextBuilder.d.ts +2 -2
- package/dist/lib/evaluation/contextBuilder.js +2 -2
- package/dist/lib/evaluation/index.d.ts +2 -2
- package/dist/lib/evaluation/retryManager.js +1 -1
- package/dist/lib/factories/providerFactory.js +2 -2
- package/dist/lib/features/ppt/constants.js +1 -1
- package/dist/lib/features/ppt/presentationOrchestrator.js +7 -3
- package/dist/lib/features/ppt/slideGenerator.d.ts +2 -1
- package/dist/lib/features/ppt/slideGenerator.js +6 -1
- package/dist/lib/files/fileTools.d.ts +16 -247
- package/dist/lib/files/fileTools.js +16 -15
- package/dist/lib/index.d.ts +5 -3
- package/dist/lib/index.js +20 -3
- package/dist/lib/mcp/batching/requestBatcher.js +1 -1
- package/dist/lib/mcp/externalServerManager.js +5 -2
- package/dist/lib/mcp/factory.js +1 -1
- package/dist/lib/mcp/index.d.ts +1 -1
- package/dist/lib/mcp/index.js +1 -1
- package/dist/lib/mcp/mcpCircuitBreaker.d.ts +1 -0
- package/dist/lib/mcp/mcpCircuitBreaker.js +30 -4
- package/dist/lib/mcp/mcpClientFactory.js +33 -4
- package/dist/lib/mcp/toolDiscoveryService.js +52 -5
- package/dist/lib/mcp/toolRegistry.js +7 -1
- package/dist/lib/memory/memoryRetrievalTools.d.ts +5 -89
- package/dist/lib/memory/memoryRetrievalTools.js +1 -1
- package/dist/lib/middleware/builtin/analytics.js +3 -0
- package/dist/lib/middleware/builtin/autoEvaluation.js +46 -24
- package/dist/lib/middleware/builtin/guardrails.js +4 -0
- package/dist/lib/middleware/builtin/lifecycle.js +10 -6
- package/dist/lib/middleware/factory.d.ts +3 -3
- package/dist/lib/middleware/factory.js +3 -2
- package/dist/lib/middleware/index.d.ts +1 -1
- package/dist/lib/middleware/registry.d.ts +2 -2
- package/dist/lib/middleware/registry.js +1 -0
- package/dist/lib/middleware/utils/guardrailsUtils.d.ts +5 -6
- package/dist/lib/middleware/utils/guardrailsUtils.js +15 -6
- package/dist/lib/neurolink.d.ts +9 -20
- package/dist/lib/neurolink.js +278 -186
- package/dist/lib/observability/retryPolicy.d.ts +2 -13
- package/dist/lib/observability/sampling/samplers.d.ts +2 -11
- package/dist/lib/observability/spanProcessor.d.ts +2 -14
- package/dist/lib/processors/base/BaseFileProcessor.js +1 -1
- package/dist/lib/processors/document/OpenDocumentProcessor.js +5 -3
- package/dist/lib/processors/media/VideoProcessor.js +157 -101
- package/dist/lib/providers/amazonBedrock.js +12 -5
- package/dist/lib/providers/amazonSagemaker.d.ts +5 -5
- package/dist/lib/providers/amazonSagemaker.js +6 -2
- package/dist/lib/providers/anthropic.d.ts +3 -3
- package/dist/lib/providers/anthropic.js +23 -192
- package/dist/lib/providers/anthropicBaseProvider.d.ts +4 -4
- package/dist/lib/providers/anthropicBaseProvider.js +24 -13
- package/dist/lib/providers/azureOpenai.d.ts +2 -2
- package/dist/lib/providers/azureOpenai.js +6 -6
- package/dist/lib/providers/googleAiStudio.d.ts +2 -2
- package/dist/lib/providers/googleAiStudio.js +15 -7
- package/dist/lib/providers/googleNativeGemini3.d.ts +3 -54
- package/dist/lib/providers/googleNativeGemini3.js +14 -10
- package/dist/lib/providers/googleVertex.d.ts +6 -6
- package/dist/lib/providers/googleVertex.js +32 -26
- package/dist/lib/providers/huggingFace.d.ts +4 -4
- package/dist/lib/providers/huggingFace.js +15 -5
- package/dist/lib/providers/litellm.d.ts +4 -4
- package/dist/lib/providers/litellm.js +54 -42
- package/dist/lib/providers/mistral.d.ts +2 -2
- package/dist/lib/providers/mistral.js +5 -4
- package/dist/lib/providers/ollama.d.ts +7 -4
- package/dist/lib/providers/ollama.js +30 -8
- package/dist/lib/providers/openAI.d.ts +2 -2
- package/dist/lib/providers/openAI.js +46 -21
- package/dist/lib/providers/openRouter.d.ts +4 -4
- package/dist/lib/providers/openRouter.js +63 -35
- package/dist/lib/providers/openaiCompatible.d.ts +2 -2
- package/dist/lib/providers/openaiCompatible.js +18 -9
- package/dist/lib/providers/providerTypeUtils.d.ts +28 -0
- package/dist/lib/providers/providerTypeUtils.js +47 -0
- package/dist/lib/providers/sagemaker/config.js +5 -5
- package/dist/lib/providers/sagemaker/language-model.d.ts +23 -13
- package/dist/lib/providers/sagemaker/language-model.js +20 -8
- package/dist/lib/proxy/accountQuota.d.ts +33 -0
- package/dist/lib/proxy/accountQuota.js +163 -0
- package/dist/lib/proxy/claudeFormat.d.ts +143 -0
- package/dist/lib/proxy/claudeFormat.js +596 -0
- package/dist/lib/proxy/cloaking/index.d.ts +44 -0
- package/dist/lib/proxy/cloaking/index.js +87 -0
- package/dist/lib/proxy/cloaking/plugins/headerScrubber.d.ts +9 -0
- package/dist/lib/proxy/cloaking/plugins/headerScrubber.js +87 -0
- package/dist/lib/proxy/cloaking/plugins/sessionIdentity.d.ts +15 -0
- package/dist/lib/proxy/cloaking/plugins/sessionIdentity.js +66 -0
- package/dist/lib/proxy/cloaking/plugins/systemPromptInjector.d.ts +11 -0
- package/dist/lib/proxy/cloaking/plugins/systemPromptInjector.js +84 -0
- package/dist/lib/proxy/cloaking/plugins/tlsFingerprint.d.ts +14 -0
- package/dist/lib/proxy/cloaking/plugins/tlsFingerprint.js +39 -0
- package/dist/lib/proxy/cloaking/plugins/wordObfuscator.d.ts +9 -0
- package/dist/lib/proxy/cloaking/plugins/wordObfuscator.js +122 -0
- package/dist/lib/proxy/cloaking/types.d.ts +1 -0
- package/dist/lib/proxy/cloaking/types.js +2 -0
- package/dist/lib/proxy/modelRouter.d.ts +10 -0
- package/dist/lib/proxy/modelRouter.js +30 -0
- package/dist/lib/proxy/oauthFetch.d.ts +36 -0
- package/dist/lib/proxy/oauthFetch.js +368 -0
- package/dist/lib/proxy/proxyConfig.d.ts +42 -0
- package/dist/lib/proxy/proxyConfig.js +500 -0
- package/dist/lib/proxy/proxyFetch.js +2 -1
- package/dist/lib/proxy/requestLogger.d.ts +50 -0
- package/dist/lib/proxy/requestLogger.js +208 -0
- package/dist/lib/proxy/tokenRefresh.d.ts +4 -0
- package/dist/lib/proxy/tokenRefresh.js +125 -0
- package/dist/lib/proxy/usageStats.d.ts +13 -0
- package/dist/lib/proxy/usageStats.js +75 -0
- package/dist/lib/rag/document/loaders.js +1 -1
- package/dist/lib/rag/pipeline/contextAssembly.d.ts +4 -7
- package/dist/lib/rag/ragIntegration.d.ts +2 -14
- package/dist/lib/rag/ragIntegration.js +1 -1
- package/dist/lib/rag/resilience/CircuitBreaker.d.ts +5 -44
- package/dist/lib/rag/resilience/RetryHandler.js +1 -1
- package/dist/lib/rag/retrieval/vectorQueryTool.d.ts +1 -9
- package/dist/lib/rag/retrieval/vectorQueryTool.js +1 -1
- package/dist/lib/sdk/toolRegistration.js +12 -1
- package/dist/lib/server/abstract/baseServerAdapter.js +2 -2
- package/dist/lib/server/adapters/honoAdapter.d.ts +6 -0
- package/dist/lib/server/adapters/honoAdapter.js +76 -10
- package/dist/lib/server/middleware/cache.js +3 -0
- package/dist/lib/server/routes/claudeProxyRoutes.d.ts +44 -0
- package/dist/lib/server/routes/claudeProxyRoutes.js +1601 -0
- package/dist/lib/server/routes/healthRoutes.js +18 -1
- package/dist/lib/server/routes/index.d.ts +7 -0
- package/dist/lib/server/routes/index.js +8 -0
- package/dist/lib/server/streaming/dataStream.d.ts +1 -5
- package/dist/lib/server/streaming/dataStream.js +3 -0
- package/dist/lib/server/utils/validation.d.ts +24 -124
- package/dist/lib/server/utils/validation.js +2 -2
- package/dist/lib/services/server/ai/observability/instrumentation.js +4 -0
- package/dist/lib/telemetry/attributes.d.ts +38 -0
- package/dist/lib/telemetry/attributes.js +40 -0
- package/dist/lib/telemetry/tracers.d.ts +1 -0
- package/dist/lib/telemetry/tracers.js +1 -0
- package/dist/lib/types/authTypes.d.ts +56 -0
- package/dist/lib/types/authTypes.js +9 -0
- package/dist/lib/types/circuitBreakerErrors.d.ts +30 -0
- package/dist/lib/types/circuitBreakerErrors.js +35 -0
- package/dist/lib/types/cli.d.ts +258 -0
- package/dist/lib/types/clientTypes.d.ts +1050 -0
- package/dist/lib/types/clientTypes.js +11 -0
- package/dist/lib/types/common.d.ts +123 -0
- package/dist/lib/types/configTypes.d.ts +49 -0
- package/dist/lib/types/configTypes.js +4 -0
- package/dist/lib/types/conversation.d.ts +0 -5
- package/dist/lib/types/evaluationTypes.d.ts +2 -2
- package/dist/lib/types/fileTypes.d.ts +47 -0
- package/dist/lib/types/generateTypes.d.ts +7 -3
- package/dist/lib/types/guardrails.d.ts +2 -2
- package/dist/lib/types/index.d.ts +4 -1
- package/dist/lib/types/index.js +5 -0
- package/dist/lib/types/middlewareTypes.d.ts +3 -3
- package/dist/lib/types/modelTypes.d.ts +7 -97
- package/dist/lib/types/modelTypes.js +3 -3
- package/dist/lib/types/observability.d.ts +37 -0
- package/dist/lib/types/providers.d.ts +107 -0
- package/dist/lib/types/proxyTypes.d.ts +536 -0
- package/dist/lib/types/proxyTypes.js +17 -0
- package/dist/lib/types/ragTypes.d.ts +49 -1
- package/dist/lib/types/streamTypes.d.ts +37 -13
- package/dist/lib/types/subscriptionTypes.d.ts +77 -0
- package/dist/lib/types/subscriptionTypes.js +2 -0
- package/dist/lib/types/tools.d.ts +45 -1
- package/dist/lib/types/typeAliases.d.ts +8 -0
- package/dist/lib/types/typeAliases.js +1 -0
- package/dist/lib/utils/async/retry.d.ts +4 -33
- package/dist/lib/utils/asyncMutex.d.ts +14 -0
- package/dist/lib/utils/asyncMutex.js +61 -0
- package/dist/lib/utils/errorHandling.d.ts +2 -1
- package/dist/lib/utils/errorHandling.js +14 -6
- package/dist/lib/utils/fileDetector.d.ts +13 -1
- package/dist/lib/utils/fileDetector.js +114 -32
- package/dist/lib/utils/imageProcessor.js +7 -7
- package/dist/lib/utils/json/safeParse.d.ts +1 -8
- package/dist/lib/utils/mcpDefaults.d.ts +1 -1
- package/dist/lib/utils/mcpDefaults.js +11 -2
- package/dist/lib/utils/messageBuilder.d.ts +5 -5
- package/dist/lib/utils/messageBuilder.js +106 -80
- package/dist/lib/utils/modelChoices.d.ts +1 -8
- package/dist/lib/utils/pdfProcessor.d.ts +1 -25
- package/dist/lib/utils/pdfProcessor.js +5 -4
- package/dist/lib/utils/pricing.js +28 -5
- package/dist/lib/utils/providerHealth.d.ts +1 -1
- package/dist/lib/utils/rateLimiter.d.ts +1 -15
- package/dist/lib/utils/redis.d.ts +1 -1
- package/dist/lib/utils/redis.js +3 -3
- package/dist/lib/utils/sanitizers/filename.d.ts +2 -22
- package/dist/lib/utils/sanitizers/index.d.ts +4 -2
- package/dist/lib/utils/sanitizers/svg.d.ts +1 -11
- package/dist/lib/utils/schemaConversion.js +4 -1
- package/dist/lib/utils/thinkingConfig.d.ts +1 -33
- package/dist/lib/utils/tokenUtils.d.ts +1 -39
- package/dist/lib/utils/videoAnalysisProcessor.d.ts +5 -5
- package/dist/lib/utils/videoAnalysisProcessor.js +2 -2
- package/dist/lib/workflow/config.d.ts +89 -1257
- package/dist/lib/workflow/utils/workflowValidation.js +1 -1
- package/dist/mcp/batching/requestBatcher.js +1 -1
- package/dist/mcp/externalServerManager.js +5 -2
- package/dist/mcp/factory.js +1 -1
- package/dist/mcp/index.d.ts +1 -1
- package/dist/mcp/index.js +1 -1
- package/dist/mcp/mcpCircuitBreaker.d.ts +1 -0
- package/dist/mcp/mcpCircuitBreaker.js +30 -4
- package/dist/mcp/mcpClientFactory.js +33 -4
- package/dist/mcp/toolDiscoveryService.js +52 -5
- package/dist/mcp/toolRegistry.js +7 -1
- package/dist/memory/memoryRetrievalTools.d.ts +5 -89
- package/dist/memory/memoryRetrievalTools.js +1 -1
- package/dist/middleware/builtin/analytics.js +3 -0
- package/dist/middleware/builtin/autoEvaluation.js +46 -24
- package/dist/middleware/builtin/guardrails.js +4 -0
- package/dist/middleware/builtin/lifecycle.js +10 -6
- package/dist/middleware/factory.d.ts +3 -3
- package/dist/middleware/factory.js +3 -2
- package/dist/middleware/index.d.ts +1 -1
- package/dist/middleware/registry.d.ts +2 -2
- package/dist/middleware/registry.js +1 -0
- package/dist/middleware/utils/guardrailsUtils.d.ts +5 -6
- package/dist/middleware/utils/guardrailsUtils.js +15 -6
- package/dist/neurolink.d.ts +9 -20
- package/dist/neurolink.js +278 -186
- package/dist/observability/retryPolicy.d.ts +2 -13
- package/dist/observability/sampling/samplers.d.ts +2 -11
- package/dist/observability/spanProcessor.d.ts +2 -14
- package/dist/processors/base/BaseFileProcessor.js +1 -1
- package/dist/processors/document/OpenDocumentProcessor.js +5 -3
- package/dist/processors/media/VideoProcessor.js +157 -101
- package/dist/providers/amazonBedrock.js +12 -5
- package/dist/providers/amazonSagemaker.d.ts +5 -5
- package/dist/providers/amazonSagemaker.js +6 -2
- package/dist/providers/anthropic.d.ts +3 -3
- package/dist/providers/anthropic.js +23 -192
- package/dist/providers/anthropicBaseProvider.d.ts +4 -4
- package/dist/providers/anthropicBaseProvider.js +24 -13
- package/dist/providers/azureOpenai.d.ts +2 -2
- package/dist/providers/azureOpenai.js +6 -6
- package/dist/providers/googleAiStudio.d.ts +2 -2
- package/dist/providers/googleAiStudio.js +15 -7
- package/dist/providers/googleNativeGemini3.d.ts +3 -54
- package/dist/providers/googleNativeGemini3.js +14 -10
- package/dist/providers/googleVertex.d.ts +6 -6
- package/dist/providers/googleVertex.js +32 -26
- package/dist/providers/huggingFace.d.ts +4 -4
- package/dist/providers/huggingFace.js +15 -5
- package/dist/providers/litellm.d.ts +4 -4
- package/dist/providers/litellm.js +54 -42
- package/dist/providers/mistral.d.ts +2 -2
- package/dist/providers/mistral.js +5 -4
- package/dist/providers/ollama.d.ts +7 -4
- package/dist/providers/ollama.js +30 -8
- package/dist/providers/openAI.d.ts +2 -2
- package/dist/providers/openAI.js +46 -21
- package/dist/providers/openRouter.d.ts +4 -4
- package/dist/providers/openRouter.js +63 -35
- package/dist/providers/openaiCompatible.d.ts +2 -2
- package/dist/providers/openaiCompatible.js +18 -9
- package/dist/providers/providerTypeUtils.d.ts +28 -0
- package/dist/providers/providerTypeUtils.js +46 -0
- package/dist/providers/sagemaker/config.js +5 -5
- package/dist/providers/sagemaker/language-model.d.ts +23 -13
- package/dist/providers/sagemaker/language-model.js +20 -8
- package/dist/proxy/accountQuota.d.ts +33 -0
- package/dist/proxy/accountQuota.js +162 -0
- package/dist/proxy/claudeFormat.d.ts +143 -0
- package/dist/proxy/claudeFormat.js +595 -0
- package/dist/proxy/cloaking/index.d.ts +44 -0
- package/dist/proxy/cloaking/index.js +86 -0
- package/dist/proxy/cloaking/plugins/headerScrubber.d.ts +9 -0
- package/dist/proxy/cloaking/plugins/headerScrubber.js +86 -0
- package/dist/proxy/cloaking/plugins/sessionIdentity.d.ts +15 -0
- package/dist/proxy/cloaking/plugins/sessionIdentity.js +65 -0
- package/dist/proxy/cloaking/plugins/systemPromptInjector.d.ts +11 -0
- package/dist/proxy/cloaking/plugins/systemPromptInjector.js +83 -0
- package/dist/proxy/cloaking/plugins/tlsFingerprint.d.ts +14 -0
- package/dist/proxy/cloaking/plugins/tlsFingerprint.js +38 -0
- package/dist/proxy/cloaking/plugins/wordObfuscator.d.ts +9 -0
- package/dist/proxy/cloaking/plugins/wordObfuscator.js +121 -0
- package/dist/proxy/cloaking/types.d.ts +1 -0
- package/dist/proxy/cloaking/types.js +1 -0
- package/dist/proxy/modelRouter.d.ts +10 -0
- package/dist/proxy/modelRouter.js +29 -0
- package/dist/proxy/oauthFetch.d.ts +36 -0
- package/dist/proxy/oauthFetch.js +367 -0
- package/dist/proxy/proxyConfig.d.ts +42 -0
- package/dist/proxy/proxyConfig.js +499 -0
- package/dist/proxy/proxyFetch.js +2 -1
- package/dist/proxy/requestLogger.d.ts +50 -0
- package/dist/proxy/requestLogger.js +207 -0
- package/dist/proxy/tokenRefresh.d.ts +4 -0
- package/dist/proxy/tokenRefresh.js +124 -0
- package/dist/proxy/usageStats.d.ts +13 -0
- package/dist/proxy/usageStats.js +74 -0
- package/dist/rag/document/loaders.js +1 -1
- package/dist/rag/pipeline/contextAssembly.d.ts +4 -7
- package/dist/rag/ragIntegration.d.ts +2 -14
- package/dist/rag/ragIntegration.js +1 -1
- package/dist/rag/resilience/CircuitBreaker.d.ts +5 -44
- package/dist/rag/resilience/RetryHandler.js +1 -1
- package/dist/rag/retrieval/vectorQueryTool.d.ts +1 -9
- package/dist/rag/retrieval/vectorQueryTool.js +1 -1
- package/dist/sdk/toolRegistration.js +12 -1
- package/dist/server/abstract/baseServerAdapter.js +2 -2
- package/dist/server/adapters/honoAdapter.d.ts +6 -0
- package/dist/server/adapters/honoAdapter.js +76 -10
- package/dist/server/middleware/cache.js +3 -0
- package/dist/server/routes/claudeProxyRoutes.d.ts +44 -0
- package/dist/server/routes/claudeProxyRoutes.js +1600 -0
- package/dist/server/routes/healthRoutes.js +18 -1
- package/dist/server/routes/index.d.ts +7 -0
- package/dist/server/routes/index.js +8 -0
- package/dist/server/streaming/dataStream.d.ts +1 -5
- package/dist/server/streaming/dataStream.js +3 -0
- package/dist/server/utils/validation.d.ts +24 -124
- package/dist/server/utils/validation.js +2 -2
- package/dist/services/server/ai/observability/instrumentation.js +4 -0
- package/dist/telemetry/attributes.d.ts +38 -0
- package/dist/telemetry/attributes.js +40 -0
- package/dist/telemetry/tracers.d.ts +1 -0
- package/dist/telemetry/tracers.js +1 -0
- package/dist/types/authTypes.d.ts +56 -0
- package/dist/types/authTypes.js +8 -0
- package/dist/types/circuitBreakerErrors.d.ts +30 -0
- package/dist/types/circuitBreakerErrors.js +34 -0
- package/dist/types/cli.d.ts +258 -0
- package/dist/types/clientTypes.d.ts +1050 -0
- package/dist/types/clientTypes.js +10 -0
- package/dist/types/common.d.ts +123 -0
- package/dist/types/configTypes.d.ts +49 -0
- package/dist/types/configTypes.js +4 -0
- package/dist/types/conversation.d.ts +0 -5
- package/dist/types/evaluationTypes.d.ts +2 -2
- package/dist/types/fileTypes.d.ts +47 -0
- package/dist/types/generateTypes.d.ts +7 -3
- package/dist/types/guardrails.d.ts +2 -2
- package/dist/types/index.d.ts +4 -1
- package/dist/types/index.js +5 -0
- package/dist/types/middlewareTypes.d.ts +3 -3
- package/dist/types/modelTypes.d.ts +7 -97
- package/dist/types/modelTypes.js +3 -3
- package/dist/types/observability.d.ts +37 -0
- package/dist/types/providers.d.ts +107 -0
- package/dist/types/proxyTypes.d.ts +536 -0
- package/dist/types/proxyTypes.js +16 -0
- package/dist/types/ragTypes.d.ts +49 -1
- package/dist/types/streamTypes.d.ts +37 -13
- package/dist/types/subscriptionTypes.d.ts +77 -0
- package/dist/types/subscriptionTypes.js +2 -0
- package/dist/types/tools.d.ts +45 -1
- package/dist/types/typeAliases.d.ts +8 -0
- package/dist/types/typeAliases.js +1 -0
- package/dist/utils/async/retry.d.ts +4 -33
- package/dist/utils/asyncMutex.d.ts +14 -0
- package/dist/utils/asyncMutex.js +60 -0
- package/dist/utils/errorHandling.d.ts +2 -1
- package/dist/utils/errorHandling.js +14 -6
- package/dist/utils/fileDetector.d.ts +13 -1
- package/dist/utils/fileDetector.js +114 -32
- package/dist/utils/imageProcessor.js +7 -7
- package/dist/utils/json/safeParse.d.ts +1 -8
- package/dist/utils/mcpDefaults.d.ts +1 -1
- package/dist/utils/mcpDefaults.js +11 -2
- package/dist/utils/messageBuilder.d.ts +5 -5
- package/dist/utils/messageBuilder.js +106 -80
- package/dist/utils/modelChoices.d.ts +1 -8
- package/dist/utils/pdfProcessor.d.ts +1 -25
- package/dist/utils/pdfProcessor.js +5 -4
- package/dist/utils/pricing.js +28 -5
- package/dist/utils/rateLimiter.d.ts +1 -15
- package/dist/utils/redis.d.ts +1 -1
- package/dist/utils/redis.js +3 -3
- package/dist/utils/sanitizers/filename.d.ts +2 -22
- package/dist/utils/sanitizers/index.d.ts +4 -2
- package/dist/utils/sanitizers/svg.d.ts +1 -11
- package/dist/utils/schemaConversion.js +4 -1
- package/dist/utils/thinkingConfig.d.ts +1 -33
- package/dist/utils/tokenUtils.d.ts +1 -39
- package/dist/utils/videoAnalysisProcessor.d.ts +5 -5
- package/dist/utils/videoAnalysisProcessor.js +2 -2
- package/dist/workflow/config.d.ts +89 -1257
- package/dist/workflow/utils/workflowValidation.js +1 -1
- package/docs-site/mcp-server/index.js +2 -3
- package/package.json +138 -105
- package/dist/lib/memory/mem0Initializer.d.ts +0 -46
- package/dist/lib/memory/mem0Initializer.js +0 -85
- package/dist/memory/mem0Initializer.d.ts +0 -46
- package/dist/memory/mem0Initializer.js +0 -84
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type LanguageModel, type
|
|
2
|
-
import type { ZodType
|
|
1
|
+
import { type LanguageModel, type Schema } from "ai";
|
|
2
|
+
import type { ZodType } from "zod";
|
|
3
3
|
import { type AIProviderName } from "../constants/enums.js";
|
|
4
4
|
import { BaseProvider } from "../core/baseProvider.js";
|
|
5
5
|
import type { EnhancedGenerateResult, TextGenerationOptions } from "../types/generateTypes.js";
|
|
@@ -120,7 +120,7 @@ export declare class GoogleVertexProvider extends BaseProvider {
|
|
|
120
120
|
* Validate stream options
|
|
121
121
|
*/
|
|
122
122
|
private validateStreamOptionsOnly;
|
|
123
|
-
protected executeStream(options: StreamOptions, analysisSchema?: ZodType
|
|
123
|
+
protected executeStream(options: StreamOptions, analysisSchema?: ZodType | Schema<unknown>): Promise<StreamResult>;
|
|
124
124
|
/**
|
|
125
125
|
* Create @google/genai client configured for Vertex AI
|
|
126
126
|
*/
|
|
@@ -193,7 +193,7 @@ export declare class GoogleVertexProvider extends BaseProvider {
|
|
|
193
193
|
* @example
|
|
194
194
|
* ```typescript
|
|
195
195
|
* provider.resolveModelAlias("claude-sonnet-4-5"); // "claude-sonnet-4-5@20250929"
|
|
196
|
-
* provider.resolveModelAlias("gemini-3-pro"); // "gemini-3-pro-
|
|
196
|
+
* provider.resolveModelAlias("gemini-3-pro"); // "gemini-3.1-pro-preview"
|
|
197
197
|
* provider.resolveModelAlias("gemini-2.5-flash"); // "gemini-2.5-flash" (unchanged)
|
|
198
198
|
* ```
|
|
199
199
|
*/
|
|
@@ -202,9 +202,9 @@ export declare class GoogleVertexProvider extends BaseProvider {
|
|
|
202
202
|
* Create an Anthropic model instance using vertexAnthropic provider
|
|
203
203
|
* Uses fresh vertex settings for each request with comprehensive validation
|
|
204
204
|
* @param modelName Anthropic model name (e.g., 'claude-3-sonnet@20240229')
|
|
205
|
-
* @returns
|
|
205
|
+
* @returns LanguageModel instance or null if not available
|
|
206
206
|
*/
|
|
207
|
-
createAnthropicModel(modelName: string): Promise<
|
|
207
|
+
createAnthropicModel(modelName: string): Promise<LanguageModel | null>;
|
|
208
208
|
/**
|
|
209
209
|
* Validate Vertex AI authentication configuration
|
|
210
210
|
*/
|
|
@@ -2,7 +2,7 @@ import dns from "node:dns";
|
|
|
2
2
|
import { createVertex, } from "@ai-sdk/google-vertex";
|
|
3
3
|
import { createVertexAnthropic, } from "@ai-sdk/google-vertex/anthropic";
|
|
4
4
|
import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
|
|
5
|
-
import { embed, embedMany, Output, streamText, } from "ai";
|
|
5
|
+
import { embed, embedMany, Output, stepCountIs, streamText, } from "ai";
|
|
6
6
|
import fs from "fs";
|
|
7
7
|
import os from "os";
|
|
8
8
|
import path from "path";
|
|
@@ -23,6 +23,7 @@ import { convertZodToJsonSchema, inlineJsonSchema, } from "../utils/schemaConver
|
|
|
23
23
|
import { composeAbortSignals, createTimeoutController, TimeoutError, } from "../utils/timeout.js";
|
|
24
24
|
import { estimateTokens } from "../utils/tokenEstimation.js";
|
|
25
25
|
import { buildNativeConfig, buildNativeToolDeclarations, collectStreamChunks, collectStreamChunksIncremental, computeMaxSteps as computeMaxStepsShared, createTextChannel, executeNativeToolCalls, extractTextFromParts, handleMaxStepsTermination, pushModelResponseToHistory, sanitizeToolsForGemini, } from "./googleNativeGemini3.js";
|
|
26
|
+
import { getModelId } from "./providerTypeUtils.js";
|
|
26
27
|
// Import proper types for multimodal message handling
|
|
27
28
|
// Keep-alive note: Node.js native fetch and undici (used by createProxyFetch)
|
|
28
29
|
// handle HTTP keep-alive internally. The fetchWithRetry wrapper in proxyFetch.ts
|
|
@@ -183,7 +184,7 @@ const createVertexSettings = async (region) => {
|
|
|
183
184
|
if (process.env.GOOGLE_APPLICATION_CREDENTIALS_NEUROLINK) {
|
|
184
185
|
const credentialsPath = process.env.GOOGLE_APPLICATION_CREDENTIALS_NEUROLINK;
|
|
185
186
|
// Check if the credentials file exists
|
|
186
|
-
let fileExists
|
|
187
|
+
let fileExists;
|
|
187
188
|
try {
|
|
188
189
|
fileExists = fs.existsSync(credentialsPath);
|
|
189
190
|
}
|
|
@@ -198,7 +199,7 @@ const createVertexSettings = async (region) => {
|
|
|
198
199
|
if (process.env.GOOGLE_APPLICATION_CREDENTIALS) {
|
|
199
200
|
const credentialsPath = process.env.GOOGLE_APPLICATION_CREDENTIALS;
|
|
200
201
|
// Check if the credentials file exists
|
|
201
|
-
let fileExists
|
|
202
|
+
let fileExists;
|
|
202
203
|
try {
|
|
203
204
|
fileExists = fs.existsSync(credentialsPath);
|
|
204
205
|
}
|
|
@@ -341,8 +342,8 @@ export const VERTEX_MODEL_ALIASES = {
|
|
|
341
342
|
"claude-3-sonnet": "claude-3-sonnet-20240229",
|
|
342
343
|
"claude-3-haiku": "claude-3-haiku-20240307",
|
|
343
344
|
// Gemini shorthand aliases
|
|
344
|
-
"gemini-3-pro": "gemini-3-pro-
|
|
345
|
-
"gemini-3-flash": "gemini-3-flash-
|
|
345
|
+
"gemini-3-pro": "gemini-3.1-pro-preview",
|
|
346
|
+
"gemini-3-flash": "gemini-3-flash-preview",
|
|
346
347
|
};
|
|
347
348
|
/**
|
|
348
349
|
* Google Vertex AI Provider v2 - BaseProvider Implementation
|
|
@@ -867,7 +868,7 @@ export class GoogleVertexProvider extends BaseProvider {
|
|
|
867
868
|
Object.keys(tools).length > 0 && {
|
|
868
869
|
tools,
|
|
869
870
|
toolChoice: "auto",
|
|
870
|
-
|
|
871
|
+
stopWhen: stepCountIs(options.maxSteps || DEFAULT_MAX_STEPS),
|
|
871
872
|
}),
|
|
872
873
|
abortSignal: composeAbortSignals(options.abortSignal, timeoutController?.controller.signal),
|
|
873
874
|
experimental_telemetry: this.telemetryHandler.getTelemetryConfig(options),
|
|
@@ -925,7 +926,7 @@ export class GoogleVertexProvider extends BaseProvider {
|
|
|
925
926
|
if (!isAnthropic) {
|
|
926
927
|
delete streamOptions.tools;
|
|
927
928
|
delete streamOptions.toolChoice;
|
|
928
|
-
delete streamOptions.
|
|
929
|
+
delete streamOptions.stopWhen;
|
|
929
930
|
}
|
|
930
931
|
streamOptions = {
|
|
931
932
|
...streamOptions,
|
|
@@ -945,7 +946,7 @@ export class GoogleVertexProvider extends BaseProvider {
|
|
|
945
946
|
kind: SpanKind.CLIENT,
|
|
946
947
|
attributes: {
|
|
947
948
|
"gen_ai.system": "vertex",
|
|
948
|
-
"gen_ai.request.model": model
|
|
949
|
+
"gen_ai.request.model": getModelId(model, this.modelName || "unknown"),
|
|
949
950
|
},
|
|
950
951
|
});
|
|
951
952
|
let result;
|
|
@@ -963,18 +964,16 @@ export class GoogleVertexProvider extends BaseProvider {
|
|
|
963
964
|
}
|
|
964
965
|
// Collect token usage and finish reason asynchronously when the stream completes,
|
|
965
966
|
// then end the span. This avoids blocking the stream consumer.
|
|
966
|
-
result.usage
|
|
967
|
+
Promise.resolve(result.usage)
|
|
967
968
|
.then((usage) => {
|
|
968
|
-
streamSpan.setAttribute("gen_ai.usage.input_tokens", usage.
|
|
969
|
-
streamSpan.setAttribute("gen_ai.usage.output_tokens", usage.
|
|
969
|
+
streamSpan.setAttribute("gen_ai.usage.input_tokens", usage.inputTokens || 0);
|
|
970
|
+
streamSpan.setAttribute("gen_ai.usage.output_tokens", usage.outputTokens || 0);
|
|
970
971
|
const effectiveModel = options.model ||
|
|
971
|
-
model.
|
|
972
|
-
this.modelName ||
|
|
973
|
-
getDefaultVertexModel();
|
|
972
|
+
getModelId(model, this.modelName || getDefaultVertexModel());
|
|
974
973
|
const cost = calculateCost(this.providerName, effectiveModel, {
|
|
975
|
-
input: usage.
|
|
976
|
-
output: usage.
|
|
977
|
-
total: (usage.
|
|
974
|
+
input: usage.inputTokens || 0,
|
|
975
|
+
output: usage.outputTokens || 0,
|
|
976
|
+
total: (usage.inputTokens || 0) + (usage.outputTokens || 0),
|
|
978
977
|
});
|
|
979
978
|
if (cost && cost > 0) {
|
|
980
979
|
streamSpan.setAttribute("neurolink.cost", cost);
|
|
@@ -983,14 +982,14 @@ export class GoogleVertexProvider extends BaseProvider {
|
|
|
983
982
|
.catch(() => {
|
|
984
983
|
// Usage may not be available if the stream is aborted
|
|
985
984
|
});
|
|
986
|
-
result.finishReason
|
|
985
|
+
Promise.resolve(result.finishReason)
|
|
987
986
|
.then((reason) => {
|
|
988
987
|
streamSpan.setAttribute("gen_ai.response.finish_reason", reason || "unknown");
|
|
989
988
|
})
|
|
990
989
|
.catch(() => {
|
|
991
990
|
// Finish reason may not be available if the stream is aborted
|
|
992
991
|
});
|
|
993
|
-
result.text
|
|
992
|
+
Promise.resolve(result.text)
|
|
994
993
|
.then(() => {
|
|
995
994
|
streamSpan.end();
|
|
996
995
|
})
|
|
@@ -1001,8 +1000,15 @@ export class GoogleVertexProvider extends BaseProvider {
|
|
|
1001
1000
|
});
|
|
1002
1001
|
streamSpan.end();
|
|
1003
1002
|
});
|
|
1004
|
-
// Defer timeout cleanup until the stream completes or errors
|
|
1005
|
-
|
|
1003
|
+
// Defer timeout cleanup until the stream completes or errors.
|
|
1004
|
+
// Guard against NoOutputGeneratedError becoming an unhandled rejection.
|
|
1005
|
+
Promise.resolve(result.text)
|
|
1006
|
+
.catch((err) => {
|
|
1007
|
+
logger.debug("Stream text promise rejected (expected for empty streams)", {
|
|
1008
|
+
error: err instanceof Error ? err.message : String(err),
|
|
1009
|
+
});
|
|
1010
|
+
})
|
|
1011
|
+
.finally(() => timeoutController?.cleanup());
|
|
1006
1012
|
// Transform string stream to content object stream using BaseProvider method
|
|
1007
1013
|
const transformedStream = this.createTextStream(result);
|
|
1008
1014
|
// Track tool calls and results for streaming
|
|
@@ -1789,7 +1795,7 @@ export class GoogleVertexProvider extends BaseProvider {
|
|
|
1789
1795
|
* @example
|
|
1790
1796
|
* ```typescript
|
|
1791
1797
|
* provider.resolveModelAlias("claude-sonnet-4-5"); // "claude-sonnet-4-5@20250929"
|
|
1792
|
-
* provider.resolveModelAlias("gemini-3-pro"); // "gemini-3-pro-
|
|
1798
|
+
* provider.resolveModelAlias("gemini-3-pro"); // "gemini-3.1-pro-preview"
|
|
1793
1799
|
* provider.resolveModelAlias("gemini-2.5-flash"); // "gemini-2.5-flash" (unchanged)
|
|
1794
1800
|
* ```
|
|
1795
1801
|
*/
|
|
@@ -1800,7 +1806,7 @@ export class GoogleVertexProvider extends BaseProvider {
|
|
|
1800
1806
|
* Create an Anthropic model instance using vertexAnthropic provider
|
|
1801
1807
|
* Uses fresh vertex settings for each request with comprehensive validation
|
|
1802
1808
|
* @param modelName Anthropic model name (e.g., 'claude-3-sonnet@20240229')
|
|
1803
|
-
* @returns
|
|
1809
|
+
* @returns LanguageModel instance or null if not available
|
|
1804
1810
|
*/
|
|
1805
1811
|
async createAnthropicModel(modelName) {
|
|
1806
1812
|
const validationId = `anthropic-validation-${Date.now()}-${Math.random().toString(36).substring(2, 11)}`;
|
|
@@ -2885,9 +2891,9 @@ export class GoogleVertexProvider extends BaseProvider {
|
|
|
2885
2891
|
getModelSuggestions(requestedModel) {
|
|
2886
2892
|
const availableModels = {
|
|
2887
2893
|
google: [
|
|
2888
|
-
"gemini-3-pro-preview
|
|
2889
|
-
"gemini-3-
|
|
2890
|
-
"gemini-3-
|
|
2894
|
+
"gemini-3.1-pro-preview",
|
|
2895
|
+
"gemini-3.1-flash-lite-preview",
|
|
2896
|
+
"gemini-3-flash-preview",
|
|
2891
2897
|
"gemini-2.5-pro",
|
|
2892
2898
|
"gemini-2.5-flash",
|
|
2893
2899
|
"gemini-2.5-flash-lite",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { ZodType
|
|
2
|
-
import { type Schema, type
|
|
1
|
+
import type { ZodType } from "zod";
|
|
2
|
+
import { type Schema, type LanguageModel } from "ai";
|
|
3
3
|
import { AIProviderName } from "../constants/enums.js";
|
|
4
4
|
import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
|
|
5
5
|
import { BaseProvider } from "../core/baseProvider.js";
|
|
@@ -36,7 +36,7 @@ export declare class HuggingFaceProvider extends BaseProvider {
|
|
|
36
36
|
* @returns true for supported models, false for unsupported models
|
|
37
37
|
*/
|
|
38
38
|
supportsTools(): boolean;
|
|
39
|
-
protected executeStream(options: StreamOptions, analysisSchema?: ZodType
|
|
39
|
+
protected executeStream(options: StreamOptions, analysisSchema?: ZodType | Schema<unknown>): Promise<StreamResult>;
|
|
40
40
|
/**
|
|
41
41
|
* Prepare stream options with HuggingFace-specific enhancements
|
|
42
42
|
* Handles tool calling optimizations and model-specific formatting
|
|
@@ -74,6 +74,6 @@ export declare class HuggingFaceProvider extends BaseProvider {
|
|
|
74
74
|
/**
|
|
75
75
|
* Returns the Vercel AI SDK model instance for HuggingFace
|
|
76
76
|
*/
|
|
77
|
-
getAISDKModel():
|
|
77
|
+
getAISDKModel(): LanguageModel;
|
|
78
78
|
}
|
|
79
79
|
export default HuggingFaceProvider;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createOpenAI } from "@ai-sdk/openai";
|
|
2
|
-
import { streamText, } from "ai";
|
|
2
|
+
import { NoOutputGeneratedError, stepCountIs, streamText, } from "ai";
|
|
3
3
|
import { AIProviderName } from "../constants/enums.js";
|
|
4
4
|
import { BaseProvider } from "../core/baseProvider.js";
|
|
5
5
|
import { logger } from "../utils/logger.js";
|
|
@@ -131,8 +131,8 @@ export class HuggingFaceProvider extends BaseProvider {
|
|
|
131
131
|
model: this.model,
|
|
132
132
|
messages: messages,
|
|
133
133
|
temperature: options.temperature,
|
|
134
|
-
|
|
135
|
-
|
|
134
|
+
maxOutputTokens: options.maxTokens, // No default limit - unlimited unless specified
|
|
135
|
+
stopWhen: stepCountIs(options.maxSteps || DEFAULT_MAX_STEPS),
|
|
136
136
|
tools: (shouldUseTools
|
|
137
137
|
? streamOptions.tools || allTools
|
|
138
138
|
: {}),
|
|
@@ -153,8 +153,18 @@ export class HuggingFaceProvider extends BaseProvider {
|
|
|
153
153
|
timeoutController?.cleanup();
|
|
154
154
|
// Transform stream to match StreamResult interface with enhanced tool call parsing
|
|
155
155
|
const transformedStream = async function* () {
|
|
156
|
-
|
|
157
|
-
|
|
156
|
+
try {
|
|
157
|
+
for await (const chunk of result.textStream) {
|
|
158
|
+
yield { content: chunk };
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
catch (streamError) {
|
|
162
|
+
// AI SDK v6 throws NoOutputGeneratedError when the stream produced no output.
|
|
163
|
+
if (NoOutputGeneratedError.isInstance(streamError)) {
|
|
164
|
+
logger.warn("HuggingFace: Stream produced no output (NoOutputGeneratedError)");
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
throw streamError;
|
|
158
168
|
}
|
|
159
169
|
};
|
|
160
170
|
return {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
import type { ZodType
|
|
1
|
+
import { type LanguageModel, type Schema } from "ai";
|
|
2
|
+
import type { ZodType } from "zod";
|
|
3
3
|
import type { AIProviderName } from "../constants/enums.js";
|
|
4
4
|
import { BaseProvider } from "../core/baseProvider.js";
|
|
5
5
|
import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
|
|
@@ -18,7 +18,7 @@ export declare class LiteLLMProvider extends BaseProvider {
|
|
|
18
18
|
/**
|
|
19
19
|
* Returns the Vercel AI SDK model instance for LiteLLM
|
|
20
20
|
*/
|
|
21
|
-
protected getAISDKModel():
|
|
21
|
+
protected getAISDKModel(): LanguageModel;
|
|
22
22
|
formatProviderError(error: unknown): Error;
|
|
23
23
|
/**
|
|
24
24
|
* LiteLLM supports tools for compatible models
|
|
@@ -28,7 +28,7 @@ export declare class LiteLLMProvider extends BaseProvider {
|
|
|
28
28
|
* Provider-specific streaming implementation
|
|
29
29
|
* Note: This is only used when tools are disabled
|
|
30
30
|
*/
|
|
31
|
-
protected executeStream(options: StreamOptions, analysisSchema?: ZodType
|
|
31
|
+
protected executeStream(options: StreamOptions, analysisSchema?: ZodType | Schema<unknown>): Promise<StreamResult>;
|
|
32
32
|
/**
|
|
33
33
|
* Generate an embedding for a single text input
|
|
34
34
|
* Uses the LiteLLM proxy with OpenAI-compatible embedding API
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createOpenAI } from "@ai-sdk/openai";
|
|
2
2
|
import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
|
|
3
|
-
import { Output, streamText, } from "ai";
|
|
3
|
+
import { NoOutputGeneratedError, Output, streamText, } from "ai";
|
|
4
4
|
import { BaseProvider } from "../core/baseProvider.js";
|
|
5
5
|
import { DEFAULT_MAX_STEPS } from "../core/constants.js";
|
|
6
6
|
import { streamAnalyticsCollector } from "../core/streamAnalytics.js";
|
|
@@ -11,6 +11,7 @@ import { logger } from "../utils/logger.js";
|
|
|
11
11
|
import { calculateCost } from "../utils/pricing.js";
|
|
12
12
|
import { getProviderModel } from "../utils/providerConfig.js";
|
|
13
13
|
import { composeAbortSignals, createTimeoutController, TimeoutError, } from "../utils/timeout.js";
|
|
14
|
+
import { getModelId } from "./providerTypeUtils.js";
|
|
14
15
|
const streamTracer = trace.getTracer("neurolink.provider.litellm");
|
|
15
16
|
// Configuration helpers
|
|
16
17
|
const getLiteLLMConfig = () => {
|
|
@@ -58,9 +59,7 @@ export class LiteLLMProvider extends BaseProvider {
|
|
|
58
59
|
apiKey: config.apiKey,
|
|
59
60
|
fetch: createProxyFetch(),
|
|
60
61
|
});
|
|
61
|
-
this.model = customOpenAI(this.modelName || getDefaultLiteLLMModel()
|
|
62
|
-
structuredOutputs: false,
|
|
63
|
-
});
|
|
62
|
+
this.model = customOpenAI(this.modelName || getDefaultLiteLLMModel());
|
|
64
63
|
logger.debug("LiteLLM Provider initialized", {
|
|
65
64
|
modelName: this.modelName,
|
|
66
65
|
provider: this.providerName,
|
|
@@ -216,7 +215,7 @@ export class LiteLLMProvider extends BaseProvider {
|
|
|
216
215
|
kind: SpanKind.CLIENT,
|
|
217
216
|
attributes: {
|
|
218
217
|
"gen_ai.system": "litellm",
|
|
219
|
-
"gen_ai.request.model": model
|
|
218
|
+
"gen_ai.request.model": getModelId(model, this.modelName || "unknown"),
|
|
220
219
|
},
|
|
221
220
|
});
|
|
222
221
|
let result;
|
|
@@ -235,14 +234,14 @@ export class LiteLLMProvider extends BaseProvider {
|
|
|
235
234
|
}
|
|
236
235
|
// Collect token usage, cost, and finish reason asynchronously when the stream completes,
|
|
237
236
|
// then end the span. This avoids blocking the stream consumer.
|
|
238
|
-
result.usage
|
|
237
|
+
Promise.resolve(result.usage)
|
|
239
238
|
.then((usage) => {
|
|
240
|
-
streamSpan.setAttribute("gen_ai.usage.input_tokens", usage.
|
|
241
|
-
streamSpan.setAttribute("gen_ai.usage.output_tokens", usage.
|
|
239
|
+
streamSpan.setAttribute("gen_ai.usage.input_tokens", usage.inputTokens || 0);
|
|
240
|
+
streamSpan.setAttribute("gen_ai.usage.output_tokens", usage.outputTokens || 0);
|
|
242
241
|
const cost = calculateCost(this.providerName, this.modelName, {
|
|
243
|
-
input: usage.
|
|
244
|
-
output: usage.
|
|
245
|
-
total: (usage.
|
|
242
|
+
input: usage.inputTokens || 0,
|
|
243
|
+
output: usage.outputTokens || 0,
|
|
244
|
+
total: (usage.inputTokens || 0) + (usage.outputTokens || 0),
|
|
246
245
|
});
|
|
247
246
|
if (cost && cost > 0) {
|
|
248
247
|
streamSpan.setAttribute("neurolink.cost", cost);
|
|
@@ -251,14 +250,14 @@ export class LiteLLMProvider extends BaseProvider {
|
|
|
251
250
|
.catch(() => {
|
|
252
251
|
// Usage may not be available if the stream is aborted
|
|
253
252
|
});
|
|
254
|
-
result.finishReason
|
|
253
|
+
Promise.resolve(result.finishReason)
|
|
255
254
|
.then((reason) => {
|
|
256
255
|
streamSpan.setAttribute("gen_ai.response.finish_reason", reason || "unknown");
|
|
257
256
|
})
|
|
258
257
|
.catch(() => {
|
|
259
258
|
// Finish reason may not be available if the stream is aborted
|
|
260
259
|
});
|
|
261
|
-
result.text
|
|
260
|
+
Promise.resolve(result.text)
|
|
262
261
|
.then(() => {
|
|
263
262
|
streamSpan.end();
|
|
264
263
|
})
|
|
@@ -273,40 +272,53 @@ export class LiteLLMProvider extends BaseProvider {
|
|
|
273
272
|
// Transform stream to content object stream using fullStream (handles both text and tool calls)
|
|
274
273
|
// Note: fullStream includes tool results, textStream only has text
|
|
275
274
|
const transformedStream = (async function* () {
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
275
|
+
try {
|
|
276
|
+
// Try fullStream first (handles both text and tool calls), fallback to textStream
|
|
277
|
+
const streamToUse = result.fullStream || result.textStream;
|
|
278
|
+
for await (const chunk of streamToUse) {
|
|
279
|
+
// Handle different chunk types from fullStream
|
|
280
|
+
if (chunk && typeof chunk === "object") {
|
|
281
|
+
// Check for error chunks first (critical error handling)
|
|
282
|
+
if ("type" in chunk && chunk.type === "error") {
|
|
283
|
+
const errorChunk = chunk;
|
|
284
|
+
logger.error(`LiteLLM: Error chunk received:`, {
|
|
285
|
+
errorType: errorChunk.type,
|
|
286
|
+
errorDetails: errorChunk.error,
|
|
287
|
+
});
|
|
288
|
+
throw new Error(`LiteLLM streaming error: ${errorChunk.error?.message || "Unknown error"}`);
|
|
289
|
+
}
|
|
290
|
+
if ("textDelta" in chunk) {
|
|
291
|
+
// Text delta from fullStream
|
|
292
|
+
const textDelta = chunk.textDelta;
|
|
293
|
+
if (textDelta) {
|
|
294
|
+
yield { content: textDelta };
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
else if ("type" in chunk &&
|
|
298
|
+
chunk.type === "tool-call" &&
|
|
299
|
+
"toolCallId" in chunk) {
|
|
300
|
+
// Tool call event - log for debugging
|
|
301
|
+
const toolCallId = String(chunk.toolCallId);
|
|
302
|
+
const toolName = "toolName" in chunk ? String(chunk.toolName) : "unknown";
|
|
303
|
+
logger.debug("LiteLLM: Tool call", {
|
|
304
|
+
toolCallId,
|
|
305
|
+
toolName,
|
|
306
|
+
});
|
|
295
307
|
}
|
|
296
308
|
}
|
|
297
|
-
else if (chunk
|
|
298
|
-
//
|
|
299
|
-
|
|
300
|
-
logger.debug("LiteLLM: Tool call streaming start", {
|
|
301
|
-
toolCallId: toolCall.toolCallId,
|
|
302
|
-
toolName: toolCall.toolName,
|
|
303
|
-
});
|
|
309
|
+
else if (typeof chunk === "string") {
|
|
310
|
+
// Direct string chunk from textStream fallback
|
|
311
|
+
yield { content: chunk };
|
|
304
312
|
}
|
|
305
313
|
}
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
314
|
+
}
|
|
315
|
+
catch (streamError) {
|
|
316
|
+
// AI SDK v6 throws NoOutputGeneratedError when the stream produced no output.
|
|
317
|
+
if (NoOutputGeneratedError.isInstance(streamError)) {
|
|
318
|
+
logger.warn("LiteLLM: Stream produced no output (NoOutputGeneratedError)");
|
|
319
|
+
return;
|
|
309
320
|
}
|
|
321
|
+
throw streamError;
|
|
310
322
|
}
|
|
311
323
|
})();
|
|
312
324
|
// Create analytics promise that resolves after stream completion
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type LanguageModel } from "ai";
|
|
2
2
|
import type { AIProviderName } from "../constants/enums.js";
|
|
3
3
|
import { BaseProvider } from "../core/baseProvider.js";
|
|
4
4
|
import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
|
|
@@ -16,7 +16,7 @@ export declare class MistralProvider extends BaseProvider {
|
|
|
16
16
|
/**
|
|
17
17
|
* Returns the Vercel AI SDK model instance for Mistral
|
|
18
18
|
*/
|
|
19
|
-
getAISDKModel():
|
|
19
|
+
getAISDKModel(): LanguageModel;
|
|
20
20
|
formatProviderError(error: unknown): Error;
|
|
21
21
|
/**
|
|
22
22
|
* Validate provider configuration
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createMistral } from "@ai-sdk/mistral";
|
|
2
|
-
import { streamText } from "ai";
|
|
2
|
+
import { stepCountIs, streamText } from "ai";
|
|
3
3
|
import { BaseProvider } from "../core/baseProvider.js";
|
|
4
4
|
import { DEFAULT_MAX_STEPS } from "../core/constants.js";
|
|
5
5
|
import { streamAnalyticsCollector } from "../core/streamAnalytics.js";
|
|
@@ -7,6 +7,7 @@ import { createProxyFetch } from "../proxy/proxyFetch.js";
|
|
|
7
7
|
import { logger } from "../utils/logger.js";
|
|
8
8
|
import { createMistralConfig, getProviderModel, validateApiKey, } from "../utils/providerConfig.js";
|
|
9
9
|
import { composeAbortSignals, createTimeoutController, TimeoutError, } from "../utils/timeout.js";
|
|
10
|
+
import { toAnalyticsStreamResult } from "./providerTypeUtils.js";
|
|
10
11
|
// Configuration helpers - now using consolidated utility
|
|
11
12
|
const getMistralApiKey = () => {
|
|
12
13
|
return validateApiKey(createMistralConfig());
|
|
@@ -59,9 +60,9 @@ export class MistralProvider extends BaseProvider {
|
|
|
59
60
|
model,
|
|
60
61
|
messages: messages,
|
|
61
62
|
temperature: options.temperature,
|
|
62
|
-
|
|
63
|
+
maxOutputTokens: options.maxTokens, // No default limit - unlimited unless specified
|
|
63
64
|
tools,
|
|
64
|
-
|
|
65
|
+
stopWhen: stepCountIs(options.maxSteps || DEFAULT_MAX_STEPS),
|
|
65
66
|
toolChoice: shouldUseTools ? "auto" : "none",
|
|
66
67
|
abortSignal: composeAbortSignals(options.abortSignal, timeoutController?.controller.signal),
|
|
67
68
|
experimental_telemetry: this.telemetryHandler.getTelemetryConfig(options),
|
|
@@ -78,7 +79,7 @@ export class MistralProvider extends BaseProvider {
|
|
|
78
79
|
// Transform string stream to content object stream using BaseProvider method
|
|
79
80
|
const transformedStream = this.createTextStream(result);
|
|
80
81
|
// Create analytics promise that resolves after stream completion
|
|
81
|
-
const analyticsPromise = streamAnalyticsCollector.createAnalytics(this.providerName, this.modelName, result, Date.now() - startTime, {
|
|
82
|
+
const analyticsPromise = streamAnalyticsCollector.createAnalytics(this.providerName, this.modelName, toAnalyticsStreamResult(result), Date.now() - startTime, {
|
|
82
83
|
requestId: `mistral-stream-${Date.now()}`,
|
|
83
84
|
streamingMode: true,
|
|
84
85
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { LanguageModel, Schema } from "ai";
|
|
2
2
|
import type { AIProviderName } from "../constants/enums.js";
|
|
3
3
|
import { BaseProvider } from "../core/baseProvider.js";
|
|
4
4
|
import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
|
|
@@ -22,10 +22,13 @@ export declare class OllamaProvider extends BaseProvider {
|
|
|
22
22
|
protected getProviderName(): AIProviderName;
|
|
23
23
|
protected getDefaultModel(): string;
|
|
24
24
|
/**
|
|
25
|
-
* Returns the Vercel AI SDK model instance for Ollama
|
|
26
|
-
*
|
|
25
|
+
* Returns the Vercel AI SDK model instance for Ollama.
|
|
26
|
+
*
|
|
27
|
+
* OllamaLanguageModel implements OllamaAsLanguageModel which is structurally
|
|
28
|
+
* compatible with LanguageModelV2 (specificationVersion "v2", modelId, provider,
|
|
29
|
+
* supportedUrls, doGenerate, doStream).
|
|
27
30
|
*/
|
|
28
|
-
protected getAISDKModel():
|
|
31
|
+
protected getAISDKModel(): LanguageModel;
|
|
29
32
|
/**
|
|
30
33
|
* Ollama Tool Calling Support (Enhanced 2025)
|
|
31
34
|
*
|
|
@@ -42,14 +42,25 @@ const getOllamaTimeout = () => {
|
|
|
42
42
|
};
|
|
43
43
|
// Create proxy-aware fetch instance
|
|
44
44
|
const proxyFetch = createProxyFetch();
|
|
45
|
-
// Custom
|
|
45
|
+
// Custom LanguageModel implementation for Ollama
|
|
46
46
|
class OllamaLanguageModel {
|
|
47
|
-
|
|
47
|
+
/**
|
|
48
|
+
* Specification version for the AI SDK LanguageModel interface.
|
|
49
|
+
* Uses "v2" for structural compatibility with AI SDK v6's `LanguageModelV2`.
|
|
50
|
+
* The AI SDK checks this field to determine which interface version to use.
|
|
51
|
+
*/
|
|
52
|
+
specificationVersion = "v2";
|
|
48
53
|
provider = "ollama";
|
|
49
54
|
modelId;
|
|
50
55
|
maxTokens;
|
|
51
56
|
supportsStreaming = true;
|
|
52
57
|
defaultObjectGenerationMode = "json";
|
|
58
|
+
/**
|
|
59
|
+
* Supported URL patterns by media type.
|
|
60
|
+
* Ollama runs locally and does not natively download URLs, so this is empty.
|
|
61
|
+
* Required by the LanguageModelV2 interface.
|
|
62
|
+
*/
|
|
63
|
+
supportedUrls = {};
|
|
53
64
|
baseUrl;
|
|
54
65
|
timeout;
|
|
55
66
|
constructor(modelId, baseUrl, timeout) {
|
|
@@ -472,11 +483,15 @@ export class OllamaProvider extends BaseProvider {
|
|
|
472
483
|
return getDefaultOllamaModel();
|
|
473
484
|
}
|
|
474
485
|
/**
|
|
475
|
-
* Returns the Vercel AI SDK model instance for Ollama
|
|
476
|
-
*
|
|
486
|
+
* Returns the Vercel AI SDK model instance for Ollama.
|
|
487
|
+
*
|
|
488
|
+
* OllamaLanguageModel implements OllamaAsLanguageModel which is structurally
|
|
489
|
+
* compatible with LanguageModelV2 (specificationVersion "v2", modelId, provider,
|
|
490
|
+
* supportedUrls, doGenerate, doStream).
|
|
477
491
|
*/
|
|
478
492
|
getAISDKModel() {
|
|
479
|
-
|
|
493
|
+
const model = this.ollamaModel;
|
|
494
|
+
return model;
|
|
480
495
|
}
|
|
481
496
|
/**
|
|
482
497
|
* Ollama Tool Calling Support (Enhanced 2025)
|
|
@@ -1174,9 +1189,16 @@ export class OllamaProvider extends BaseProvider {
|
|
|
1174
1189
|
const result = {};
|
|
1175
1190
|
for (const [name, tool] of Object.entries(aiTools)) {
|
|
1176
1191
|
if ("description" in tool && tool.description) {
|
|
1192
|
+
// AI SDK v6 uses `inputSchema`; legacy tools may still use `parameters`
|
|
1193
|
+
const toolSchema = "inputSchema" in tool
|
|
1194
|
+
? tool.inputSchema
|
|
1195
|
+
: "parameters" in tool
|
|
1196
|
+
? tool
|
|
1197
|
+
.parameters
|
|
1198
|
+
: undefined;
|
|
1177
1199
|
result[name] = {
|
|
1178
1200
|
description: tool.description,
|
|
1179
|
-
parameters:
|
|
1201
|
+
parameters: toolSchema,
|
|
1180
1202
|
execute: async (params) => {
|
|
1181
1203
|
if ("execute" in tool && tool.execute) {
|
|
1182
1204
|
const result = await tool.execute(params, {
|
|
@@ -1282,7 +1304,7 @@ export class OllamaProvider extends BaseProvider {
|
|
|
1282
1304
|
for (const call of toolCalls) {
|
|
1283
1305
|
logger.debug(`[OllamaProvider] Executing tool: ${call.function.name}`);
|
|
1284
1306
|
// Parse arguments
|
|
1285
|
-
let args
|
|
1307
|
+
let args;
|
|
1286
1308
|
try {
|
|
1287
1309
|
args = JSON.parse(call.function.arguments);
|
|
1288
1310
|
}
|
|
@@ -1488,7 +1510,7 @@ export class OllamaProvider extends BaseProvider {
|
|
|
1488
1510
|
}
|
|
1489
1511
|
catch (error) {
|
|
1490
1512
|
if (error instanceof Error && error.message.includes("ECONNREFUSED")) {
|
|
1491
|
-
throw new Error(`ā Ollama Service Not Running\n\nCannot connect to Ollama service.\n\nš§ Start Ollama:\n1. Run: ollama serve\n2. Or start Ollama app\n3. Verify: curl ${this.baseUrl}/api/version
|
|
1513
|
+
throw new Error(`ā Ollama Service Not Running\n\nCannot connect to Ollama service.\n\nš§ Start Ollama:\n1. Run: ollama serve\n2. Or start Ollama app\n3. Verify: curl ${this.baseUrl}/api/version`, { cause: error });
|
|
1492
1514
|
}
|
|
1493
1515
|
throw error;
|
|
1494
1516
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type LanguageModel } from "ai";
|
|
2
2
|
import { AIProviderName } from "../constants/enums.js";
|
|
3
3
|
import { BaseProvider } from "../core/baseProvider.js";
|
|
4
4
|
import type { NeuroLink } from "../neurolink.js";
|
|
@@ -25,7 +25,7 @@ export declare class OpenAIProvider extends BaseProvider {
|
|
|
25
25
|
/**
|
|
26
26
|
* Returns the Vercel AI SDK model instance for OpenAI
|
|
27
27
|
*/
|
|
28
|
-
getAISDKModel():
|
|
28
|
+
getAISDKModel(): LanguageModel;
|
|
29
29
|
/**
|
|
30
30
|
* OpenAI-specific tool validation and filtering
|
|
31
31
|
* Filters out tools that might cause streaming issues
|