@juspay/neurolink 9.32.0 → 9.32.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 +6 -0
- package/dist/auth/anthropicOAuth.js +1 -1
- package/dist/cli/commands/proxy.js +18 -5
- package/dist/client/aiSdkAdapter.js +1 -1
- package/dist/client/index.js +137 -501
- package/dist/core/factory.js +0 -1
- package/dist/core/redisConversationMemoryManager.js +1 -1
- package/dist/features/ppt/slideGenerator.js +0 -1
- package/dist/features/ppt/utils.js +0 -1
- package/dist/lib/server/routes/claudeProxyRoutes.js +45 -9
- package/dist/mcp/elicitationProtocol.js +1 -1
- package/dist/mcp/servers/agent/directToolsServer.js +0 -1
- package/dist/providers/azureOpenai.js +1 -1
- package/dist/providers/huggingFace.js +0 -1
- package/dist/providers/openaiCompatible.js +0 -1
- package/dist/sdk/toolRegistration.js +0 -1
- package/dist/server/openapi/generator.js +1 -1
- package/dist/server/routes/claudeProxyRoutes.js +45 -9
- package/dist/types/configTypes.js +0 -5
- package/dist/types/modelTypes.js +0 -1
- package/dist/types/tools.js +0 -1
- package/dist/types/typeAliases.js +0 -1
- package/dist/types/utilities.js +1 -1
- package/dist/types/workflowTypes.js +0 -1
- package/dist/utils/providerRetry.js +0 -1
- package/dist/utils/providerUtils.js +0 -1
- package/package.json +2 -2
- package/dist/client/adapters/providerImageAdapter.js +0 -588
- package/dist/client/adapters/tts/googleTTSHandler.js +0 -344
- package/dist/client/adapters/video/directorPipeline.js +0 -516
- package/dist/client/adapters/video/ffmpegAdapter.js +0 -206
- package/dist/client/adapters/video/frameExtractor.js +0 -143
- package/dist/client/adapters/video/vertexVideoHandler.js +0 -763
- package/dist/client/adapters/video/videoAnalyzer.js +0 -238
- package/dist/client/adapters/video/videoMerger.js +0 -171
- package/dist/client/agent/directTools.js +0 -840
- package/dist/client/auth/AuthProviderFactory.js +0 -111
- package/dist/client/auth/AuthProviderRegistry.js +0 -190
- package/dist/client/auth/RequestContext.js +0 -78
- package/dist/client/auth/accountPool.js +0 -178
- package/dist/client/auth/anthropicOAuth.js +0 -974
- package/dist/client/auth/authContext.js +0 -314
- package/dist/client/auth/errors.js +0 -39
- package/dist/client/auth/index.js +0 -61
- package/dist/client/auth/middleware/AuthMiddleware.js +0 -519
- package/dist/client/auth/middleware/rateLimitByUser.js +0 -554
- package/dist/client/auth/providers/BaseAuthProvider.js +0 -723
- package/dist/client/auth/providers/CognitoProvider.js +0 -304
- package/dist/client/auth/providers/KeycloakProvider.js +0 -393
- package/dist/client/auth/providers/auth0.js +0 -274
- package/dist/client/auth/providers/betterAuth.js +0 -182
- package/dist/client/auth/providers/clerk.js +0 -317
- package/dist/client/auth/providers/custom.js +0 -112
- package/dist/client/auth/providers/firebase.js +0 -226
- package/dist/client/auth/providers/jwt.js +0 -212
- package/dist/client/auth/providers/oauth2.js +0 -303
- package/dist/client/auth/providers/supabase.js +0 -259
- package/dist/client/auth/providers/workos.js +0 -284
- package/dist/client/auth/serverBridge.js +0 -25
- package/dist/client/auth/sessionManager.js +0 -437
- package/dist/client/auth/tokenStore.js +0 -799
- package/dist/client/client/aiSdkAdapter.js +0 -487
- package/dist/client/client/auth.js +0 -473
- package/dist/client/client/errors.js +0 -552
- package/dist/client/client/httpClient.js +0 -837
- package/dist/client/client/index.js +0 -172
- package/dist/client/client/interceptors.js +0 -601
- package/dist/client/client/sseClient.js +0 -545
- package/dist/client/client/streamingClient.js +0 -917
- package/dist/client/client/wsClient.js +0 -369
- package/dist/client/config/configManager.js +0 -303
- package/dist/client/config/conversationMemory.js +0 -86
- package/dist/client/config/taskClassificationConfig.js +0 -148
- package/dist/client/constants/contextWindows.js +0 -295
- package/dist/client/constants/enums.js +0 -853
- package/dist/client/constants/index.js +0 -207
- package/dist/client/constants/performance.js +0 -389
- package/dist/client/constants/retry.js +0 -266
- package/dist/client/constants/timeouts.js +0 -182
- package/dist/client/constants/tokens.js +0 -380
- package/dist/client/constants/videoErrors.js +0 -46
- package/dist/client/context/budgetChecker.js +0 -98
- package/dist/client/context/contextCompactor.js +0 -205
- package/dist/client/context/emergencyTruncation.js +0 -88
- package/dist/client/context/errorDetection.js +0 -171
- package/dist/client/context/errors.js +0 -21
- package/dist/client/context/fileTokenBudget.js +0 -127
- package/dist/client/context/prompts/summarizationPrompt.js +0 -117
- package/dist/client/context/stages/fileReadDeduplicator.js +0 -66
- package/dist/client/context/stages/slidingWindowTruncator.js +0 -190
- package/dist/client/context/stages/structuredSummarizer.js +0 -99
- package/dist/client/context/stages/toolOutputPruner.js +0 -52
- package/dist/client/context/summarizationEngine.js +0 -136
- package/dist/client/context/toolOutputLimits.js +0 -78
- package/dist/client/context/toolPairRepair.js +0 -66
- package/dist/client/core/analytics.js +0 -88
- package/dist/client/core/baseProvider.js +0 -1385
- package/dist/client/core/constants.js +0 -140
- package/dist/client/core/conversationMemoryFactory.js +0 -141
- package/dist/client/core/conversationMemoryInitializer.js +0 -128
- package/dist/client/core/conversationMemoryManager.js +0 -344
- package/dist/client/core/dynamicModels.js +0 -358
- package/dist/client/core/evaluation.js +0 -309
- package/dist/client/core/evaluationProviders.js +0 -248
- package/dist/client/core/factory.js +0 -412
- package/dist/client/core/infrastructure/baseError.js +0 -22
- package/dist/client/core/infrastructure/baseFactory.js +0 -54
- package/dist/client/core/infrastructure/baseRegistry.js +0 -53
- package/dist/client/core/infrastructure/index.js +0 -5
- package/dist/client/core/infrastructure/retry.js +0 -20
- package/dist/client/core/infrastructure/typedEventEmitter.js +0 -23
- package/dist/client/core/modelConfiguration.js +0 -851
- package/dist/client/core/modules/GenerationHandler.js +0 -588
- package/dist/client/core/modules/MessageBuilder.js +0 -273
- package/dist/client/core/modules/StreamHandler.js +0 -185
- package/dist/client/core/modules/TelemetryHandler.js +0 -203
- package/dist/client/core/modules/ToolsManager.js +0 -499
- package/dist/client/core/modules/Utilities.js +0 -331
- package/dist/client/core/redisConversationMemoryManager.js +0 -1435
- package/dist/client/core/streamAnalytics.js +0 -131
- package/dist/client/evaluation/contextBuilder.js +0 -134
- package/dist/client/evaluation/index.js +0 -61
- package/dist/client/evaluation/prompts.js +0 -73
- package/dist/client/evaluation/ragasEvaluator.js +0 -110
- package/dist/client/evaluation/retryManager.js +0 -78
- package/dist/client/evaluation/scoring.js +0 -61
- package/dist/client/factories/providerFactory.js +0 -166
- package/dist/client/factories/providerRegistry.js +0 -166
- package/dist/client/features/ppt/constants.js +0 -896
- package/dist/client/features/ppt/contentPlanner.js +0 -529
- package/dist/client/features/ppt/presentationOrchestrator.js +0 -236
- package/dist/client/features/ppt/slideGenerator.js +0 -532
- package/dist/client/features/ppt/slideRenderers.js +0 -2383
- package/dist/client/features/ppt/slideTypeInference.js +0 -405
- package/dist/client/features/ppt/types.js +0 -13
- package/dist/client/features/ppt/utils.js +0 -443
- package/dist/client/files/fileReferenceRegistry.js +0 -1543
- package/dist/client/files/fileTools.js +0 -450
- package/dist/client/files/streamingReader.js +0 -321
- package/dist/client/files/types.js +0 -23
- package/dist/client/hitl/hitlErrors.js +0 -54
- package/dist/client/hitl/hitlManager.js +0 -460
- package/dist/client/mcp/agentExposure.js +0 -356
- package/dist/client/mcp/auth/index.js +0 -11
- package/dist/client/mcp/auth/oauthClientProvider.js +0 -325
- package/dist/client/mcp/auth/tokenStorage.js +0 -134
- package/dist/client/mcp/batching/index.js +0 -10
- package/dist/client/mcp/batching/requestBatcher.js +0 -441
- package/dist/client/mcp/caching/index.js +0 -10
- package/dist/client/mcp/caching/toolCache.js +0 -433
- package/dist/client/mcp/elicitation/elicitationManager.js +0 -376
- package/dist/client/mcp/elicitation/index.js +0 -11
- package/dist/client/mcp/elicitation/types.js +0 -10
- package/dist/client/mcp/elicitationProtocol.js +0 -375
- package/dist/client/mcp/enhancedToolDiscovery.js +0 -481
- package/dist/client/mcp/externalServerManager.js +0 -1478
- package/dist/client/mcp/factory.js +0 -161
- package/dist/client/mcp/flexibleToolValidator.js +0 -161
- package/dist/client/mcp/httpRateLimiter.js +0 -391
- package/dist/client/mcp/httpRetryHandler.js +0 -178
- package/dist/client/mcp/index.js +0 -74
- package/dist/client/mcp/mcpCircuitBreaker.js +0 -427
- package/dist/client/mcp/mcpClientFactory.js +0 -708
- package/dist/client/mcp/mcpRegistryClient.js +0 -488
- package/dist/client/mcp/mcpServerBase.js +0 -373
- package/dist/client/mcp/multiServerManager.js +0 -579
- package/dist/client/mcp/registry.js +0 -158
- package/dist/client/mcp/routing/index.js +0 -10
- package/dist/client/mcp/routing/toolRouter.js +0 -416
- package/dist/client/mcp/serverCapabilities.js +0 -502
- package/dist/client/mcp/servers/agent/directToolsServer.js +0 -150
- package/dist/client/mcp/toolAnnotations.js +0 -239
- package/dist/client/mcp/toolConverter.js +0 -258
- package/dist/client/mcp/toolDiscoveryService.js +0 -798
- package/dist/client/mcp/toolIntegration.js +0 -334
- package/dist/client/mcp/toolRegistry.js +0 -729
- package/dist/client/memory/hippocampusInitializer.js +0 -19
- package/dist/client/memory/memoryRetrievalTools.js +0 -166
- package/dist/client/middleware/builtin/analytics.js +0 -132
- package/dist/client/middleware/builtin/autoEvaluation.js +0 -203
- package/dist/client/middleware/builtin/guardrails.js +0 -109
- package/dist/client/middleware/builtin/lifecycle.js +0 -168
- package/dist/client/middleware/factory.js +0 -327
- package/dist/client/middleware/registry.js +0 -295
- package/dist/client/middleware/utils/guardrailsUtils.js +0 -396
- package/dist/client/models/anthropicModels.js +0 -527
- package/dist/client/neurolink.js +0 -8233
- package/dist/client/observability/exporterRegistry.js +0 -413
- package/dist/client/observability/exporters/arizeExporter.js +0 -138
- package/dist/client/observability/exporters/baseExporter.js +0 -190
- package/dist/client/observability/exporters/braintrustExporter.js +0 -154
- package/dist/client/observability/exporters/datadogExporter.js +0 -196
- package/dist/client/observability/exporters/laminarExporter.js +0 -302
- package/dist/client/observability/exporters/langfuseExporter.js +0 -209
- package/dist/client/observability/exporters/langsmithExporter.js +0 -143
- package/dist/client/observability/exporters/otelExporter.js +0 -164
- package/dist/client/observability/exporters/posthogExporter.js +0 -287
- package/dist/client/observability/exporters/sentryExporter.js +0 -165
- package/dist/client/observability/index.js +0 -31
- package/dist/client/observability/metricsAggregator.js +0 -556
- package/dist/client/observability/otelBridge.js +0 -131
- package/dist/client/observability/retryPolicy.js +0 -383
- package/dist/client/observability/sampling/samplers.js +0 -216
- package/dist/client/observability/spanProcessor.js +0 -303
- package/dist/client/observability/tokenTracker.js +0 -413
- package/dist/client/observability/types/exporterTypes.js +0 -5
- package/dist/client/observability/types/index.js +0 -4
- package/dist/client/observability/types/spanTypes.js +0 -92
- package/dist/client/observability/utils/safeMetadata.js +0 -25
- package/dist/client/observability/utils/spanSerializer.js +0 -292
- package/dist/client/processors/archive/ArchiveProcessor.js +0 -1308
- package/dist/client/processors/base/BaseFileProcessor.js +0 -614
- package/dist/client/processors/base/types.js +0 -82
- package/dist/client/processors/config/fileTypes.js +0 -520
- package/dist/client/processors/config/index.js +0 -92
- package/dist/client/processors/config/languageMap.js +0 -410
- package/dist/client/processors/config/mimeTypes.js +0 -363
- package/dist/client/processors/config/sizeLimits.js +0 -258
- package/dist/client/processors/document/ExcelProcessor.js +0 -590
- package/dist/client/processors/document/OpenDocumentProcessor.js +0 -212
- package/dist/client/processors/document/PptxProcessor.js +0 -157
- package/dist/client/processors/document/RtfProcessor.js +0 -361
- package/dist/client/processors/document/WordProcessor.js +0 -353
- package/dist/client/processors/errors/FileErrorCode.js +0 -255
- package/dist/client/processors/errors/errorHelpers.js +0 -386
- package/dist/client/processors/errors/errorSerializer.js +0 -507
- package/dist/client/processors/errors/index.js +0 -49
- package/dist/client/processors/markup/SvgProcessor.js +0 -240
- package/dist/client/processors/media/AudioProcessor.js +0 -707
- package/dist/client/processors/media/VideoProcessor.js +0 -1045
- package/dist/client/providers/amazonBedrock.js +0 -1512
- package/dist/client/providers/amazonSagemaker.js +0 -162
- package/dist/client/providers/anthropic.js +0 -831
- package/dist/client/providers/azureOpenai.js +0 -143
- package/dist/client/providers/googleAiStudio.js +0 -1200
- package/dist/client/providers/googleNativeGemini3.js +0 -543
- package/dist/client/providers/googleVertex.js +0 -2936
- package/dist/client/providers/huggingFace.js +0 -315
- package/dist/client/providers/litellm.js +0 -488
- package/dist/client/providers/mistral.js +0 -157
- package/dist/client/providers/ollama.js +0 -1579
- package/dist/client/providers/openAI.js +0 -627
- package/dist/client/providers/openRouter.js +0 -543
- package/dist/client/providers/openaiCompatible.js +0 -290
- package/dist/client/providers/providerTypeUtils.js +0 -46
- package/dist/client/providers/sagemaker/adaptive-semaphore.js +0 -215
- package/dist/client/providers/sagemaker/client.js +0 -472
- package/dist/client/providers/sagemaker/config.js +0 -317
- package/dist/client/providers/sagemaker/detection.js +0 -606
- package/dist/client/providers/sagemaker/error-constants.js +0 -227
- package/dist/client/providers/sagemaker/errors.js +0 -299
- package/dist/client/providers/sagemaker/language-model.js +0 -775
- package/dist/client/providers/sagemaker/parsers.js +0 -634
- package/dist/client/providers/sagemaker/streaming.js +0 -331
- package/dist/client/providers/sagemaker/structured-parser.js +0 -625
- package/dist/client/proxy/accountQuota.js +0 -162
- package/dist/client/proxy/claudeFormat.js +0 -595
- package/dist/client/proxy/modelRouter.js +0 -29
- package/dist/client/proxy/oauthFetch.js +0 -367
- package/dist/client/proxy/proxyFetch.js +0 -586
- package/dist/client/proxy/requestLogger.js +0 -207
- package/dist/client/proxy/tokenRefresh.js +0 -124
- package/dist/client/proxy/usageStats.js +0 -74
- package/dist/client/proxy/utils/noProxyUtils.js +0 -149
- package/dist/client/rag/ChunkerFactory.js +0 -320
- package/dist/client/rag/ChunkerRegistry.js +0 -421
- package/dist/client/rag/chunkers/BaseChunker.js +0 -143
- package/dist/client/rag/chunkers/CharacterChunker.js +0 -28
- package/dist/client/rag/chunkers/HTMLChunker.js +0 -38
- package/dist/client/rag/chunkers/JSONChunker.js +0 -68
- package/dist/client/rag/chunkers/LaTeXChunker.js +0 -63
- package/dist/client/rag/chunkers/MarkdownChunker.js +0 -306
- package/dist/client/rag/chunkers/RecursiveChunker.js +0 -139
- package/dist/client/rag/chunkers/SemanticMarkdownChunker.js +0 -138
- package/dist/client/rag/chunkers/SentenceChunker.js +0 -66
- package/dist/client/rag/chunkers/TokenChunker.js +0 -61
- package/dist/client/rag/chunkers/index.js +0 -15
- package/dist/client/rag/chunking/characterChunker.js +0 -142
- package/dist/client/rag/chunking/chunkerRegistry.js +0 -194
- package/dist/client/rag/chunking/htmlChunker.js +0 -247
- package/dist/client/rag/chunking/index.js +0 -17
- package/dist/client/rag/chunking/jsonChunker.js +0 -281
- package/dist/client/rag/chunking/latexChunker.js +0 -251
- package/dist/client/rag/chunking/markdownChunker.js +0 -373
- package/dist/client/rag/chunking/recursiveChunker.js +0 -148
- package/dist/client/rag/chunking/semanticChunker.js +0 -306
- package/dist/client/rag/chunking/sentenceChunker.js +0 -230
- package/dist/client/rag/chunking/tokenChunker.js +0 -183
- package/dist/client/rag/document/MDocument.js +0 -392
- package/dist/client/rag/document/index.js +0 -5
- package/dist/client/rag/document/loaders.js +0 -500
- package/dist/client/rag/errors/RAGError.js +0 -274
- package/dist/client/rag/errors/index.js +0 -6
- package/dist/client/rag/graphRag/graphRAG.js +0 -401
- package/dist/client/rag/graphRag/index.js +0 -4
- package/dist/client/rag/index.js +0 -141
- package/dist/client/rag/metadata/MetadataExtractorFactory.js +0 -418
- package/dist/client/rag/metadata/MetadataExtractorRegistry.js +0 -362
- package/dist/client/rag/metadata/index.js +0 -9
- package/dist/client/rag/metadata/metadataExtractor.js +0 -280
- package/dist/client/rag/pipeline/RAGPipeline.js +0 -436
- package/dist/client/rag/pipeline/contextAssembly.js +0 -341
- package/dist/client/rag/pipeline/index.js +0 -5
- package/dist/client/rag/ragIntegration.js +0 -321
- package/dist/client/rag/reranker/RerankerFactory.js +0 -430
- package/dist/client/rag/reranker/RerankerRegistry.js +0 -402
- package/dist/client/rag/reranker/index.js +0 -9
- package/dist/client/rag/reranker/reranker.js +0 -277
- package/dist/client/rag/resilience/CircuitBreaker.js +0 -431
- package/dist/client/rag/resilience/RetryHandler.js +0 -304
- package/dist/client/rag/resilience/index.js +0 -7
- package/dist/client/rag/retrieval/hybridSearch.js +0 -335
- package/dist/client/rag/retrieval/index.js +0 -5
- package/dist/client/rag/retrieval/vectorQueryTool.js +0 -307
- package/dist/client/rag/types.js +0 -8
- package/dist/client/sdk/toolRegistration.js +0 -377
- package/dist/client/server/abstract/baseServerAdapter.js +0 -575
- package/dist/client/server/adapters/expressAdapter.js +0 -486
- package/dist/client/server/adapters/fastifyAdapter.js +0 -472
- package/dist/client/server/adapters/honoAdapter.js +0 -632
- package/dist/client/server/adapters/koaAdapter.js +0 -510
- package/dist/client/server/errors.js +0 -486
- package/dist/client/server/factory/serverAdapterFactory.js +0 -160
- package/dist/client/server/index.js +0 -108
- package/dist/client/server/middleware/abortSignal.js +0 -111
- package/dist/client/server/middleware/auth.js +0 -388
- package/dist/client/server/middleware/cache.js +0 -359
- package/dist/client/server/middleware/common.js +0 -281
- package/dist/client/server/middleware/deprecation.js +0 -190
- package/dist/client/server/middleware/mcpBodyAttachment.js +0 -63
- package/dist/client/server/middleware/rateLimit.js +0 -227
- package/dist/client/server/middleware/validation.js +0 -388
- package/dist/client/server/openapi/generator.js +0 -398
- package/dist/client/server/openapi/index.js +0 -36
- package/dist/client/server/openapi/schemas.js +0 -695
- package/dist/client/server/openapi/templates.js +0 -374
- package/dist/client/server/routes/agentRoutes.js +0 -189
- package/dist/client/server/routes/claudeProxyRoutes.js +0 -1600
- package/dist/client/server/routes/healthRoutes.js +0 -187
- package/dist/client/server/routes/index.js +0 -57
- package/dist/client/server/routes/mcpRoutes.js +0 -342
- package/dist/client/server/routes/memoryRoutes.js +0 -350
- package/dist/client/server/routes/openApiRoutes.js +0 -126
- package/dist/client/server/routes/toolRoutes.js +0 -199
- package/dist/client/server/streaming/dataStream.js +0 -486
- package/dist/client/server/streaming/index.js +0 -11
- package/dist/client/server/types.js +0 -67
- package/dist/client/server/utils/redaction.js +0 -334
- package/dist/client/server/utils/validation.js +0 -243
- package/dist/client/server/websocket/WebSocketHandler.js +0 -383
- package/dist/client/server/websocket/index.js +0 -4
- package/dist/client/services/server/ai/observability/instrumentation.js +0 -808
- package/dist/client/telemetry/attributes.js +0 -100
- package/dist/client/telemetry/index.js +0 -26
- package/dist/client/telemetry/telemetryService.js +0 -308
- package/dist/client/telemetry/tracers.js +0 -17
- package/dist/client/telemetry/withSpan.js +0 -34
- package/dist/client/types/actionTypes.js +0 -6
- package/dist/client/types/analytics.js +0 -5
- package/dist/client/types/authTypes.js +0 -9
- package/dist/client/types/circuitBreakerErrors.js +0 -34
- package/dist/client/types/cli.js +0 -21
- package/dist/client/types/clientTypes.js +0 -10
- package/dist/client/types/common.js +0 -51
- package/dist/client/types/configTypes.js +0 -49
- package/dist/client/types/content.js +0 -19
- package/dist/client/types/contextTypes.js +0 -400
- package/dist/client/types/conversation.js +0 -47
- package/dist/client/types/conversationMemoryInterface.js +0 -6
- package/dist/client/types/domainTypes.js +0 -5
- package/dist/client/types/errors.js +0 -167
- package/dist/client/types/evaluation.js +0 -5
- package/dist/client/types/evaluationProviders.js +0 -5
- package/dist/client/types/evaluationTypes.js +0 -1
- package/dist/client/types/externalMcp.js +0 -6
- package/dist/client/types/fileReferenceTypes.js +0 -8
- package/dist/client/types/fileTypes.js +0 -4
- package/dist/client/types/generateTypes.js +0 -1
- package/dist/client/types/guardrails.js +0 -1
- package/dist/client/types/hitlTypes.js +0 -8
- package/dist/client/types/index.js +0 -57
- package/dist/client/types/mcpTypes.js +0 -5
- package/dist/client/types/middlewareTypes.js +0 -1
- package/dist/client/types/modelTypes.js +0 -30
- package/dist/client/types/multimodal.js +0 -135
- package/dist/client/types/observability.js +0 -6
- package/dist/client/types/pptTypes.js +0 -82
- package/dist/client/types/providers.js +0 -111
- package/dist/client/types/proxyTypes.js +0 -16
- package/dist/client/types/ragTypes.js +0 -7
- package/dist/client/types/sdkTypes.js +0 -8
- package/dist/client/types/serviceTypes.js +0 -5
- package/dist/client/types/streamTypes.js +0 -1
- package/dist/client/types/subscriptionTypes.js +0 -9
- package/dist/client/types/taskClassificationTypes.js +0 -5
- package/dist/client/types/tools.js +0 -24
- package/dist/client/types/ttsTypes.js +0 -57
- package/dist/client/types/typeAliases.js +0 -48
- package/dist/client/types/utilities.js +0 -4
- package/dist/client/types/workflowTypes.js +0 -30
- package/dist/client/utils/async/withTimeout.js +0 -98
- package/dist/client/utils/asyncMutex.js +0 -60
- package/dist/client/utils/conversationMemory.js +0 -431
- package/dist/client/utils/csvProcessor.js +0 -846
- package/dist/client/utils/errorHandling.js +0 -936
- package/dist/client/utils/evaluationUtils.js +0 -131
- package/dist/client/utils/factoryProcessing.js +0 -589
- package/dist/client/utils/fileDetector.js +0 -2161
- package/dist/client/utils/imageCache.js +0 -376
- package/dist/client/utils/imageProcessor.js +0 -704
- package/dist/client/utils/logger.js +0 -491
- package/dist/client/utils/mcpDefaults.js +0 -134
- package/dist/client/utils/messageBuilder.js +0 -1653
- package/dist/client/utils/modelAliasResolver.js +0 -54
- package/dist/client/utils/modelDetection.js +0 -80
- package/dist/client/utils/modelRouter.js +0 -292
- package/dist/client/utils/multimodalOptionsBuilder.js +0 -65
- package/dist/client/utils/observabilityHelpers.js +0 -47
- package/dist/client/utils/parameterValidation.js +0 -966
- package/dist/client/utils/pdfProcessor.js +0 -410
- package/dist/client/utils/performance.js +0 -222
- package/dist/client/utils/pricing.js +0 -340
- package/dist/client/utils/promptRedaction.js +0 -62
- package/dist/client/utils/providerConfig.js +0 -1009
- package/dist/client/utils/providerHealth.js +0 -1237
- package/dist/client/utils/providerRetry.js +0 -112
- package/dist/client/utils/providerUtils.js +0 -434
- package/dist/client/utils/rateLimiter.js +0 -200
- package/dist/client/utils/redis.js +0 -368
- package/dist/client/utils/retryHandler.js +0 -269
- package/dist/client/utils/retryability.js +0 -22
- package/dist/client/utils/sanitizers/svg.js +0 -481
- package/dist/client/utils/schemaConversion.js +0 -255
- package/dist/client/utils/taskClassificationUtils.js +0 -149
- package/dist/client/utils/taskClassifier.js +0 -94
- package/dist/client/utils/thinkingConfig.js +0 -104
- package/dist/client/utils/timeout.js +0 -359
- package/dist/client/utils/tokenEstimation.js +0 -142
- package/dist/client/utils/tokenLimits.js +0 -125
- package/dist/client/utils/tokenUtils.js +0 -239
- package/dist/client/utils/toolUtils.js +0 -75
- package/dist/client/utils/transformationUtils.js +0 -554
- package/dist/client/utils/ttsProcessor.js +0 -286
- package/dist/client/utils/typeUtils.js +0 -97
- package/dist/client/utils/videoAnalysisProcessor.js +0 -67
- package/dist/client/workflow/config.js +0 -398
- package/dist/client/workflow/core/ensembleExecutor.js +0 -407
- package/dist/client/workflow/core/judgeScorer.js +0 -544
- package/dist/client/workflow/core/responseConditioner.js +0 -225
- package/dist/client/workflow/core/types/conditionerTypes.js +0 -7
- package/dist/client/workflow/core/types/ensembleTypes.js +0 -7
- package/dist/client/workflow/core/types/index.js +0 -7
- package/dist/client/workflow/core/types/judgeTypes.js +0 -7
- package/dist/client/workflow/core/types/layerTypes.js +0 -7
- package/dist/client/workflow/core/types/registryTypes.js +0 -7
- package/dist/client/workflow/core/workflowRegistry.js +0 -304
- package/dist/client/workflow/core/workflowRunner.js +0 -586
- package/dist/client/workflow/index.js +0 -50
- package/dist/client/workflow/types.js +0 -9
- package/dist/client/workflow/utils/types/index.js +0 -7
- package/dist/client/workflow/utils/workflowMetrics.js +0 -311
- package/dist/client/workflow/utils/workflowValidation.js +0 -420
- package/dist/client/workflow/workflows/adaptiveWorkflow.js +0 -366
- package/dist/client/workflow/workflows/consensusWorkflow.js +0 -192
- package/dist/client/workflow/workflows/fallbackWorkflow.js +0 -225
- package/dist/client/workflow/workflows/multiJudgeWorkflow.js +0 -351
- /package/dist/client/{client/reactHooks.js → reactHooks.js} +0 -0
|
@@ -1,315 +0,0 @@
|
|
|
1
|
-
import { createOpenAI } from "@ai-sdk/openai";
|
|
2
|
-
import { NoOutputGeneratedError, stepCountIs, streamText, } from "ai";
|
|
3
|
-
import { BaseProvider } from "../core/baseProvider.js";
|
|
4
|
-
import { logger } from "../utils/logger.js";
|
|
5
|
-
import { composeAbortSignals, createTimeoutController, TimeoutError, } from "../utils/timeout.js";
|
|
6
|
-
import { DEFAULT_MAX_STEPS } from "../core/constants.js";
|
|
7
|
-
import { validateApiKey, createHuggingFaceConfig, getProviderModel, } from "../utils/providerConfig.js";
|
|
8
|
-
import { createProxyFetch } from "../proxy/proxyFetch.js";
|
|
9
|
-
// Configuration helpers - now using consolidated utility
|
|
10
|
-
const getHuggingFaceApiKey = () => {
|
|
11
|
-
return validateApiKey(createHuggingFaceConfig());
|
|
12
|
-
};
|
|
13
|
-
const getDefaultHuggingFaceModel = () => {
|
|
14
|
-
return getProviderModel("HUGGINGFACE_MODEL", "microsoft/DialoGPT-medium");
|
|
15
|
-
};
|
|
16
|
-
// Note: hasHuggingFaceCredentials now directly imported from consolidated utility
|
|
17
|
-
/**
|
|
18
|
-
* HuggingFace Provider - BaseProvider Implementation
|
|
19
|
-
* Using AI SDK with HuggingFace's OpenAI-compatible endpoint
|
|
20
|
-
*/
|
|
21
|
-
export class HuggingFaceProvider extends BaseProvider {
|
|
22
|
-
model;
|
|
23
|
-
constructor(modelName) {
|
|
24
|
-
super(modelName, "huggingface");
|
|
25
|
-
// Get API key and validate
|
|
26
|
-
const apiKey = getHuggingFaceApiKey();
|
|
27
|
-
// Create HuggingFace provider using unified router endpoint (2025) with proxy support
|
|
28
|
-
const huggingface = createOpenAI({
|
|
29
|
-
apiKey: apiKey,
|
|
30
|
-
baseURL: "https://router.huggingface.co/v1",
|
|
31
|
-
fetch: createProxyFetch(),
|
|
32
|
-
});
|
|
33
|
-
// Initialize model
|
|
34
|
-
this.model = huggingface(this.modelName);
|
|
35
|
-
logger.debug("HuggingFaceProvider initialized", {
|
|
36
|
-
model: this.modelName,
|
|
37
|
-
provider: this.providerName,
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
// ===================
|
|
41
|
-
// ABSTRACT METHOD IMPLEMENTATIONS
|
|
42
|
-
// ===================
|
|
43
|
-
/**
|
|
44
|
-
* HuggingFace Tool Calling Support (Enhanced 2025)
|
|
45
|
-
*
|
|
46
|
-
* **Supported Models (Tool Calling Enabled):**
|
|
47
|
-
* - meta-llama/Llama-3.1-8B-Instruct - Post-trained for tool calling
|
|
48
|
-
* - meta-llama/Llama-3.1-70B-Instruct - Advanced tool calling capabilities
|
|
49
|
-
* - meta-llama/Llama-3.1-405B-Instruct - Full tool calling support
|
|
50
|
-
* - nvidia/Llama-3.1-Nemotron-Ultra-253B-v1 - Optimized for tool calling
|
|
51
|
-
* - NousResearch/Hermes-3-Llama-3.2-3B - Function calling trained
|
|
52
|
-
* - codellama/CodeLlama-34b-Instruct-hf - Code-focused tool calling
|
|
53
|
-
* - mistralai/Mistral-7B-Instruct-v0.3 - Basic tool support
|
|
54
|
-
*
|
|
55
|
-
* **Unsupported Models (Tool Calling Disabled):**
|
|
56
|
-
* - microsoft/DialoGPT-* - Treats tools as conversation context
|
|
57
|
-
* - gpt2, bert, roberta variants - No tool calling training
|
|
58
|
-
* - Most pre-2024 models - Limited function calling capabilities
|
|
59
|
-
*
|
|
60
|
-
* **Implementation Details:**
|
|
61
|
-
* - Intelligent model detection based on known capabilities
|
|
62
|
-
* - Custom tool schema formatting for HuggingFace models
|
|
63
|
-
* - Enhanced response parsing for function call extraction
|
|
64
|
-
* - Graceful fallback for unsupported models
|
|
65
|
-
*
|
|
66
|
-
* @returns true for supported models, false for unsupported models
|
|
67
|
-
*/
|
|
68
|
-
supportsTools() {
|
|
69
|
-
const modelName = this.modelName.toLowerCase();
|
|
70
|
-
// Check if model is in the list of known tool-calling capable models
|
|
71
|
-
const toolCapableModels = [
|
|
72
|
-
// Llama 3.1 series (post-trained for tool calling)
|
|
73
|
-
"llama-3.1-8b-instruct",
|
|
74
|
-
"llama-3.1-70b-instruct",
|
|
75
|
-
"llama-3.1-405b-instruct",
|
|
76
|
-
"llama-3.1-nemotron-ultra",
|
|
77
|
-
// Hermes series (function calling trained)
|
|
78
|
-
"hermes-3-llama-3.2",
|
|
79
|
-
"hermes-2-pro",
|
|
80
|
-
// Code Llama (code-focused tool calling)
|
|
81
|
-
"codellama-34b-instruct",
|
|
82
|
-
"codellama-13b-instruct",
|
|
83
|
-
// Mistral series (basic tool support)
|
|
84
|
-
"mistral-7b-instruct-v0.3",
|
|
85
|
-
"mistral-8x7b-instruct",
|
|
86
|
-
// Other known tool-capable models
|
|
87
|
-
"nous-hermes",
|
|
88
|
-
"openchat",
|
|
89
|
-
"wizardcoder",
|
|
90
|
-
];
|
|
91
|
-
// Check if current model matches tool-capable model patterns
|
|
92
|
-
const isToolCapable = toolCapableModels.some((capableModel) => modelName.includes(capableModel));
|
|
93
|
-
if (isToolCapable) {
|
|
94
|
-
logger.debug("HuggingFace tool calling enabled", {
|
|
95
|
-
model: this.modelName,
|
|
96
|
-
reason: "Model supports function calling",
|
|
97
|
-
});
|
|
98
|
-
return true;
|
|
99
|
-
}
|
|
100
|
-
// Log why tools are disabled for transparency
|
|
101
|
-
logger.debug("HuggingFace tool calling disabled", {
|
|
102
|
-
model: this.modelName,
|
|
103
|
-
reason: "Model not in tool-capable list",
|
|
104
|
-
suggestion: "Consider using Llama-3.1-* or Hermes-3-* models for tool calling",
|
|
105
|
-
});
|
|
106
|
-
return false;
|
|
107
|
-
}
|
|
108
|
-
// executeGenerate removed - BaseProvider handles all generation with tools
|
|
109
|
-
async executeStream(options, analysisSchema) {
|
|
110
|
-
this.validateStreamOptions(options);
|
|
111
|
-
const timeout = this.getTimeout(options);
|
|
112
|
-
const timeoutController = createTimeoutController(timeout, this.providerName, "stream");
|
|
113
|
-
try {
|
|
114
|
-
// Get tools - options.tools is pre-merged by BaseProvider.stream()
|
|
115
|
-
const shouldUseTools = !options.disableTools && this.supportsTools();
|
|
116
|
-
const allTools = shouldUseTools
|
|
117
|
-
? options.tools || (await this.getAllTools())
|
|
118
|
-
: {};
|
|
119
|
-
// Enhanced tool handling for HuggingFace models
|
|
120
|
-
const streamOptions = this.prepareStreamOptions(options, analysisSchema);
|
|
121
|
-
// Build message array from options with multimodal support
|
|
122
|
-
// Using protected helper from BaseProvider to eliminate code duplication
|
|
123
|
-
// Pass the enhanced system prompt (with tool-calling instructions) so it
|
|
124
|
-
// actually reaches the model instead of being silently discarded.
|
|
125
|
-
const messagesOptions = streamOptions.system
|
|
126
|
-
? { ...options, systemPrompt: streamOptions.system }
|
|
127
|
-
: options;
|
|
128
|
-
const messages = await this.buildMessagesForStream(messagesOptions);
|
|
129
|
-
const result = await streamText({
|
|
130
|
-
model: this.model,
|
|
131
|
-
messages: messages,
|
|
132
|
-
temperature: options.temperature,
|
|
133
|
-
maxOutputTokens: options.maxTokens, // No default limit - unlimited unless specified
|
|
134
|
-
stopWhen: stepCountIs(options.maxSteps || DEFAULT_MAX_STEPS),
|
|
135
|
-
tools: (shouldUseTools
|
|
136
|
-
? streamOptions.tools || allTools
|
|
137
|
-
: {}),
|
|
138
|
-
toolChoice: (shouldUseTools
|
|
139
|
-
? streamOptions.toolChoice || "auto"
|
|
140
|
-
: "none"),
|
|
141
|
-
abortSignal: composeAbortSignals(options.abortSignal, timeoutController?.controller.signal),
|
|
142
|
-
experimental_telemetry: this.telemetryHandler.getTelemetryConfig(options),
|
|
143
|
-
onStepFinish: ({ toolCalls, toolResults }) => {
|
|
144
|
-
this.handleToolExecutionStorage(toolCalls, toolResults, options, new Date()).catch((error) => {
|
|
145
|
-
logger.warn("[HuggingFaceProvider] Failed to store tool executions", {
|
|
146
|
-
provider: this.providerName,
|
|
147
|
-
error: error instanceof Error ? error.message : String(error),
|
|
148
|
-
});
|
|
149
|
-
});
|
|
150
|
-
},
|
|
151
|
-
});
|
|
152
|
-
timeoutController?.cleanup();
|
|
153
|
-
// Transform stream to match StreamResult interface with enhanced tool call parsing
|
|
154
|
-
const transformedStream = async function* () {
|
|
155
|
-
try {
|
|
156
|
-
for await (const chunk of result.textStream) {
|
|
157
|
-
yield { content: chunk };
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
catch (streamError) {
|
|
161
|
-
// AI SDK v6 throws NoOutputGeneratedError when the stream produced no output.
|
|
162
|
-
if (NoOutputGeneratedError.isInstance(streamError)) {
|
|
163
|
-
logger.warn("HuggingFace: Stream produced no output (NoOutputGeneratedError)");
|
|
164
|
-
return;
|
|
165
|
-
}
|
|
166
|
-
throw streamError;
|
|
167
|
-
}
|
|
168
|
-
};
|
|
169
|
-
return {
|
|
170
|
-
stream: transformedStream(),
|
|
171
|
-
provider: this.providerName,
|
|
172
|
-
model: this.modelName,
|
|
173
|
-
};
|
|
174
|
-
}
|
|
175
|
-
catch (error) {
|
|
176
|
-
timeoutController?.cleanup();
|
|
177
|
-
throw this.handleProviderError(error);
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* Prepare stream options with HuggingFace-specific enhancements
|
|
182
|
-
* Handles tool calling optimizations and model-specific formatting
|
|
183
|
-
*/
|
|
184
|
-
prepareStreamOptions(options, _analysisSchema) {
|
|
185
|
-
const modelSupportsTools = this.supportsTools();
|
|
186
|
-
// If model doesn't support tools, disable them completely
|
|
187
|
-
if (!modelSupportsTools) {
|
|
188
|
-
return {
|
|
189
|
-
prompt: options.input.text,
|
|
190
|
-
system: options.systemPrompt,
|
|
191
|
-
tools: undefined,
|
|
192
|
-
toolChoice: undefined,
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
// For tool-capable models, enhance the prompt with tool calling instructions
|
|
196
|
-
const enhancedSystemPrompt = this.enhanceSystemPromptForTools(options.systemPrompt, options.tools);
|
|
197
|
-
// Format tools using HuggingFace-compatible schema if tools are provided
|
|
198
|
-
const formattedTools = options.tools
|
|
199
|
-
? this.formatToolsForHuggingFace(options.tools)
|
|
200
|
-
: undefined;
|
|
201
|
-
return {
|
|
202
|
-
prompt: options.input.text,
|
|
203
|
-
system: enhancedSystemPrompt,
|
|
204
|
-
tools: formattedTools,
|
|
205
|
-
toolChoice: formattedTools ? "auto" : undefined,
|
|
206
|
-
};
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* Enhance system prompt with tool calling instructions for HuggingFace models
|
|
210
|
-
* Many HF models benefit from explicit tool calling guidance
|
|
211
|
-
*/
|
|
212
|
-
enhanceSystemPromptForTools(originalSystemPrompt, tools) {
|
|
213
|
-
if (!tools || !this.supportsTools()) {
|
|
214
|
-
return originalSystemPrompt || "";
|
|
215
|
-
}
|
|
216
|
-
const toolInstructions = `
|
|
217
|
-
You have access to function tools. When you need to use a tool to answer the user's request:
|
|
218
|
-
1. Identify the appropriate tool from the available functions
|
|
219
|
-
2. Call the function with the correct parameters in JSON format
|
|
220
|
-
3. Use the function results to provide a comprehensive answer
|
|
221
|
-
|
|
222
|
-
Available tools will be provided in the function calling format. Use them when they can help answer the user's question.
|
|
223
|
-
`;
|
|
224
|
-
return originalSystemPrompt
|
|
225
|
-
? `${originalSystemPrompt}\n\n${toolInstructions}`
|
|
226
|
-
: toolInstructions;
|
|
227
|
-
}
|
|
228
|
-
/**
|
|
229
|
-
* Format tools for HuggingFace model compatibility
|
|
230
|
-
* Some models require specific tool schema formatting
|
|
231
|
-
*/
|
|
232
|
-
formatToolsForHuggingFace(tools) {
|
|
233
|
-
// For now, pass through tools as-is since we're using OpenAI-compatible endpoint
|
|
234
|
-
// Future enhancement: Add model-specific tool formatting if needed
|
|
235
|
-
return tools;
|
|
236
|
-
}
|
|
237
|
-
/**
|
|
238
|
-
* Get recommendations for tool-calling capable HuggingFace models
|
|
239
|
-
* Provides guidance for users who want to use function calling
|
|
240
|
-
*/
|
|
241
|
-
static getToolCallingRecommendations() {
|
|
242
|
-
return {
|
|
243
|
-
recommended: [
|
|
244
|
-
"meta-llama/Llama-3.1-8B-Instruct",
|
|
245
|
-
"meta-llama/Llama-3.1-70B-Instruct",
|
|
246
|
-
"nvidia/Llama-3.1-Nemotron-Ultra-253B-v1",
|
|
247
|
-
"NousResearch/Hermes-3-Llama-3.2-3B",
|
|
248
|
-
"codellama/CodeLlama-34b-Instruct-hf",
|
|
249
|
-
],
|
|
250
|
-
performance: {
|
|
251
|
-
"meta-llama/Llama-3.1-8B-Instruct": { speed: 3, quality: 2, cost: 3 },
|
|
252
|
-
"meta-llama/Llama-3.1-70B-Instruct": { speed: 2, quality: 3, cost: 2 },
|
|
253
|
-
"nvidia/Llama-3.1-Nemotron-Ultra-253B-v1": {
|
|
254
|
-
speed: 2,
|
|
255
|
-
quality: 3,
|
|
256
|
-
cost: 1,
|
|
257
|
-
},
|
|
258
|
-
"NousResearch/Hermes-3-Llama-3.2-3B": { speed: 3, quality: 2, cost: 3 },
|
|
259
|
-
"codellama/CodeLlama-34b-Instruct-hf": {
|
|
260
|
-
speed: 2,
|
|
261
|
-
quality: 3,
|
|
262
|
-
cost: 2,
|
|
263
|
-
},
|
|
264
|
-
},
|
|
265
|
-
notes: {
|
|
266
|
-
"meta-llama/Llama-3.1-8B-Instruct": "Best balance of speed and tool calling capability",
|
|
267
|
-
"meta-llama/Llama-3.1-70B-Instruct": "High-quality tool calling, slower inference",
|
|
268
|
-
"nvidia/Llama-3.1-Nemotron-Ultra-253B-v1": "Optimized for tool calling, requires more resources",
|
|
269
|
-
"NousResearch/Hermes-3-Llama-3.2-3B": "Lightweight with good tool calling support",
|
|
270
|
-
"codellama/CodeLlama-34b-Instruct-hf": "Excellent for code-related tool calling",
|
|
271
|
-
},
|
|
272
|
-
};
|
|
273
|
-
}
|
|
274
|
-
/**
|
|
275
|
-
* Enhanced error handling with HuggingFace-specific guidance
|
|
276
|
-
*/
|
|
277
|
-
formatProviderError(error) {
|
|
278
|
-
if (error instanceof TimeoutError) {
|
|
279
|
-
return new Error(`HuggingFace request timed out: ${error.message}`);
|
|
280
|
-
}
|
|
281
|
-
const errorObj = error;
|
|
282
|
-
const message = errorObj?.message && typeof errorObj.message === "string"
|
|
283
|
-
? errorObj.message
|
|
284
|
-
: "Unknown error";
|
|
285
|
-
// Enhanced error messages with tool calling context
|
|
286
|
-
if (message.includes("API_TOKEN_INVALID") ||
|
|
287
|
-
message.includes("Invalid token")) {
|
|
288
|
-
return new Error("❌ Invalid HuggingFace API token. Please check your HUGGINGFACE_API_KEY environment variable.");
|
|
289
|
-
}
|
|
290
|
-
if (message.includes("rate limit")) {
|
|
291
|
-
return new Error("❌ HuggingFace rate limit exceeded. Consider using a paid plan or try again later.");
|
|
292
|
-
}
|
|
293
|
-
if (message.includes("model") && message.includes("not found")) {
|
|
294
|
-
return new Error(`❌ HuggingFace model '${this.modelName}' not found.\n\nSuggestions:\n1. Check model name spelling\n2. Ensure model exists on HuggingFace Hub\n3. For tool calling, use: Llama-3.1-8B-Instruct, Hermes-3-Llama-3.2-3B, or CodeLlama-34b-Instruct-hf`);
|
|
295
|
-
}
|
|
296
|
-
if (message.includes("function") || message.includes("tool")) {
|
|
297
|
-
return new Error(`❌ HuggingFace tool calling error: ${message}\n\nNotes:\n1. Ensure you're using a tool-capable model (Llama-3.1+, Hermes-3+, CodeLlama)\n2. Check that your model supports function calling\n3. Verify tool schema format is correct`);
|
|
298
|
-
}
|
|
299
|
-
return new Error(`❌ HuggingFace Provider Error: ${message}`);
|
|
300
|
-
}
|
|
301
|
-
getProviderName() {
|
|
302
|
-
return "huggingface";
|
|
303
|
-
}
|
|
304
|
-
getDefaultModel() {
|
|
305
|
-
return getDefaultHuggingFaceModel();
|
|
306
|
-
}
|
|
307
|
-
/**
|
|
308
|
-
* Returns the Vercel AI SDK model instance for HuggingFace
|
|
309
|
-
*/
|
|
310
|
-
getAISDKModel() {
|
|
311
|
-
return this.model;
|
|
312
|
-
}
|
|
313
|
-
}
|
|
314
|
-
// Export for factory registration
|
|
315
|
-
export default HuggingFaceProvider;
|