@juspay/neurolink 7.50.0 → 7.51.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 +9 -0
- package/README.md +12 -9
- package/dist/adapters/providerImageAdapter.js +82 -10
- package/dist/agent/directTools.d.ts +10 -10
- package/dist/agent/directTools.js +5 -3
- package/dist/cli/commands/config.js +1 -0
- package/dist/cli/commands/mcp.js +1 -0
- package/dist/cli/commands/models.js +1 -0
- package/dist/cli/commands/ollama.js +1 -0
- package/dist/cli/commands/setup-anthropic.js +1 -0
- package/dist/cli/commands/setup-azure.js +1 -0
- package/dist/cli/commands/setup-bedrock.js +1 -0
- package/dist/cli/commands/setup-gcp.js +1 -0
- package/dist/cli/commands/setup-google-ai.js +1 -0
- package/dist/cli/commands/setup-huggingface.js +1 -0
- package/dist/cli/commands/setup-mistral.js +1 -0
- package/dist/cli/commands/setup-openai.js +1 -0
- package/dist/cli/commands/setup.js +1 -0
- package/dist/cli/errorHandler.js +1 -0
- package/dist/cli/factories/commandFactory.d.ts +1 -0
- package/dist/cli/factories/commandFactory.js +23 -6
- package/dist/cli/factories/ollamaCommandFactory.js +1 -0
- package/dist/cli/factories/sagemakerCommandFactory.js +1 -0
- package/dist/cli/factories/setupCommandFactory.js +1 -0
- package/dist/cli/index.js +1 -0
- package/dist/cli/loop/conversationSelector.js +1 -0
- package/dist/cli/loop/optionsSchema.js +1 -0
- package/dist/cli/loop/session.js +1 -0
- package/dist/cli/parser.js +1 -0
- package/dist/cli/utils/completeSetup.js +1 -0
- package/dist/cli/utils/envManager.js +1 -0
- package/dist/cli/utils/interactiveSetup.js +1 -0
- package/dist/cli/utils/ollamaUtils.js +1 -0
- package/dist/constants/index.js +1 -1
- package/dist/core/baseProvider.d.ts +5 -0
- package/dist/core/baseProvider.js +70 -20
- package/dist/index.d.ts +3 -3
- package/dist/lib/adapters/providerImageAdapter.js +83 -10
- package/dist/lib/agent/directTools.d.ts +10 -10
- package/dist/lib/agent/directTools.js +6 -3
- package/dist/lib/config/configManager.js +1 -0
- package/dist/lib/config/conversationMemory.js +1 -0
- package/dist/lib/config/taskClassificationConfig.js +1 -0
- package/dist/lib/constants/index.js +2 -1
- package/dist/lib/constants/performance.js +1 -0
- package/dist/lib/constants/retry.js +1 -0
- package/dist/lib/constants/timeouts.js +1 -0
- package/dist/lib/constants/tokens.js +1 -0
- package/dist/lib/core/analytics.js +1 -0
- package/dist/lib/core/baseProvider.d.ts +5 -0
- package/dist/lib/core/baseProvider.js +71 -20
- package/dist/lib/core/constants.js +1 -0
- package/dist/lib/core/conversationMemoryFactory.js +1 -0
- package/dist/lib/core/conversationMemoryInitializer.js +1 -0
- package/dist/lib/core/conversationMemoryManager.js +1 -0
- package/dist/lib/core/dynamicModels.js +1 -0
- package/dist/lib/core/evaluation.js +1 -0
- package/dist/lib/core/evaluationProviders.js +1 -0
- package/dist/lib/core/factory.js +1 -0
- package/dist/lib/core/modelConfiguration.js +1 -0
- package/dist/lib/core/redisConversationMemoryManager.js +1 -0
- package/dist/lib/core/serviceRegistry.js +1 -0
- package/dist/lib/core/streamAnalytics.js +1 -0
- package/dist/lib/evaluation/contextBuilder.js +1 -0
- package/dist/lib/evaluation/index.js +1 -0
- package/dist/lib/evaluation/prompts.js +1 -0
- package/dist/lib/evaluation/ragasEvaluator.js +1 -0
- package/dist/lib/evaluation/retryManager.js +1 -0
- package/dist/lib/evaluation/scoring.js +1 -0
- package/dist/lib/factories/providerFactory.js +1 -0
- package/dist/lib/factories/providerRegistry.js +1 -0
- package/dist/lib/hitl/hitlErrors.js +1 -0
- package/dist/lib/hitl/hitlManager.js +1 -0
- package/dist/lib/hitl/index.js +1 -0
- package/dist/lib/hitl/types.js +1 -0
- package/dist/lib/index.d.ts +3 -3
- package/dist/lib/index.js +1 -0
- package/dist/lib/mcp/externalServerManager.js +1 -0
- package/dist/lib/mcp/factory.js +1 -0
- package/dist/lib/mcp/flexibleToolValidator.js +1 -0
- package/dist/lib/mcp/index.js +1 -0
- package/dist/lib/mcp/mcpCircuitBreaker.js +1 -0
- package/dist/lib/mcp/mcpClientFactory.js +2 -1
- package/dist/lib/mcp/registry.js +1 -0
- package/dist/lib/mcp/servers/agent/directToolsServer.js +2 -0
- package/dist/lib/mcp/servers/aiProviders/aiAnalysisTools.js +1 -0
- package/dist/lib/mcp/servers/aiProviders/aiCoreServer.js +1 -0
- package/dist/lib/mcp/servers/aiProviders/aiWorkflowTools.js +1 -0
- package/dist/lib/mcp/servers/utilities/utilityServer.js +1 -0
- package/dist/lib/mcp/toolDiscoveryService.js +1 -0
- package/dist/lib/mcp/toolRegistry.js +1 -0
- package/dist/lib/memory/mem0Initializer.js +1 -0
- package/dist/lib/middleware/builtin/analytics.js +1 -0
- package/dist/lib/middleware/builtin/autoEvaluation.js +1 -0
- package/dist/lib/middleware/builtin/guardrails.js +1 -0
- package/dist/lib/middleware/factory.js +1 -0
- package/dist/lib/middleware/index.js +1 -0
- package/dist/lib/middleware/registry.js +1 -0
- package/dist/lib/middleware/utils/guardrailsUtils.js +1 -0
- package/dist/lib/models/modelRegistry.js +1 -0
- package/dist/lib/models/modelResolver.js +2 -0
- package/dist/lib/neurolink.d.ts +6 -0
- package/dist/lib/neurolink.js +135 -5
- package/dist/lib/providers/amazonBedrock.d.ts +1 -0
- package/dist/lib/providers/amazonBedrock.js +166 -14
- package/dist/lib/providers/amazonSagemaker.js +1 -0
- package/dist/lib/providers/anthropic.js +7 -21
- package/dist/lib/providers/anthropicBaseProvider.js +1 -0
- package/dist/lib/providers/azureOpenai.js +5 -21
- package/dist/lib/providers/googleAiStudio.js +5 -21
- package/dist/lib/providers/googleVertex.js +8 -1
- package/dist/lib/providers/huggingFace.js +34 -3
- package/dist/lib/providers/index.js +1 -0
- package/dist/lib/providers/litellm.js +34 -3
- package/dist/lib/providers/mistral.js +32 -2
- package/dist/lib/providers/ollama.d.ts +37 -1
- package/dist/lib/providers/ollama.js +544 -58
- package/dist/lib/providers/openAI.js +5 -21
- package/dist/lib/providers/openaiCompatible.js +41 -4
- package/dist/lib/providers/sagemaker/adaptive-semaphore.js +1 -0
- package/dist/lib/providers/sagemaker/client.js +1 -0
- package/dist/lib/providers/sagemaker/config.js +1 -0
- package/dist/lib/providers/sagemaker/detection.js +1 -0
- package/dist/lib/providers/sagemaker/diagnostics.js +1 -0
- package/dist/lib/providers/sagemaker/error-constants.js +1 -0
- package/dist/lib/providers/sagemaker/errors.js +1 -0
- package/dist/lib/providers/sagemaker/index.js +1 -0
- package/dist/lib/providers/sagemaker/language-model.js +1 -0
- package/dist/lib/providers/sagemaker/parsers.js +1 -0
- package/dist/lib/providers/sagemaker/streaming.js +1 -0
- package/dist/lib/providers/sagemaker/structured-parser.js +1 -0
- package/dist/lib/proxy/awsProxyIntegration.js +1 -0
- package/dist/lib/proxy/proxyFetch.js +1 -0
- package/dist/lib/proxy/utils/noProxyUtils.js +1 -0
- package/dist/lib/sdk/toolRegistration.js +2 -0
- package/dist/lib/services/server/ai/observability/instrumentation.js +1 -0
- package/dist/lib/session/globalSessionState.js +1 -0
- package/dist/lib/telemetry/index.js +1 -0
- package/dist/lib/telemetry/telemetryService.js +1 -0
- package/dist/lib/types/analytics.js +1 -0
- package/dist/lib/types/cli.js +1 -0
- package/dist/lib/types/common.js +1 -0
- package/dist/lib/types/configTypes.js +1 -0
- package/dist/lib/types/content.d.ts +14 -1
- package/dist/lib/types/content.js +1 -0
- package/dist/lib/types/contextTypes.js +1 -0
- package/dist/lib/types/conversation.js +1 -0
- package/dist/lib/types/domainTypes.js +1 -0
- package/dist/lib/types/errors.js +1 -0
- package/dist/lib/types/evaluation.js +1 -0
- package/dist/lib/types/evaluationProviders.js +1 -0
- package/dist/lib/types/evaluationTypes.js +1 -0
- package/dist/lib/types/externalMcp.js +1 -0
- package/dist/lib/types/fileTypes.d.ts +44 -0
- package/dist/lib/types/fileTypes.js +1 -0
- package/dist/lib/types/generateTypes.d.ts +1 -0
- package/dist/lib/types/generateTypes.js +1 -0
- package/dist/lib/types/guardrails.js +1 -0
- package/dist/lib/types/index.js +1 -0
- package/dist/lib/types/mcpTypes.js +1 -0
- package/dist/lib/types/middlewareTypes.js +1 -0
- package/dist/lib/types/modelTypes.js +1 -0
- package/dist/lib/types/observability.js +1 -0
- package/dist/lib/types/providers.d.ts +44 -0
- package/dist/lib/types/providers.js +1 -0
- package/dist/lib/types/sdkTypes.js +1 -0
- package/dist/lib/types/serviceTypes.js +1 -0
- package/dist/lib/types/streamTypes.d.ts +1 -0
- package/dist/lib/types/streamTypes.js +1 -0
- package/dist/lib/types/taskClassificationTypes.js +1 -0
- package/dist/lib/types/tools.js +2 -0
- package/dist/lib/types/typeAliases.js +1 -0
- package/dist/lib/types/universalProviderOptions.js +1 -0
- package/dist/lib/utils/analyticsUtils.js +1 -0
- package/dist/lib/utils/conversationMemory.js +1 -0
- package/dist/lib/utils/conversationMemoryUtils.js +1 -0
- package/dist/lib/utils/csvProcessor.js +1 -0
- package/dist/lib/utils/errorHandling.js +1 -0
- package/dist/lib/utils/evaluationUtils.js +1 -0
- package/dist/lib/utils/factoryProcessing.js +1 -0
- package/dist/lib/utils/fileDetector.js +7 -3
- package/dist/lib/utils/imageProcessor.js +1 -0
- package/dist/lib/utils/logger.js +1 -0
- package/dist/lib/utils/loopUtils.js +1 -0
- package/dist/lib/utils/mcpDefaults.js +1 -0
- package/dist/lib/utils/messageBuilder.js +96 -9
- package/dist/lib/utils/modelRouter.js +1 -0
- package/dist/lib/utils/multimodalOptionsBuilder.d.ts +67 -0
- package/dist/lib/utils/multimodalOptionsBuilder.js +65 -0
- package/dist/lib/utils/optionsConversion.js +1 -0
- package/dist/lib/utils/optionsUtils.js +1 -0
- package/dist/lib/utils/parameterValidation.js +1 -0
- package/dist/lib/utils/pdfProcessor.d.ts +10 -0
- package/dist/lib/utils/pdfProcessor.js +199 -0
- package/dist/lib/utils/performance.js +1 -0
- package/dist/lib/utils/promptRedaction.js +1 -0
- package/dist/lib/utils/providerConfig.js +1 -0
- package/dist/lib/utils/providerHealth.js +1 -0
- package/dist/lib/utils/providerSetupMessages.js +1 -0
- package/dist/lib/utils/providerUtils.js +1 -0
- package/dist/lib/utils/redis.js +1 -0
- package/dist/lib/utils/retryHandler.js +1 -0
- package/dist/lib/utils/schemaConversion.js +1 -0
- package/dist/lib/utils/taskClassificationUtils.js +1 -0
- package/dist/lib/utils/taskClassifier.js +1 -0
- package/dist/lib/utils/timeout.js +1 -0
- package/dist/lib/utils/tokenLimits.js +1 -0
- package/dist/lib/utils/toolUtils.js +1 -0
- package/dist/lib/utils/transformationUtils.js +1 -0
- package/dist/lib/utils/typeUtils.js +1 -0
- package/dist/mcp/mcpClientFactory.js +1 -1
- package/dist/mcp/servers/agent/directToolsServer.js +1 -0
- package/dist/models/modelResolver.js +1 -0
- package/dist/neurolink.d.ts +6 -0
- package/dist/neurolink.js +134 -5
- package/dist/providers/amazonBedrock.d.ts +1 -0
- package/dist/providers/amazonBedrock.js +165 -14
- package/dist/providers/anthropic.js +6 -21
- package/dist/providers/azureOpenai.js +4 -21
- package/dist/providers/googleAiStudio.js +4 -21
- package/dist/providers/googleVertex.js +7 -1
- package/dist/providers/huggingFace.js +33 -3
- package/dist/providers/litellm.js +33 -3
- package/dist/providers/mistral.js +31 -2
- package/dist/providers/ollama.d.ts +37 -1
- package/dist/providers/ollama.js +543 -58
- package/dist/providers/openAI.js +4 -21
- package/dist/providers/openaiCompatible.js +40 -4
- package/dist/sdk/toolRegistration.js +1 -0
- package/dist/types/content.d.ts +14 -1
- package/dist/types/fileTypes.d.ts +44 -0
- package/dist/types/generateTypes.d.ts +1 -0
- package/dist/types/providers.d.ts +44 -0
- package/dist/types/streamTypes.d.ts +1 -0
- package/dist/types/tools.js +1 -0
- package/dist/utils/fileDetector.js +6 -3
- package/dist/utils/messageBuilder.js +95 -9
- package/dist/utils/multimodalOptionsBuilder.d.ts +67 -0
- package/dist/utils/multimodalOptionsBuilder.js +64 -0
- package/dist/utils/pdfProcessor.d.ts +10 -0
- package/dist/utils/pdfProcessor.js +198 -0
- package/package.json +11 -20
|
@@ -9,6 +9,7 @@ import { DEFAULT_MAX_STEPS } from "../core/constants.js";
|
|
|
9
9
|
import { validateApiKey, createOpenAIConfig, getProviderModel, } from "../utils/providerConfig.js";
|
|
10
10
|
import { streamAnalyticsCollector } from "../core/streamAnalytics.js";
|
|
11
11
|
import { buildMessagesArray, buildMultimodalMessagesArray, convertToCoreMessages, } from "../utils/messageBuilder.js";
|
|
12
|
+
import { buildMultimodalOptions } from "../utils/multimodalOptionsBuilder.js";
|
|
12
13
|
import { createProxyFetch } from "../proxy/proxyFetch.js";
|
|
13
14
|
import { isZodSchema } from "../utils/schemaConversion.js";
|
|
14
15
|
// Configuration helpers - now using consolidated utility
|
|
@@ -248,7 +249,8 @@ export class OpenAIProvider extends BaseProvider {
|
|
|
248
249
|
const hasMultimodalInput = !!(options.input?.images?.length ||
|
|
249
250
|
options.input?.content?.length ||
|
|
250
251
|
options.input?.files?.length ||
|
|
251
|
-
options.input?.csvFiles?.length
|
|
252
|
+
options.input?.csvFiles?.length ||
|
|
253
|
+
options.input?.pdfFiles?.length);
|
|
252
254
|
let messages;
|
|
253
255
|
if (hasMultimodalInput) {
|
|
254
256
|
logger.debug(`OpenAI: Detected multimodal input, using multimodal message builder`, {
|
|
@@ -261,26 +263,7 @@ export class OpenAIProvider extends BaseProvider {
|
|
|
261
263
|
hasCSVFiles: !!options.input?.csvFiles?.length,
|
|
262
264
|
csvFileCount: options.input?.csvFiles?.length || 0,
|
|
263
265
|
});
|
|
264
|
-
|
|
265
|
-
const multimodalOptions = {
|
|
266
|
-
input: {
|
|
267
|
-
text: options.input?.text || "",
|
|
268
|
-
images: options.input?.images,
|
|
269
|
-
content: options.input?.content,
|
|
270
|
-
files: options.input?.files,
|
|
271
|
-
csvFiles: options.input?.csvFiles,
|
|
272
|
-
},
|
|
273
|
-
csvOptions: options.csvOptions,
|
|
274
|
-
systemPrompt: options.systemPrompt,
|
|
275
|
-
conversationHistory: options.conversationMessages,
|
|
276
|
-
provider: this.providerName,
|
|
277
|
-
model: this.modelName,
|
|
278
|
-
temperature: options.temperature,
|
|
279
|
-
maxTokens: options.maxTokens,
|
|
280
|
-
enableAnalytics: options.enableAnalytics,
|
|
281
|
-
enableEvaluation: options.enableEvaluation,
|
|
282
|
-
context: options.context,
|
|
283
|
-
};
|
|
266
|
+
const multimodalOptions = buildMultimodalOptions(options, this.providerName, this.modelName);
|
|
284
267
|
const mm = await buildMultimodalMessagesArray(multimodalOptions, this.providerName, this.modelName);
|
|
285
268
|
// Convert multimodal messages to Vercel AI SDK format (CoreMessage[])
|
|
286
269
|
messages = convertToCoreMessages(mm);
|
|
@@ -492,3 +475,4 @@ export class OpenAIProvider extends BaseProvider {
|
|
|
492
475
|
}
|
|
493
476
|
// Export for factory registration
|
|
494
477
|
export default OpenAIProvider;
|
|
478
|
+
//# sourceMappingURL=openAI.js.map
|
|
@@ -5,6 +5,9 @@ import { logger } from "../utils/logger.js";
|
|
|
5
5
|
import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
|
|
6
6
|
import { streamAnalyticsCollector } from "../core/streamAnalytics.js";
|
|
7
7
|
import { createProxyFetch } from "../proxy/proxyFetch.js";
|
|
8
|
+
import { DEFAULT_MAX_STEPS } from "../core/constants.js";
|
|
9
|
+
import { buildMessagesArray, buildMultimodalMessagesArray, convertToCoreMessages, } from "../utils/messageBuilder.js";
|
|
10
|
+
import { buildMultimodalOptions } from "../utils/multimodalOptionsBuilder.js";
|
|
8
11
|
// Constants
|
|
9
12
|
const FALLBACK_OPENAI_COMPATIBLE_MODEL = "gpt-3.5-turbo";
|
|
10
13
|
// Configuration helpers
|
|
@@ -157,13 +160,46 @@ export class OpenAICompatibleProvider extends BaseProvider {
|
|
|
157
160
|
const timeout = this.getTimeout(options);
|
|
158
161
|
const timeoutController = createTimeoutController(timeout, this.providerName, "stream");
|
|
159
162
|
try {
|
|
163
|
+
// Check for multimodal input (images, PDFs, CSVs, files)
|
|
164
|
+
const hasMultimodalInput = !!(options.input?.images?.length ||
|
|
165
|
+
options.input?.content?.length ||
|
|
166
|
+
options.input?.files?.length ||
|
|
167
|
+
options.input?.csvFiles?.length ||
|
|
168
|
+
options.input?.pdfFiles?.length);
|
|
169
|
+
let messages;
|
|
170
|
+
if (hasMultimodalInput) {
|
|
171
|
+
logger.debug(`OpenAI Compatible: Detected multimodal input, using multimodal message builder`, {
|
|
172
|
+
hasImages: !!options.input?.images?.length,
|
|
173
|
+
imageCount: options.input?.images?.length || 0,
|
|
174
|
+
hasContent: !!options.input?.content?.length,
|
|
175
|
+
contentCount: options.input?.content?.length || 0,
|
|
176
|
+
hasFiles: !!options.input?.files?.length,
|
|
177
|
+
fileCount: options.input?.files?.length || 0,
|
|
178
|
+
hasCSVFiles: !!options.input?.csvFiles?.length,
|
|
179
|
+
csvFileCount: options.input?.csvFiles?.length || 0,
|
|
180
|
+
hasPDFFiles: !!options.input?.pdfFiles?.length,
|
|
181
|
+
pdfFileCount: options.input?.pdfFiles?.length || 0,
|
|
182
|
+
});
|
|
183
|
+
const multimodalOptions = buildMultimodalOptions(options, this.providerName, this.modelName);
|
|
184
|
+
const mm = await buildMultimodalMessagesArray(multimodalOptions, this.providerName, this.modelName);
|
|
185
|
+
// Convert multimodal messages to Vercel AI SDK format (CoreMessage[])
|
|
186
|
+
messages = convertToCoreMessages(mm);
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
logger.debug(`OpenAI Compatible: Text-only input, using standard message builder`);
|
|
190
|
+
messages = await buildMessagesArray(options);
|
|
191
|
+
}
|
|
160
192
|
const model = await this.getAISDKModelWithMiddleware(options); // This is where network connection happens!
|
|
161
193
|
const result = streamText({
|
|
162
194
|
model,
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
195
|
+
messages: messages,
|
|
196
|
+
...(options.maxTokens !== null && options.maxTokens !== undefined
|
|
197
|
+
? { maxTokens: options.maxTokens }
|
|
198
|
+
: {}),
|
|
199
|
+
...(options.temperature !== null && options.temperature !== undefined
|
|
200
|
+
? { temperature: options.temperature }
|
|
201
|
+
: {}),
|
|
202
|
+
maxSteps: options.maxSteps || DEFAULT_MAX_STEPS,
|
|
167
203
|
tools: options.tools,
|
|
168
204
|
toolChoice: "auto",
|
|
169
205
|
abortSignal: timeoutController?.controller.signal,
|
|
@@ -265,3 +301,4 @@ export class OpenAICompatibleProvider extends BaseProvider {
|
|
|
265
301
|
];
|
|
266
302
|
}
|
|
267
303
|
}
|
|
304
|
+
//# sourceMappingURL=openaiCompatible.js.map
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* NeuroLink SDK Tool Registration API
|
|
3
3
|
* Simple interface for developers to register custom tools
|
|
4
4
|
*/
|
|
5
|
+
import { z } from "zod";
|
|
5
6
|
import { logger } from "../utils/logger.js";
|
|
6
7
|
import { createMCPServerInfo } from "../utils/mcpDefaults.js";
|
|
7
8
|
import { validateToolName, validateToolDescription, } from "../utils/parameterValidation.js";
|
|
@@ -364,3 +365,4 @@ export function suggestToolNames(baseName) {
|
|
|
364
365
|
}
|
|
365
366
|
return suggestions.slice(0, 5); // Limit to 5 suggestions
|
|
366
367
|
}
|
|
368
|
+
//# sourceMappingURL=toolRegistration.js.map
|
package/dist/lib/types/cli.js
CHANGED
package/dist/lib/types/common.js
CHANGED
|
@@ -39,10 +39,23 @@ export type CSVContent = {
|
|
|
39
39
|
description?: string;
|
|
40
40
|
};
|
|
41
41
|
};
|
|
42
|
+
/**
|
|
43
|
+
* PDF document content type for multimodal messages
|
|
44
|
+
*/
|
|
45
|
+
export type PDFContent = {
|
|
46
|
+
type: "pdf";
|
|
47
|
+
data: Buffer | string;
|
|
48
|
+
metadata?: {
|
|
49
|
+
filename?: string;
|
|
50
|
+
pages?: number;
|
|
51
|
+
version?: string;
|
|
52
|
+
description?: string;
|
|
53
|
+
};
|
|
54
|
+
};
|
|
42
55
|
/**
|
|
43
56
|
* Union type for all content types
|
|
44
57
|
*/
|
|
45
|
-
export type Content = TextContent | ImageContent | CSVContent;
|
|
58
|
+
export type Content = TextContent | ImageContent | CSVContent | PDFContent;
|
|
46
59
|
/**
|
|
47
60
|
* Vision capability information for providers
|
|
48
61
|
*/
|
package/dist/lib/types/errors.js
CHANGED
|
@@ -43,6 +43,10 @@ export type FileProcessingResult = {
|
|
|
43
43
|
columnNames?: string[];
|
|
44
44
|
sampleData?: string;
|
|
45
45
|
hasEmptyColumns?: boolean;
|
|
46
|
+
version?: string;
|
|
47
|
+
estimatedPages?: number | null;
|
|
48
|
+
provider?: string;
|
|
49
|
+
apiType?: PDFAPIType;
|
|
46
50
|
};
|
|
47
51
|
};
|
|
48
52
|
/**
|
|
@@ -53,6 +57,29 @@ export type CSVProcessorOptions = {
|
|
|
53
57
|
formatStyle?: "raw" | "markdown" | "json";
|
|
54
58
|
includeHeaders?: boolean;
|
|
55
59
|
};
|
|
60
|
+
/**
|
|
61
|
+
* PDF API types for different providers
|
|
62
|
+
*/
|
|
63
|
+
export type PDFAPIType = "document" | "files-api" | "unsupported";
|
|
64
|
+
/**
|
|
65
|
+
* PDF provider configuration
|
|
66
|
+
*/
|
|
67
|
+
export interface PDFProviderConfig {
|
|
68
|
+
maxSizeMB: number;
|
|
69
|
+
maxPages: number;
|
|
70
|
+
supportsNative: boolean;
|
|
71
|
+
requiresCitations: boolean | "auto";
|
|
72
|
+
apiType: PDFAPIType;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* PDF processor options
|
|
76
|
+
*/
|
|
77
|
+
export type PDFProcessorOptions = {
|
|
78
|
+
provider?: string;
|
|
79
|
+
model?: string;
|
|
80
|
+
maxSizeMB?: number;
|
|
81
|
+
bedrockApiMode?: "converse" | "invokeModel";
|
|
82
|
+
};
|
|
56
83
|
/**
|
|
57
84
|
* File detector options
|
|
58
85
|
*/
|
|
@@ -62,4 +89,21 @@ export type FileDetectorOptions = {
|
|
|
62
89
|
allowedTypes?: FileType[];
|
|
63
90
|
csvOptions?: CSVProcessorOptions;
|
|
64
91
|
confidenceThreshold?: number;
|
|
92
|
+
provider?: string;
|
|
65
93
|
};
|
|
94
|
+
/**
|
|
95
|
+
* Google AI Studio Files API types
|
|
96
|
+
*/
|
|
97
|
+
export interface GoogleFilesAPIUploadResult {
|
|
98
|
+
file: {
|
|
99
|
+
name: string;
|
|
100
|
+
displayName: string;
|
|
101
|
+
mimeType: string;
|
|
102
|
+
sizeBytes: string;
|
|
103
|
+
createTime: string;
|
|
104
|
+
updateTime: string;
|
|
105
|
+
expirationTime: string;
|
|
106
|
+
sha256Hash: string;
|
|
107
|
+
uri: string;
|
|
108
|
+
};
|
|
109
|
+
}
|
package/dist/lib/types/index.js
CHANGED
|
@@ -441,6 +441,19 @@ export type BedrockToolResult = {
|
|
|
441
441
|
*/
|
|
442
442
|
export type BedrockContentBlock = {
|
|
443
443
|
text?: string;
|
|
444
|
+
image?: {
|
|
445
|
+
format: "png" | "jpeg" | "gif" | "webp";
|
|
446
|
+
source: {
|
|
447
|
+
bytes?: Uint8Array | Buffer;
|
|
448
|
+
};
|
|
449
|
+
};
|
|
450
|
+
document?: {
|
|
451
|
+
format: "pdf" | "csv" | "doc" | "docx" | "xls" | "xlsx" | "html" | "txt" | "md";
|
|
452
|
+
name: string;
|
|
453
|
+
source: {
|
|
454
|
+
bytes?: Uint8Array | Buffer;
|
|
455
|
+
};
|
|
456
|
+
};
|
|
444
457
|
toolUse?: BedrockToolUse;
|
|
445
458
|
toolResult?: BedrockToolResult;
|
|
446
459
|
};
|
|
@@ -555,6 +568,37 @@ export type ModelsResponse = {
|
|
|
555
568
|
owned_by?: string;
|
|
556
569
|
}>;
|
|
557
570
|
};
|
|
571
|
+
/**
|
|
572
|
+
* Ollama tool call structure
|
|
573
|
+
*/
|
|
574
|
+
export type OllamaToolCall = {
|
|
575
|
+
id: string;
|
|
576
|
+
type: "function";
|
|
577
|
+
function: {
|
|
578
|
+
name: string;
|
|
579
|
+
arguments: string;
|
|
580
|
+
};
|
|
581
|
+
};
|
|
582
|
+
/**
|
|
583
|
+
* Ollama tool result structure
|
|
584
|
+
*/
|
|
585
|
+
export type OllamaToolResult = {
|
|
586
|
+
tool_call_id: string;
|
|
587
|
+
content: string;
|
|
588
|
+
};
|
|
589
|
+
/**
|
|
590
|
+
* Ollama message structure for conversation and tool execution
|
|
591
|
+
*/
|
|
592
|
+
export type OllamaMessage = {
|
|
593
|
+
role: "system" | "user" | "assistant" | "tool";
|
|
594
|
+
content: string | Array<{
|
|
595
|
+
type: string;
|
|
596
|
+
text?: string;
|
|
597
|
+
[key: string]: unknown;
|
|
598
|
+
}>;
|
|
599
|
+
tool_calls?: OllamaToolCall[];
|
|
600
|
+
images?: string[];
|
|
601
|
+
};
|
|
558
602
|
/**
|
|
559
603
|
* Default model aliases for easy reference
|
|
560
604
|
*/
|
|
@@ -126,6 +126,7 @@ export interface StreamOptions {
|
|
|
126
126
|
audio?: AudioInputSpec;
|
|
127
127
|
images?: Array<Buffer | string>;
|
|
128
128
|
csvFiles?: Array<Buffer | string>;
|
|
129
|
+
pdfFiles?: Array<Buffer | string>;
|
|
129
130
|
files?: Array<Buffer | string>;
|
|
130
131
|
content?: Array<TextContent | ImageContent>;
|
|
131
132
|
};
|
package/dist/lib/types/tools.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Type definitions for NeuroLink tool system, including parameter schemas,
|
|
3
3
|
* argument patterns, execution metadata, context, and result types.
|
|
4
4
|
*/
|
|
5
|
+
import { z } from "zod";
|
|
5
6
|
/**
|
|
6
7
|
* Type guard for tool result
|
|
7
8
|
*/
|
|
@@ -22,3 +23,4 @@ export function isToolDefinition(value) {
|
|
|
22
23
|
typeof value.description === "string" &&
|
|
23
24
|
typeof value.execute === "function");
|
|
24
25
|
}
|
|
26
|
+
//# sourceMappingURL=tools.js.map
|