@n8n/ai-utilities 0.2.1 → 0.4.0
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/README.md +9 -448
- package/dist/{adapters → cjs/adapters}/langchain-chat-model.d.ts +1 -1
- package/dist/cjs/adapters/langchain-chat-model.js +201 -0
- package/dist/cjs/adapters/langchain-chat-model.js.map +1 -0
- package/dist/cjs/adapters/langchain-history.js +37 -0
- package/dist/cjs/adapters/langchain-history.js.map +1 -0
- package/dist/cjs/adapters/langchain-memory.js +46 -0
- package/dist/cjs/adapters/langchain-memory.js.map +1 -0
- package/dist/cjs/ai-node-sdk-version.d.ts +1 -0
- package/dist/cjs/ai-node-sdk-version.js +15 -0
- package/dist/cjs/ai-node-sdk-version.js.map +1 -0
- package/dist/cjs/chat-model/base.js +35 -0
- package/dist/cjs/chat-model/base.js.map +1 -0
- package/dist/{converters → cjs/converters}/message.d.ts +2 -0
- package/dist/cjs/converters/message.js +388 -0
- package/dist/cjs/converters/message.js.map +1 -0
- package/dist/cjs/converters/tool.js +69 -0
- package/dist/cjs/converters/tool.js.map +1 -0
- package/dist/cjs/guards.js +37 -0
- package/dist/cjs/guards.js.map +1 -0
- package/dist/{index.d.ts → cjs/index.d.ts} +7 -5
- package/dist/cjs/index.js +73 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/memory/base-chat-history.js +22 -0
- package/dist/cjs/memory/base-chat-history.js.map +1 -0
- package/dist/cjs/memory/base-chat-memory.js +17 -0
- package/dist/cjs/memory/base-chat-memory.js.map +1 -0
- package/dist/cjs/memory/windowed-chat-memory.js +48 -0
- package/dist/cjs/memory/windowed-chat-memory.js.map +1 -0
- package/dist/cjs/suppliers/supplyMemory.js +24 -0
- package/dist/cjs/suppliers/supplyMemory.js.map +1 -0
- package/dist/cjs/suppliers/supplyModel.d.ts +8 -0
- package/dist/cjs/suppliers/supplyModel.js +89 -0
- package/dist/cjs/suppliers/supplyModel.js.map +1 -0
- package/dist/cjs/typecheck.tsbuildinfo +1 -0
- package/dist/cjs/types/chat-model.js +13 -0
- package/dist/{types → cjs/types}/chat-model.js.map +1 -1
- package/dist/cjs/types/json.js +13 -0
- package/dist/{types → cjs/types}/json.js.map +1 -1
- package/dist/cjs/types/memory.js +13 -0
- package/dist/{types → cjs/types}/memory.js.map +1 -1
- package/dist/{types → cjs/types}/message.d.ts +9 -2
- package/dist/cjs/types/message.js +13 -0
- package/dist/{types → cjs/types}/message.js.map +1 -1
- package/dist/cjs/types/openai.js +13 -0
- package/dist/{types → cjs/types}/openai.js.map +1 -1
- package/dist/{types → cjs/types}/output.d.ts +26 -16
- package/dist/cjs/types/output.js +13 -0
- package/dist/{types → cjs/types}/output.js.map +1 -1
- package/dist/cjs/types/tool.js +13 -0
- package/dist/{types → cjs/types}/tool.js.map +1 -1
- package/dist/cjs/utils/embeddings-input-validation.js +38 -0
- package/dist/cjs/utils/embeddings-input-validation.js.map +1 -0
- package/dist/cjs/utils/failed-attempt-handler/n8nDefaultFailedAttemptHandler.js +40 -0
- package/dist/cjs/utils/failed-attempt-handler/n8nDefaultFailedAttemptHandler.js.map +1 -0
- package/dist/cjs/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.js +38 -0
- package/dist/cjs/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.js.map +1 -0
- package/dist/cjs/utils/helpers.js +63 -0
- package/dist/cjs/utils/helpers.js.map +1 -0
- package/dist/cjs/utils/http-proxy-agent.js +58 -0
- package/dist/cjs/utils/http-proxy-agent.js.map +1 -0
- package/dist/cjs/utils/log-ai-event.js +23 -0
- package/dist/cjs/utils/log-ai-event.js.map +1 -0
- package/dist/cjs/utils/log-wrapper.js +339 -0
- package/dist/cjs/utils/log-wrapper.js.map +1 -0
- package/dist/cjs/utils/n8n-binary-loader.js +169 -0
- package/dist/cjs/utils/n8n-binary-loader.js.map +1 -0
- package/dist/cjs/utils/n8n-json-loader.js +76 -0
- package/dist/cjs/utils/n8n-json-loader.js.map +1 -0
- package/dist/cjs/utils/n8n-llm-tracing.js +167 -0
- package/dist/cjs/utils/n8n-llm-tracing.js.map +1 -0
- package/dist/{utils → cjs/utils}/sse.d.ts +1 -1
- package/dist/cjs/utils/sse.js +107 -0
- package/dist/cjs/utils/sse.js.map +1 -0
- package/dist/cjs/utils/tokenizer/tiktoken.js +50 -0
- package/dist/cjs/utils/tokenizer/tiktoken.js.map +1 -0
- package/dist/cjs/utils/tokenizer/token-estimator.js +108 -0
- package/dist/cjs/utils/tokenizer/token-estimator.js.map +1 -0
- package/dist/esm/adapters/langchain-chat-model.d.ts +20 -0
- package/dist/{adapters → esm/adapters}/langchain-chat-model.js +65 -54
- package/dist/esm/adapters/langchain-chat-model.js.map +1 -0
- package/dist/esm/adapters/langchain-history.d.ts +12 -0
- package/dist/esm/adapters/langchain-history.js.map +1 -0
- package/dist/esm/adapters/langchain-memory.d.ts +11 -0
- package/dist/esm/adapters/langchain-memory.js.map +1 -0
- package/dist/esm/ai-node-sdk-version.d.ts +1 -0
- package/dist/esm/ai-node-sdk-version.js +5 -0
- package/dist/esm/ai-node-sdk-version.js.map +1 -0
- package/dist/esm/chat-model/base.d.ts +15 -0
- package/dist/esm/chat-model/base.js.map +1 -0
- package/dist/esm/converters/message.d.ts +7 -0
- package/dist/{converters → esm/converters}/message.js +41 -28
- package/dist/esm/converters/message.js.map +1 -0
- package/dist/esm/converters/tool.d.ts +5 -0
- package/dist/esm/converters/tool.js.map +1 -0
- package/dist/esm/guards.d.ts +8 -0
- package/dist/esm/guards.js.map +1 -0
- package/dist/esm/index.d.ts +30 -0
- package/dist/{index.js → esm/index.js} +13 -6
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/memory/base-chat-history.d.ts +8 -0
- package/dist/esm/memory/base-chat-history.js.map +1 -0
- package/dist/esm/memory/base-chat-memory.d.ts +8 -0
- package/dist/esm/memory/base-chat-memory.js.map +1 -0
- package/dist/esm/memory/windowed-chat-memory.d.ts +14 -0
- package/dist/{memory → esm/memory}/windowed-chat-memory.js +2 -2
- package/dist/esm/memory/windowed-chat-memory.js.map +1 -0
- package/dist/esm/suppliers/supplyMemory.d.ts +6 -0
- package/dist/esm/suppliers/supplyMemory.js.map +1 -0
- package/dist/esm/suppliers/supplyModel.d.ts +8 -0
- package/dist/{suppliers → esm/suppliers}/supplyModel.js +2 -1
- package/dist/esm/suppliers/supplyModel.js.map +1 -0
- package/dist/esm/typecheck.tsbuildinfo +1 -0
- package/dist/esm/types/chat-model.d.ts +26 -0
- package/dist/esm/types/chat-model.js.map +1 -0
- package/dist/esm/types/json.d.ts +5 -0
- package/dist/esm/types/json.js.map +1 -0
- package/dist/esm/types/memory.d.ts +13 -0
- package/dist/esm/types/memory.js.map +1 -0
- package/dist/esm/types/message.d.ts +56 -0
- package/dist/esm/types/message.js.map +1 -0
- package/dist/esm/types/openai.d.ts +39 -0
- package/dist/esm/types/openai.js.map +1 -0
- package/dist/esm/types/output.d.ts +47 -0
- package/dist/esm/types/output.js.map +1 -0
- package/dist/esm/types/tool.d.ts +28 -0
- package/dist/esm/types/tool.js.map +1 -0
- package/dist/esm/utils/embeddings-input-validation.d.ts +3 -0
- package/dist/esm/utils/embeddings-input-validation.js.map +1 -0
- package/dist/esm/utils/failed-attempt-handler/n8nDefaultFailedAttemptHandler.d.ts +1 -0
- package/dist/esm/utils/failed-attempt-handler/n8nDefaultFailedAttemptHandler.js.map +1 -0
- package/dist/esm/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.d.ts +3 -0
- package/dist/esm/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.js.map +1 -0
- package/dist/esm/utils/helpers.d.ts +3 -0
- package/dist/esm/utils/helpers.js.map +1 -0
- package/dist/esm/utils/http-proxy-agent.d.ts +10 -0
- package/dist/esm/utils/http-proxy-agent.js.map +1 -0
- package/dist/esm/utils/log-ai-event.d.ts +2 -0
- package/dist/esm/utils/log-ai-event.js.map +1 -0
- package/dist/esm/utils/log-wrapper.d.ts +28 -0
- package/dist/esm/utils/log-wrapper.js.map +1 -0
- package/dist/esm/utils/n8n-binary-loader.d.ts +18 -0
- package/dist/esm/utils/n8n-binary-loader.js.map +1 -0
- package/dist/esm/utils/n8n-json-loader.d.ts +11 -0
- package/dist/esm/utils/n8n-json-loader.js.map +1 -0
- package/dist/esm/utils/n8n-llm-tracing.d.ts +46 -0
- package/dist/esm/utils/n8n-llm-tracing.js.map +1 -0
- package/dist/esm/utils/sse.d.ts +8 -0
- package/dist/{utils → esm/utils}/sse.js +17 -27
- package/dist/esm/utils/sse.js.map +1 -0
- package/dist/esm/utils/tokenizer/cl100k_base.json +1 -0
- package/dist/esm/utils/tokenizer/o200k_base.json +1 -0
- package/dist/esm/utils/tokenizer/tiktoken.d.ts +4 -0
- package/dist/esm/utils/tokenizer/tiktoken.js.map +1 -0
- package/dist/esm/utils/tokenizer/token-estimator.d.ts +4 -0
- package/dist/esm/utils/tokenizer/token-estimator.js.map +1 -0
- package/package.json +20 -12
- package/dist/adapters/langchain-chat-model.js.map +0 -1
- package/dist/adapters/langchain-history.js.map +0 -1
- package/dist/adapters/langchain-memory.js.map +0 -1
- package/dist/build.tsbuildinfo +0 -1
- package/dist/chat-model/base.js.map +0 -1
- package/dist/converters/message.js.map +0 -1
- package/dist/converters/tool.js.map +0 -1
- package/dist/guards.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/memory/base-chat-history.js.map +0 -1
- package/dist/memory/base-chat-memory.js.map +0 -1
- package/dist/memory/windowed-chat-memory.js.map +0 -1
- package/dist/suppliers/supplyMemory.js.map +0 -1
- package/dist/suppliers/supplyModel.d.ts +0 -15
- package/dist/suppliers/supplyModel.js.map +0 -1
- package/dist/utils/embeddings-input-validation.js.map +0 -1
- package/dist/utils/failed-attempt-handler/n8nDefaultFailedAttemptHandler.js.map +0 -1
- package/dist/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.js.map +0 -1
- package/dist/utils/helpers.js.map +0 -1
- package/dist/utils/http-proxy-agent.js.map +0 -1
- package/dist/utils/log-ai-event.js.map +0 -1
- package/dist/utils/log-wrapper.js.map +0 -1
- package/dist/utils/n8n-binary-loader.js.map +0 -1
- package/dist/utils/n8n-json-loader.js.map +0 -1
- package/dist/utils/n8n-llm-tracing.js.map +0 -1
- package/dist/utils/sse.js.map +0 -1
- package/dist/utils/tokenizer/tiktoken.js.map +0 -1
- package/dist/utils/tokenizer/token-estimator.js.map +0 -1
- /package/dist/{adapters → cjs/adapters}/langchain-history.d.ts +0 -0
- /package/dist/{adapters → cjs/adapters}/langchain-memory.d.ts +0 -0
- /package/dist/{chat-model → cjs/chat-model}/base.d.ts +0 -0
- /package/dist/{converters → cjs/converters}/tool.d.ts +0 -0
- /package/dist/{guards.d.ts → cjs/guards.d.ts} +0 -0
- /package/dist/{memory → cjs/memory}/base-chat-history.d.ts +0 -0
- /package/dist/{memory → cjs/memory}/base-chat-memory.d.ts +0 -0
- /package/dist/{memory → cjs/memory}/windowed-chat-memory.d.ts +0 -0
- /package/dist/{suppliers → cjs/suppliers}/supplyMemory.d.ts +0 -0
- /package/dist/{types → cjs/types}/chat-model.d.ts +0 -0
- /package/dist/{types → cjs/types}/json.d.ts +0 -0
- /package/dist/{types → cjs/types}/memory.d.ts +0 -0
- /package/dist/{types → cjs/types}/openai.d.ts +0 -0
- /package/dist/{types → cjs/types}/tool.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/embeddings-input-validation.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/failed-attempt-handler/n8nDefaultFailedAttemptHandler.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/failed-attempt-handler/n8nLlmFailedAttemptHandler.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/helpers.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/http-proxy-agent.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/log-ai-event.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/log-wrapper.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/n8n-binary-loader.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/n8n-json-loader.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/n8n-llm-tracing.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/tokenizer/cl100k_base.json +0 -0
- /package/dist/{utils → cjs/utils}/tokenizer/o200k_base.json +0 -0
- /package/dist/{utils → cjs/utils}/tokenizer/tiktoken.d.ts +0 -0
- /package/dist/{utils → cjs/utils}/tokenizer/token-estimator.d.ts +0 -0
- /package/dist/{adapters → esm/adapters}/langchain-history.js +0 -0
- /package/dist/{adapters → esm/adapters}/langchain-memory.js +0 -0
- /package/dist/{chat-model → esm/chat-model}/base.js +0 -0
- /package/dist/{converters → esm/converters}/tool.js +0 -0
- /package/dist/{guards.js → esm/guards.js} +0 -0
- /package/dist/{memory → esm/memory}/base-chat-history.js +0 -0
- /package/dist/{memory → esm/memory}/base-chat-memory.js +0 -0
- /package/dist/{suppliers → esm/suppliers}/supplyMemory.js +0 -0
- /package/dist/{types → esm/types}/chat-model.js +0 -0
- /package/dist/{types → esm/types}/json.js +0 -0
- /package/dist/{types → esm/types}/memory.js +0 -0
- /package/dist/{types → esm/types}/message.js +0 -0
- /package/dist/{types → esm/types}/openai.js +0 -0
- /package/dist/{types → esm/types}/output.js +0 -0
- /package/dist/{types → esm/types}/tool.js +0 -0
- /package/dist/{utils → esm/utils}/embeddings-input-validation.js +0 -0
- /package/dist/{utils → esm/utils}/failed-attempt-handler/n8nDefaultFailedAttemptHandler.js +0 -0
- /package/dist/{utils → esm/utils}/failed-attempt-handler/n8nLlmFailedAttemptHandler.js +0 -0
- /package/dist/{utils → esm/utils}/helpers.js +0 -0
- /package/dist/{utils → esm/utils}/http-proxy-agent.js +0 -0
- /package/dist/{utils → esm/utils}/log-ai-event.js +0 -0
- /package/dist/{utils → esm/utils}/log-wrapper.js +0 -0
- /package/dist/{utils → esm/utils}/n8n-binary-loader.js +0 -0
- /package/dist/{utils → esm/utils}/n8n-json-loader.js +0 -0
- /package/dist/{utils → esm/utils}/n8n-llm-tracing.js +0 -0
- /package/dist/{utils → esm/utils}/tokenizer/tiktoken.js +0 -0
- /package/dist/{utils → esm/utils}/tokenizer/token-estimator.js +0 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.isBaseChatMemory = isBaseChatMemory;
|
|
13
|
+
exports.isBaseChatMessageHistory = isBaseChatMessageHistory;
|
|
14
|
+
exports.isChatInstance = isChatInstance;
|
|
15
|
+
exports.isToolsInstance = isToolsInstance;
|
|
16
|
+
function hasMethods(obj, ...methodNames) {
|
|
17
|
+
return methodNames.every((methodName) => typeof obj === 'object' &&
|
|
18
|
+
obj !== null &&
|
|
19
|
+
methodName in obj &&
|
|
20
|
+
typeof obj[methodName] === 'function');
|
|
21
|
+
}
|
|
22
|
+
function isBaseChatMemory(obj) {
|
|
23
|
+
return hasMethods(obj, 'loadMemoryVariables', 'saveContext');
|
|
24
|
+
}
|
|
25
|
+
function isBaseChatMessageHistory(obj) {
|
|
26
|
+
return hasMethods(obj, 'getMessages', 'addMessage');
|
|
27
|
+
}
|
|
28
|
+
function isChatInstance(model) {
|
|
29
|
+
const namespace = model?.lc_namespace ?? [];
|
|
30
|
+
return namespace.includes('chat_models');
|
|
31
|
+
}
|
|
32
|
+
function isToolsInstance(model) {
|
|
33
|
+
const namespace = model?.lc_namespace ?? [];
|
|
34
|
+
return namespace.includes('tools');
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=guards.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guards.js","sourceRoot":"","sources":["../../src/guards.ts"],"names":[],"mappings":";;;;;;;;;;;IAgBA,4CAEC;IAED,4DAEC;IAED,wCAIC;IAED,0CAIC;IA5BD,SAAS,UAAU,CAAI,GAAY,EAAE,GAAG,WAAmC;QAC1E,OAAO,WAAW,CAAC,KAAK,CACvB,CAAC,UAAU,EAAE,EAAE,CACd,OAAO,GAAG,KAAK,QAAQ;YACvB,GAAG,KAAK,IAAI;YACZ,UAAU,IAAI,GAAG;YACjB,OAAQ,GAAwC,CAAC,UAAU,CAAC,KAAK,UAAU,CAC5E,CAAC;IACH,CAAC;IAED,SAAgB,gBAAgB,CAAC,GAAY;QAC5C,OAAO,UAAU,CAAiB,GAAG,EAAE,qBAAqB,EAAE,aAAa,CAAC,CAAC;IAC9E,CAAC;IAED,SAAgB,wBAAwB,CAAC,GAAY;QACpD,OAAO,UAAU,CAAyB,GAAG,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;IAC7E,CAAC;IAED,SAAgB,cAAc,CAAC,KAAc;QAC5C,MAAM,SAAS,GAAI,KAAiB,EAAE,YAAY,IAAI,EAAE,CAAC;QAEzD,OAAO,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC;IAED,SAAgB,eAAe,CAAC,KAAc;QAC7C,MAAM,SAAS,GAAI,KAAc,EAAE,YAAY,IAAI,EAAE,CAAC;QAEtD,OAAO,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export { AI_NODE_SDK_VERSION } from './ai-node-sdk-version';
|
|
1
2
|
export { logWrapper } from './utils/log-wrapper';
|
|
2
3
|
export { logAiEvent } from './utils/log-ai-event';
|
|
3
4
|
export { parseSSEStream } from './utils/sse';
|
|
@@ -10,19 +11,20 @@ export { estimateTokensFromStringList, estimateTokensByCharCount, estimateTextSp
|
|
|
10
11
|
export { encodingForModel, getEncoding } from './utils/tokenizer/tiktoken';
|
|
11
12
|
export { makeN8nLlmFailedAttemptHandler } from './utils/failed-attempt-handler/n8nLlmFailedAttemptHandler';
|
|
12
13
|
export { getProxyAgent, getNodeProxyAgent, proxyFetch, type AgentTimeoutOptions, } from './utils/http-proxy-agent';
|
|
14
|
+
export type { ServerSentEventMessage } from './utils/sse';
|
|
15
|
+
export { getParametersJsonSchema } from './converters/tool';
|
|
16
|
+
export { fromLcMessage, toLcMessage, toLcContent, fromLcContent } from './converters/message';
|
|
13
17
|
export { isBaseChatMemory, isBaseChatMessageHistory, isChatInstance, isToolsInstance, } from './guards';
|
|
14
18
|
export type { ChatModel, ChatModelConfig } from './types/chat-model';
|
|
19
|
+
export type { ChatHistory, ChatMemory } from './types/memory';
|
|
15
20
|
export type { GenerateResult, StreamChunk, TokenUsage, FinishReason } from './types/output';
|
|
16
21
|
export type { Tool, ToolResult, ToolCall, ProviderTool } from './types/tool';
|
|
17
22
|
export type { Message, ContentFile, ContentMetadata, ContentReasoning, ContentText, ContentToolCall, ContentToolResult, MessageContent, MessageRole, } from './types/message';
|
|
18
23
|
export type { JSONArray, JSONObject, JSONValue } from './types/json';
|
|
19
|
-
export
|
|
20
|
-
export { LangchainAdapter } from './adapters/langchain-chat-model';
|
|
24
|
+
export { LangchainChatModelAdapter } from './adapters/langchain-chat-model';
|
|
21
25
|
export { BaseChatModel } from './chat-model/base';
|
|
22
|
-
export { getParametersJsonSchema } from './converters/tool';
|
|
23
|
-
export { supplyModel } from './suppliers/supplyModel';
|
|
24
|
-
export type { ChatHistory, ChatMemory } from './types/memory';
|
|
25
26
|
export { BaseChatHistory } from './memory/base-chat-history';
|
|
26
27
|
export { BaseChatMemory } from './memory/base-chat-memory';
|
|
27
28
|
export { WindowedChatMemory, type WindowedChatMemoryConfig } from './memory/windowed-chat-memory';
|
|
28
29
|
export { supplyMemory, type SupplyMemoryOptions } from './suppliers/supplyMemory';
|
|
30
|
+
export { supplyModel, type SupplyModelOptions, type OpenAiModel } from './suppliers/supplyModel';
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports", "./ai-node-sdk-version", "./utils/log-wrapper", "./utils/log-ai-event", "./utils/sse", "./utils/embeddings-input-validation", "./utils/helpers", "./utils/n8n-binary-loader", "./utils/n8n-json-loader", "./utils/n8n-llm-tracing", "./utils/tokenizer/token-estimator", "./utils/tokenizer/tiktoken", "./utils/failed-attempt-handler/n8nLlmFailedAttemptHandler", "./utils/http-proxy-agent", "./converters/tool", "./converters/message", "./guards", "./adapters/langchain-chat-model", "./chat-model/base", "./memory/base-chat-history", "./memory/base-chat-memory", "./memory/windowed-chat-memory", "./suppliers/supplyMemory", "./suppliers/supplyModel"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.supplyModel = exports.supplyMemory = exports.WindowedChatMemory = exports.BaseChatMemory = exports.BaseChatHistory = exports.BaseChatModel = exports.LangchainChatModelAdapter = exports.isToolsInstance = exports.isChatInstance = exports.isBaseChatMessageHistory = exports.isBaseChatMemory = exports.fromLcContent = exports.toLcContent = exports.toLcMessage = exports.fromLcMessage = exports.getParametersJsonSchema = exports.proxyFetch = exports.getNodeProxyAgent = exports.getProxyAgent = exports.makeN8nLlmFailedAttemptHandler = exports.getEncoding = exports.encodingForModel = exports.estimateTextSplitsByTokens = exports.estimateTokensByCharCount = exports.estimateTokensFromStringList = exports.N8nLlmTracing = exports.N8nJsonLoader = exports.N8nBinaryLoader = exports.hasLongSequentialRepeat = exports.getMetadataFiltersValues = exports.validateEmbedDocumentsInput = exports.validateEmbedQueryInput = exports.parseSSEStream = exports.logAiEvent = exports.logWrapper = exports.AI_NODE_SDK_VERSION = void 0;
|
|
13
|
+
var ai_node_sdk_version_1 = require("./ai-node-sdk-version");
|
|
14
|
+
Object.defineProperty(exports, "AI_NODE_SDK_VERSION", { enumerable: true, get: function () { return ai_node_sdk_version_1.AI_NODE_SDK_VERSION; } });
|
|
15
|
+
var log_wrapper_1 = require("./utils/log-wrapper");
|
|
16
|
+
Object.defineProperty(exports, "logWrapper", { enumerable: true, get: function () { return log_wrapper_1.logWrapper; } });
|
|
17
|
+
var log_ai_event_1 = require("./utils/log-ai-event");
|
|
18
|
+
Object.defineProperty(exports, "logAiEvent", { enumerable: true, get: function () { return log_ai_event_1.logAiEvent; } });
|
|
19
|
+
var sse_1 = require("./utils/sse");
|
|
20
|
+
Object.defineProperty(exports, "parseSSEStream", { enumerable: true, get: function () { return sse_1.parseSSEStream; } });
|
|
21
|
+
var embeddings_input_validation_1 = require("./utils/embeddings-input-validation");
|
|
22
|
+
Object.defineProperty(exports, "validateEmbedQueryInput", { enumerable: true, get: function () { return embeddings_input_validation_1.validateEmbedQueryInput; } });
|
|
23
|
+
Object.defineProperty(exports, "validateEmbedDocumentsInput", { enumerable: true, get: function () { return embeddings_input_validation_1.validateEmbedDocumentsInput; } });
|
|
24
|
+
var helpers_1 = require("./utils/helpers");
|
|
25
|
+
Object.defineProperty(exports, "getMetadataFiltersValues", { enumerable: true, get: function () { return helpers_1.getMetadataFiltersValues; } });
|
|
26
|
+
Object.defineProperty(exports, "hasLongSequentialRepeat", { enumerable: true, get: function () { return helpers_1.hasLongSequentialRepeat; } });
|
|
27
|
+
var n8n_binary_loader_1 = require("./utils/n8n-binary-loader");
|
|
28
|
+
Object.defineProperty(exports, "N8nBinaryLoader", { enumerable: true, get: function () { return n8n_binary_loader_1.N8nBinaryLoader; } });
|
|
29
|
+
var n8n_json_loader_1 = require("./utils/n8n-json-loader");
|
|
30
|
+
Object.defineProperty(exports, "N8nJsonLoader", { enumerable: true, get: function () { return n8n_json_loader_1.N8nJsonLoader; } });
|
|
31
|
+
var n8n_llm_tracing_1 = require("./utils/n8n-llm-tracing");
|
|
32
|
+
Object.defineProperty(exports, "N8nLlmTracing", { enumerable: true, get: function () { return n8n_llm_tracing_1.N8nLlmTracing; } });
|
|
33
|
+
var token_estimator_1 = require("./utils/tokenizer/token-estimator");
|
|
34
|
+
Object.defineProperty(exports, "estimateTokensFromStringList", { enumerable: true, get: function () { return token_estimator_1.estimateTokensFromStringList; } });
|
|
35
|
+
Object.defineProperty(exports, "estimateTokensByCharCount", { enumerable: true, get: function () { return token_estimator_1.estimateTokensByCharCount; } });
|
|
36
|
+
Object.defineProperty(exports, "estimateTextSplitsByTokens", { enumerable: true, get: function () { return token_estimator_1.estimateTextSplitsByTokens; } });
|
|
37
|
+
var tiktoken_1 = require("./utils/tokenizer/tiktoken");
|
|
38
|
+
Object.defineProperty(exports, "encodingForModel", { enumerable: true, get: function () { return tiktoken_1.encodingForModel; } });
|
|
39
|
+
Object.defineProperty(exports, "getEncoding", { enumerable: true, get: function () { return tiktoken_1.getEncoding; } });
|
|
40
|
+
var n8nLlmFailedAttemptHandler_1 = require("./utils/failed-attempt-handler/n8nLlmFailedAttemptHandler");
|
|
41
|
+
Object.defineProperty(exports, "makeN8nLlmFailedAttemptHandler", { enumerable: true, get: function () { return n8nLlmFailedAttemptHandler_1.makeN8nLlmFailedAttemptHandler; } });
|
|
42
|
+
var http_proxy_agent_1 = require("./utils/http-proxy-agent");
|
|
43
|
+
Object.defineProperty(exports, "getProxyAgent", { enumerable: true, get: function () { return http_proxy_agent_1.getProxyAgent; } });
|
|
44
|
+
Object.defineProperty(exports, "getNodeProxyAgent", { enumerable: true, get: function () { return http_proxy_agent_1.getNodeProxyAgent; } });
|
|
45
|
+
Object.defineProperty(exports, "proxyFetch", { enumerable: true, get: function () { return http_proxy_agent_1.proxyFetch; } });
|
|
46
|
+
var tool_1 = require("./converters/tool");
|
|
47
|
+
Object.defineProperty(exports, "getParametersJsonSchema", { enumerable: true, get: function () { return tool_1.getParametersJsonSchema; } });
|
|
48
|
+
var message_1 = require("./converters/message");
|
|
49
|
+
Object.defineProperty(exports, "fromLcMessage", { enumerable: true, get: function () { return message_1.fromLcMessage; } });
|
|
50
|
+
Object.defineProperty(exports, "toLcMessage", { enumerable: true, get: function () { return message_1.toLcMessage; } });
|
|
51
|
+
Object.defineProperty(exports, "toLcContent", { enumerable: true, get: function () { return message_1.toLcContent; } });
|
|
52
|
+
Object.defineProperty(exports, "fromLcContent", { enumerable: true, get: function () { return message_1.fromLcContent; } });
|
|
53
|
+
var guards_1 = require("./guards");
|
|
54
|
+
Object.defineProperty(exports, "isBaseChatMemory", { enumerable: true, get: function () { return guards_1.isBaseChatMemory; } });
|
|
55
|
+
Object.defineProperty(exports, "isBaseChatMessageHistory", { enumerable: true, get: function () { return guards_1.isBaseChatMessageHistory; } });
|
|
56
|
+
Object.defineProperty(exports, "isChatInstance", { enumerable: true, get: function () { return guards_1.isChatInstance; } });
|
|
57
|
+
Object.defineProperty(exports, "isToolsInstance", { enumerable: true, get: function () { return guards_1.isToolsInstance; } });
|
|
58
|
+
var langchain_chat_model_1 = require("./adapters/langchain-chat-model");
|
|
59
|
+
Object.defineProperty(exports, "LangchainChatModelAdapter", { enumerable: true, get: function () { return langchain_chat_model_1.LangchainChatModelAdapter; } });
|
|
60
|
+
var base_1 = require("./chat-model/base");
|
|
61
|
+
Object.defineProperty(exports, "BaseChatModel", { enumerable: true, get: function () { return base_1.BaseChatModel; } });
|
|
62
|
+
var base_chat_history_1 = require("./memory/base-chat-history");
|
|
63
|
+
Object.defineProperty(exports, "BaseChatHistory", { enumerable: true, get: function () { return base_chat_history_1.BaseChatHistory; } });
|
|
64
|
+
var base_chat_memory_1 = require("./memory/base-chat-memory");
|
|
65
|
+
Object.defineProperty(exports, "BaseChatMemory", { enumerable: true, get: function () { return base_chat_memory_1.BaseChatMemory; } });
|
|
66
|
+
var windowed_chat_memory_1 = require("./memory/windowed-chat-memory");
|
|
67
|
+
Object.defineProperty(exports, "WindowedChatMemory", { enumerable: true, get: function () { return windowed_chat_memory_1.WindowedChatMemory; } });
|
|
68
|
+
var supplyMemory_1 = require("./suppliers/supplyMemory");
|
|
69
|
+
Object.defineProperty(exports, "supplyMemory", { enumerable: true, get: function () { return supplyMemory_1.supplyMemory; } });
|
|
70
|
+
var supplyModel_1 = require("./suppliers/supplyModel");
|
|
71
|
+
Object.defineProperty(exports, "supplyModel", { enumerable: true, get: function () { return supplyModel_1.supplyModel; } });
|
|
72
|
+
});
|
|
73
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;IACA,6DAA4D;IAAnD,0HAAA,mBAAmB,OAAA;IAG5B,mDAAiD;IAAxC,yGAAA,UAAU,OAAA;IACnB,qDAAkD;IAAzC,0GAAA,UAAU,OAAA;IACnB,mCAA6C;IAApC,qGAAA,cAAc,OAAA;IACvB,mFAG6C;IAF5C,sIAAA,uBAAuB,OAAA;IACvB,0IAAA,2BAA2B,OAAA;IAE5B,2CAAoF;IAA3E,mHAAA,wBAAwB,OAAA;IAAE,kHAAA,uBAAuB,OAAA;IAC1D,+DAA4D;IAAnD,oHAAA,eAAe,OAAA;IACxB,2DAAwD;IAA/C,gHAAA,aAAa,OAAA;IACtB,2DAAwD;IAA/C,gHAAA,aAAa,OAAA;IACtB,qEAI2C;IAH1C,+HAAA,4BAA4B,OAAA;IAC5B,4HAAA,yBAAyB,OAAA;IACzB,6HAAA,0BAA0B,OAAA;IAE3B,uDAA2E;IAAlE,4GAAA,gBAAgB,OAAA;IAAE,uGAAA,WAAW,OAAA;IACtC,wGAA2G;IAAlG,4IAAA,8BAA8B,OAAA;IACvC,6DAKkC;IAJjC,iHAAA,aAAa,OAAA;IACb,qHAAA,iBAAiB,OAAA;IACjB,8GAAA,UAAU,OAAA;IAMX,0CAA4D;IAAnD,+GAAA,uBAAuB,OAAA;IAChC,gDAA8F;IAArF,wGAAA,aAAa,OAAA;IAAE,sGAAA,WAAW,OAAA;IAAE,sGAAA,WAAW,OAAA;IAAE,wGAAA,aAAa,OAAA;IAG/D,mCAKkB;IAJjB,0GAAA,gBAAgB,OAAA;IAChB,kHAAA,wBAAwB,OAAA;IACxB,wGAAA,cAAc,OAAA;IACd,yGAAA,eAAe,OAAA;IAsBhB,wEAA4E;IAAnE,iIAAA,yBAAyB,OAAA;IAClC,0CAAkD;IAAzC,qGAAA,aAAa,OAAA;IAGtB,gEAA6D;IAApD,oHAAA,eAAe,OAAA;IACxB,8DAA2D;IAAlD,kHAAA,cAAc,OAAA;IAGvB,sEAAkG;IAAzF,0HAAA,kBAAkB,OAAA;IAG3B,yDAAkF;IAAzE,4GAAA,YAAY,OAAA;IACrB,uDAAiG;IAAxF,0GAAA,WAAW,OAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.BaseChatHistory = void 0;
|
|
13
|
+
class BaseChatHistory {
|
|
14
|
+
async addMessages(messages) {
|
|
15
|
+
for (const msg of messages) {
|
|
16
|
+
await this.addMessage(msg);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.BaseChatHistory = BaseChatHistory;
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=base-chat-history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-chat-history.js","sourceRoot":"","sources":["../../../src/memory/base-chat-history.ts"],"names":[],"mappings":";;;;;;;;;;;;IAGA,MAAsB,eAAe;QAKpC,KAAK,CAAC,WAAW,CAAC,QAAmB;YACpC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;QACF,CAAC;KAGD;IAZD,0CAYC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.BaseChatMemory = void 0;
|
|
13
|
+
class BaseChatMemory {
|
|
14
|
+
}
|
|
15
|
+
exports.BaseChatMemory = BaseChatMemory;
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=base-chat-memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-chat-memory.js","sourceRoot":"","sources":["../../../src/memory/base-chat-memory.ts"],"names":[],"mappings":";;;;;;;;;;;;IAGA,MAAsB,cAAc;KAQnC;IARD,wCAQC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports", "./base-chat-memory"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.WindowedChatMemory = void 0;
|
|
13
|
+
const base_chat_memory_1 = require("./base-chat-memory");
|
|
14
|
+
class WindowedChatMemory extends base_chat_memory_1.BaseChatMemory {
|
|
15
|
+
constructor(chatHistory, config) {
|
|
16
|
+
super();
|
|
17
|
+
this.chatHistory = chatHistory;
|
|
18
|
+
this.windowSize = config?.windowSize ?? 10;
|
|
19
|
+
}
|
|
20
|
+
async loadMessages() {
|
|
21
|
+
const allMessages = await this.chatHistory.getMessages();
|
|
22
|
+
if (allMessages.length === 0) {
|
|
23
|
+
return [];
|
|
24
|
+
}
|
|
25
|
+
const maxMessages = this.windowSize * 2;
|
|
26
|
+
if (allMessages.length <= maxMessages) {
|
|
27
|
+
return allMessages;
|
|
28
|
+
}
|
|
29
|
+
return allMessages.slice(-maxMessages);
|
|
30
|
+
}
|
|
31
|
+
async saveTurn(input, output) {
|
|
32
|
+
const humanMessage = {
|
|
33
|
+
role: 'user',
|
|
34
|
+
content: [{ type: 'text', text: input }],
|
|
35
|
+
};
|
|
36
|
+
const aiMessage = {
|
|
37
|
+
role: 'assistant',
|
|
38
|
+
content: [{ type: 'text', text: output }],
|
|
39
|
+
};
|
|
40
|
+
await this.chatHistory.addMessages([humanMessage, aiMessage]);
|
|
41
|
+
}
|
|
42
|
+
async clear() {
|
|
43
|
+
await this.chatHistory.clear();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.WindowedChatMemory = WindowedChatMemory;
|
|
47
|
+
});
|
|
48
|
+
//# sourceMappingURL=windowed-chat-memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"windowed-chat-memory.js","sourceRoot":"","sources":["../../../src/memory/windowed-chat-memory.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,yDAAoD;IASpD,MAAa,kBAAmB,SAAQ,iCAAc;QAIrD,YAAY,WAAwB,EAAE,MAAiC;YACtE,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YAC/B,IAAI,CAAC,UAAU,GAAG,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC;QAC5C,CAAC;QAED,KAAK,CAAC,YAAY;YACjB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;YAEzD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,EAAE,CAAC;YACX,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YAExC,IAAI,WAAW,CAAC,MAAM,IAAI,WAAW,EAAE,CAAC;gBACvC,OAAO,WAAW,CAAC;YACpB,CAAC;YAED,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;QACxC,CAAC;QAED,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,MAAc;YAC3C,MAAM,YAAY,GAAY;gBAC7B,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;aACxC,CAAC;YAEF,MAAM,SAAS,GAAY;gBAC1B,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;aACzC,CAAC;YAEF,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,KAAK,CAAC,KAAK;YACV,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAChC,CAAC;KACD;IA3CD,gDA2CC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports", "../adapters/langchain-memory", "../utils/log-wrapper"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.supplyMemory = supplyMemory;
|
|
13
|
+
const langchain_memory_1 = require("../adapters/langchain-memory");
|
|
14
|
+
const log_wrapper_1 = require("../utils/log-wrapper");
|
|
15
|
+
function supplyMemory(context, memory, options) {
|
|
16
|
+
const adapter = new langchain_memory_1.LangchainMemoryAdapter(memory);
|
|
17
|
+
const wrappedAdapter = (0, log_wrapper_1.logWrapper)(adapter, context);
|
|
18
|
+
return {
|
|
19
|
+
response: wrappedAdapter,
|
|
20
|
+
closeFunction: options?.closeFunction,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=supplyMemory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supplyMemory.js","sourceRoot":"","sources":["../../../src/suppliers/supplyMemory.ts"],"names":[],"mappings":";;;;;;;;;;;IAUA,oCAYC;IApBD,mEAAsE;IAEtE,sDAAkD;IAMlD,SAAgB,YAAY,CAC3B,OAA6B,EAC7B,MAAkB,EAClB,OAA6B;QAE7B,MAAM,OAAO,GAAG,IAAI,yCAAsB,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,IAAA,wBAAU,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAEpD,OAAO;YACN,QAAQ,EAAE,cAAc;YACxB,aAAa,EAAE,OAAO,EAAE,aAAa;SACrC,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ISupplyDataFunctions, SupplyData } from 'n8n-workflow';
|
|
2
|
+
import type { ChatModel } from '../types/chat-model';
|
|
3
|
+
import type { OpenAIModelOptions } from '../types/openai';
|
|
4
|
+
export type OpenAiModel = OpenAIModelOptions & {
|
|
5
|
+
type: 'openai';
|
|
6
|
+
};
|
|
7
|
+
export type SupplyModelOptions = ChatModel | OpenAiModel;
|
|
8
|
+
export declare function supplyModel(ctx: ISupplyDataFunctions, model: SupplyModelOptions): SupplyData;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports", "@langchain/openai", "../adapters/langchain-chat-model", "../chat-model/base", "../utils/failed-attempt-handler/n8nLlmFailedAttemptHandler", "../utils/http-proxy-agent", "../utils/n8n-llm-tracing"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.supplyModel = supplyModel;
|
|
13
|
+
const openai_1 = require("@langchain/openai");
|
|
14
|
+
const langchain_chat_model_1 = require("../adapters/langchain-chat-model");
|
|
15
|
+
const base_1 = require("../chat-model/base");
|
|
16
|
+
const n8nLlmFailedAttemptHandler_1 = require("../utils/failed-attempt-handler/n8nLlmFailedAttemptHandler");
|
|
17
|
+
const http_proxy_agent_1 = require("../utils/http-proxy-agent");
|
|
18
|
+
const n8n_llm_tracing_1 = require("../utils/n8n-llm-tracing");
|
|
19
|
+
function isOpenAiModel(model) {
|
|
20
|
+
return 'type' in model && model.type === 'openai' && !(model instanceof base_1.BaseChatModel);
|
|
21
|
+
}
|
|
22
|
+
function getOpenAiModel(ctx, model) {
|
|
23
|
+
const clientConfiguration = {
|
|
24
|
+
baseURL: model.baseUrl,
|
|
25
|
+
};
|
|
26
|
+
if (model.defaultHeaders) {
|
|
27
|
+
clientConfiguration.defaultHeaders = model.defaultHeaders;
|
|
28
|
+
}
|
|
29
|
+
const timeout = model.timeout;
|
|
30
|
+
clientConfiguration.fetchOptions = {
|
|
31
|
+
dispatcher: (0, http_proxy_agent_1.getProxyAgent)(model.baseUrl, {
|
|
32
|
+
headersTimeout: timeout,
|
|
33
|
+
bodyTimeout: timeout,
|
|
34
|
+
}),
|
|
35
|
+
};
|
|
36
|
+
const openAiModel = new openai_1.ChatOpenAI({
|
|
37
|
+
configuration: clientConfiguration,
|
|
38
|
+
model: model.model,
|
|
39
|
+
apiKey: model.apiKey,
|
|
40
|
+
useResponsesApi: model.useResponsesApi,
|
|
41
|
+
logprobs: model.logprobs,
|
|
42
|
+
topLogprobs: model.topLogprobs,
|
|
43
|
+
supportsStrictToolCalling: model.supportsStrictToolCalling,
|
|
44
|
+
reasoning: model.reasoning,
|
|
45
|
+
zdrEnabled: model.zdrEnabled,
|
|
46
|
+
service_tier: model.service_tier,
|
|
47
|
+
promptCacheKey: model.promptCacheKey,
|
|
48
|
+
temperature: model.temperature,
|
|
49
|
+
topP: model.topP,
|
|
50
|
+
frequencyPenalty: model.frequencyPenalty,
|
|
51
|
+
presencePenalty: model.presencePenalty,
|
|
52
|
+
stopSequences: model.stopSequences,
|
|
53
|
+
maxRetries: model.maxRetries,
|
|
54
|
+
modelKwargs: model.additionalParams,
|
|
55
|
+
verbosity: model.verbosity,
|
|
56
|
+
streaming: model.streaming,
|
|
57
|
+
streamUsage: model.streamUsage,
|
|
58
|
+
stop: model.stop,
|
|
59
|
+
maxTokens: model.maxTokens,
|
|
60
|
+
maxCompletionTokens: model.maxCompletionTokens,
|
|
61
|
+
timeout: model.timeout,
|
|
62
|
+
callbacks: [new n8n_llm_tracing_1.N8nLlmTracing(ctx)],
|
|
63
|
+
onFailedAttempt: (0, n8nLlmFailedAttemptHandler_1.makeN8nLlmFailedAttemptHandler)(ctx, model.onFailedAttempt),
|
|
64
|
+
});
|
|
65
|
+
if (model.providerTools?.length) {
|
|
66
|
+
openAiModel.metadata = {
|
|
67
|
+
...openAiModel.metadata,
|
|
68
|
+
tools: model.providerTools.map((tool) => ({
|
|
69
|
+
type: tool.name,
|
|
70
|
+
...tool.args,
|
|
71
|
+
})),
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
return openAiModel;
|
|
75
|
+
}
|
|
76
|
+
function supplyModel(ctx, model) {
|
|
77
|
+
if (isOpenAiModel(model)) {
|
|
78
|
+
const openAiModel = getOpenAiModel(ctx, model);
|
|
79
|
+
return {
|
|
80
|
+
response: openAiModel,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
const adapter = new langchain_chat_model_1.LangchainChatModelAdapter(model, ctx);
|
|
84
|
+
return {
|
|
85
|
+
response: adapter,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
//# sourceMappingURL=supplyModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supplyModel.js","sourceRoot":"","sources":["../../../src/suppliers/supplyModel.ts"],"names":[],"mappings":"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"}
|