@langchain/core 0.3.6 → 0.3.8-rc.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/dist/language_models/base.cjs +5 -4
- package/dist/language_models/base.js +5 -4
- package/dist/messages/base.cjs +4 -0
- package/dist/messages/base.d.ts +15 -3
- package/dist/messages/base.js +4 -0
- package/dist/messages/chat.cjs +9 -1
- package/dist/messages/chat.d.ts +2 -0
- package/dist/messages/chat.js +6 -0
- package/dist/messages/function.cjs +9 -1
- package/dist/messages/function.d.ts +2 -0
- package/dist/messages/function.js +6 -0
- package/dist/messages/human.cjs +9 -1
- package/dist/messages/human.d.ts +2 -0
- package/dist/messages/human.js +6 -0
- package/dist/messages/index.cjs +3 -1
- package/dist/messages/index.d.ts +1 -1
- package/dist/messages/index.js +1 -1
- package/dist/messages/system.cjs +9 -1
- package/dist/messages/system.d.ts +2 -0
- package/dist/messages/system.js +6 -0
- package/dist/messages/tool.cjs +9 -1
- package/dist/messages/tool.d.ts +2 -0
- package/dist/messages/tool.js +6 -0
- package/dist/messages/utils.cjs +34 -2
- package/dist/messages/utils.js +34 -2
- package/dist/runnables/base.d.ts +2 -2
- package/dist/runnables/graph.d.ts +1 -1
- package/dist/runnables/history.d.ts +1 -1
- package/dist/runnables/types.d.ts +2 -2
- package/dist/utils/testing/index.cjs +9 -2
- package/dist/utils/testing/index.d.ts +2 -1
- package/dist/utils/testing/index.js +9 -2
- package/package.json +1 -1
|
@@ -156,9 +156,10 @@ class BaseLanguageModel extends BaseLangChain {
|
|
|
156
156
|
return ["stop", "timeout", "signal", "tags", "metadata", "callbacks"];
|
|
157
157
|
}
|
|
158
158
|
constructor({ callbacks, callbackManager, ...params }) {
|
|
159
|
+
const { cache, ...rest } = params;
|
|
159
160
|
super({
|
|
160
161
|
callbacks: callbacks ?? callbackManager,
|
|
161
|
-
...
|
|
162
|
+
...rest,
|
|
162
163
|
});
|
|
163
164
|
/**
|
|
164
165
|
* The async caller should be used by subclasses to make any async calls,
|
|
@@ -182,10 +183,10 @@ class BaseLanguageModel extends BaseLangChain {
|
|
|
182
183
|
writable: true,
|
|
183
184
|
value: void 0
|
|
184
185
|
});
|
|
185
|
-
if (typeof
|
|
186
|
-
this.cache =
|
|
186
|
+
if (typeof cache === "object") {
|
|
187
|
+
this.cache = cache;
|
|
187
188
|
}
|
|
188
|
-
else if (
|
|
189
|
+
else if (cache) {
|
|
189
190
|
this.cache = base_js_1.InMemoryCache.global();
|
|
190
191
|
}
|
|
191
192
|
else {
|
|
@@ -147,9 +147,10 @@ export class BaseLanguageModel extends BaseLangChain {
|
|
|
147
147
|
return ["stop", "timeout", "signal", "tags", "metadata", "callbacks"];
|
|
148
148
|
}
|
|
149
149
|
constructor({ callbacks, callbackManager, ...params }) {
|
|
150
|
+
const { cache, ...rest } = params;
|
|
150
151
|
super({
|
|
151
152
|
callbacks: callbacks ?? callbackManager,
|
|
152
|
-
...
|
|
153
|
+
...rest,
|
|
153
154
|
});
|
|
154
155
|
/**
|
|
155
156
|
* The async caller should be used by subclasses to make any async calls,
|
|
@@ -173,10 +174,10 @@ export class BaseLanguageModel extends BaseLangChain {
|
|
|
173
174
|
writable: true,
|
|
174
175
|
value: void 0
|
|
175
176
|
});
|
|
176
|
-
if (typeof
|
|
177
|
-
this.cache =
|
|
177
|
+
if (typeof cache === "object") {
|
|
178
|
+
this.cache = cache;
|
|
178
179
|
}
|
|
179
|
-
else if (
|
|
180
|
+
else if (cache) {
|
|
180
181
|
this.cache = InMemoryCache.global();
|
|
181
182
|
}
|
|
182
183
|
else {
|
package/dist/messages/base.cjs
CHANGED
|
@@ -84,6 +84,10 @@ class BaseMessage extends serializable_js_1.Serializable {
|
|
|
84
84
|
get text() {
|
|
85
85
|
return typeof this.content === "string" ? this.content : "";
|
|
86
86
|
}
|
|
87
|
+
/** The type of the message. */
|
|
88
|
+
getType() {
|
|
89
|
+
return this._getType();
|
|
90
|
+
}
|
|
87
91
|
constructor(fields,
|
|
88
92
|
/** @deprecated */
|
|
89
93
|
kwargs) {
|
package/dist/messages/base.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Serializable } from "../load/serializable.js";
|
|
1
|
+
import { Serializable, SerializedConstructor } from "../load/serializable.js";
|
|
2
2
|
import { StringWithAutocomplete } from "../utils/types/index.js";
|
|
3
3
|
export interface StoredMessageData {
|
|
4
4
|
content: string;
|
|
@@ -114,8 +114,20 @@ export declare abstract class BaseMessage extends Serializable implements BaseMe
|
|
|
114
114
|
* provided by the provider/model which created the message.
|
|
115
115
|
*/
|
|
116
116
|
id?: string;
|
|
117
|
-
/**
|
|
117
|
+
/**
|
|
118
|
+
* @deprecated Use .getType() instead or import the proper typeguard.
|
|
119
|
+
* For example:
|
|
120
|
+
*
|
|
121
|
+
* ```ts
|
|
122
|
+
* import { isAIMessage } from "@langchain/core/messages";
|
|
123
|
+
*
|
|
124
|
+
* const message = new AIMessage("Hello!");
|
|
125
|
+
* isAIMessage(message); // true
|
|
126
|
+
* ```
|
|
127
|
+
*/
|
|
118
128
|
abstract _getType(): MessageType;
|
|
129
|
+
/** The type of the message. */
|
|
130
|
+
getType(): MessageType;
|
|
119
131
|
constructor(fields: string | BaseMessageFields,
|
|
120
132
|
/** @deprecated */
|
|
121
133
|
kwargs?: Record<string, unknown>);
|
|
@@ -172,6 +184,6 @@ export type BaseMessageLike = BaseMessage | MessageFieldWithRole | [
|
|
|
172
184
|
*/
|
|
173
185
|
| ({
|
|
174
186
|
type: MessageType | "user" | "assistant" | "placeholder";
|
|
175
|
-
} & BaseMessageFields & Record<string, unknown>);
|
|
187
|
+
} & BaseMessageFields & Record<string, unknown>) | SerializedConstructor;
|
|
176
188
|
export declare function isBaseMessage(messageLike?: unknown): messageLike is BaseMessage;
|
|
177
189
|
export declare function isBaseMessageChunk(messageLike?: unknown): messageLike is BaseMessageChunk;
|
package/dist/messages/base.js
CHANGED
|
@@ -79,6 +79,10 @@ export class BaseMessage extends Serializable {
|
|
|
79
79
|
get text() {
|
|
80
80
|
return typeof this.content === "string" ? this.content : "";
|
|
81
81
|
}
|
|
82
|
+
/** The type of the message. */
|
|
83
|
+
getType() {
|
|
84
|
+
return this._getType();
|
|
85
|
+
}
|
|
82
86
|
constructor(fields,
|
|
83
87
|
/** @deprecated */
|
|
84
88
|
kwargs) {
|
package/dist/messages/chat.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ChatMessageChunk = exports.ChatMessage = void 0;
|
|
3
|
+
exports.isChatMessageChunk = exports.isChatMessage = exports.ChatMessageChunk = exports.ChatMessage = void 0;
|
|
4
4
|
const base_js_1 = require("./base.cjs");
|
|
5
5
|
/**
|
|
6
6
|
* Represents a chat message in a conversation.
|
|
@@ -82,3 +82,11 @@ class ChatMessageChunk extends base_js_1.BaseMessageChunk {
|
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
84
|
exports.ChatMessageChunk = ChatMessageChunk;
|
|
85
|
+
function isChatMessage(x) {
|
|
86
|
+
return x._getType() === "generic";
|
|
87
|
+
}
|
|
88
|
+
exports.isChatMessage = isChatMessage;
|
|
89
|
+
function isChatMessageChunk(x) {
|
|
90
|
+
return x._getType() === "generic";
|
|
91
|
+
}
|
|
92
|
+
exports.isChatMessageChunk = isChatMessageChunk;
|
package/dist/messages/chat.d.ts
CHANGED
|
@@ -28,3 +28,5 @@ export declare class ChatMessageChunk extends BaseMessageChunk {
|
|
|
28
28
|
concat(chunk: ChatMessageChunk): ChatMessageChunk;
|
|
29
29
|
get _printableFields(): Record<string, unknown>;
|
|
30
30
|
}
|
|
31
|
+
export declare function isChatMessage(x: BaseMessage): x is ChatMessage;
|
|
32
|
+
export declare function isChatMessageChunk(x: BaseMessageChunk): x is ChatMessageChunk;
|
package/dist/messages/chat.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FunctionMessageChunk = exports.FunctionMessage = void 0;
|
|
3
|
+
exports.isFunctionMessageChunk = exports.isFunctionMessage = exports.FunctionMessageChunk = exports.FunctionMessage = void 0;
|
|
4
4
|
const base_js_1 = require("./base.cjs");
|
|
5
5
|
/**
|
|
6
6
|
* Represents a function message in a conversation.
|
|
@@ -45,3 +45,11 @@ class FunctionMessageChunk extends base_js_1.BaseMessageChunk {
|
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
exports.FunctionMessageChunk = FunctionMessageChunk;
|
|
48
|
+
function isFunctionMessage(x) {
|
|
49
|
+
return x._getType() === "function";
|
|
50
|
+
}
|
|
51
|
+
exports.isFunctionMessage = isFunctionMessage;
|
|
52
|
+
function isFunctionMessageChunk(x) {
|
|
53
|
+
return x._getType() === "function";
|
|
54
|
+
}
|
|
55
|
+
exports.isFunctionMessageChunk = isFunctionMessageChunk;
|
|
@@ -22,3 +22,5 @@ export declare class FunctionMessageChunk extends BaseMessageChunk {
|
|
|
22
22
|
_getType(): MessageType;
|
|
23
23
|
concat(chunk: FunctionMessageChunk): FunctionMessageChunk;
|
|
24
24
|
}
|
|
25
|
+
export declare function isFunctionMessage(x: BaseMessage): x is FunctionMessage;
|
|
26
|
+
export declare function isFunctionMessageChunk(x: BaseMessageChunk): x is FunctionMessageChunk;
|
package/dist/messages/human.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.HumanMessageChunk = exports.HumanMessage = void 0;
|
|
3
|
+
exports.isHumanMessageChunk = exports.isHumanMessage = exports.HumanMessageChunk = exports.HumanMessage = void 0;
|
|
4
4
|
const base_js_1 = require("./base.cjs");
|
|
5
5
|
/**
|
|
6
6
|
* Represents a human message in a conversation.
|
|
@@ -35,3 +35,11 @@ class HumanMessageChunk extends base_js_1.BaseMessageChunk {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
exports.HumanMessageChunk = HumanMessageChunk;
|
|
38
|
+
function isHumanMessage(x) {
|
|
39
|
+
return x.getType() === "human";
|
|
40
|
+
}
|
|
41
|
+
exports.isHumanMessage = isHumanMessage;
|
|
42
|
+
function isHumanMessageChunk(x) {
|
|
43
|
+
return x.getType() === "human";
|
|
44
|
+
}
|
|
45
|
+
exports.isHumanMessageChunk = isHumanMessageChunk;
|
package/dist/messages/human.d.ts
CHANGED
|
@@ -15,3 +15,5 @@ export declare class HumanMessageChunk extends BaseMessageChunk {
|
|
|
15
15
|
_getType(): MessageType;
|
|
16
16
|
concat(chunk: HumanMessageChunk): HumanMessageChunk;
|
|
17
17
|
}
|
|
18
|
+
export declare function isHumanMessage(x: BaseMessage): x is HumanMessage;
|
|
19
|
+
export declare function isHumanMessageChunk(x: BaseMessageChunk): x is HumanMessageChunk;
|
package/dist/messages/human.js
CHANGED
package/dist/messages/index.cjs
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.ToolMessageChunk = exports.ToolMessage = void 0;
|
|
17
|
+
exports.isToolMessageChunk = exports.isToolMessage = exports.ToolMessageChunk = exports.ToolMessage = void 0;
|
|
18
18
|
__exportStar(require("./ai.cjs"), exports);
|
|
19
19
|
__exportStar(require("./base.cjs"), exports);
|
|
20
20
|
__exportStar(require("./chat.cjs"), exports);
|
|
@@ -29,3 +29,5 @@ __exportStar(require("./modifier.cjs"), exports);
|
|
|
29
29
|
var tool_js_1 = require("./tool.cjs");
|
|
30
30
|
Object.defineProperty(exports, "ToolMessage", { enumerable: true, get: function () { return tool_js_1.ToolMessage; } });
|
|
31
31
|
Object.defineProperty(exports, "ToolMessageChunk", { enumerable: true, get: function () { return tool_js_1.ToolMessageChunk; } });
|
|
32
|
+
Object.defineProperty(exports, "isToolMessage", { enumerable: true, get: function () { return tool_js_1.isToolMessage; } });
|
|
33
|
+
Object.defineProperty(exports, "isToolMessageChunk", { enumerable: true, get: function () { return tool_js_1.isToolMessageChunk; } });
|
package/dist/messages/index.d.ts
CHANGED
|
@@ -7,4 +7,4 @@ export * from "./system.js";
|
|
|
7
7
|
export * from "./utils.js";
|
|
8
8
|
export * from "./transformers.js";
|
|
9
9
|
export * from "./modifier.js";
|
|
10
|
-
export { type ToolMessageFieldsWithToolCallId, ToolMessage, ToolMessageChunk, type InvalidToolCall, } from "./tool.js";
|
|
10
|
+
export { type ToolMessageFieldsWithToolCallId, ToolMessage, ToolMessageChunk, type InvalidToolCall, isToolMessage, isToolMessageChunk, } from "./tool.js";
|
package/dist/messages/index.js
CHANGED
|
@@ -9,4 +9,4 @@ export * from "./transformers.js";
|
|
|
9
9
|
export * from "./modifier.js";
|
|
10
10
|
// TODO: Use a star export when we deprecate the
|
|
11
11
|
// existing "ToolCall" type in "base.js".
|
|
12
|
-
export { ToolMessage, ToolMessageChunk, } from "./tool.js";
|
|
12
|
+
export { ToolMessage, ToolMessageChunk, isToolMessage, isToolMessageChunk, } from "./tool.js";
|
package/dist/messages/system.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SystemMessageChunk = exports.SystemMessage = void 0;
|
|
3
|
+
exports.isSystemMessageChunk = exports.isSystemMessage = exports.SystemMessageChunk = exports.SystemMessage = void 0;
|
|
4
4
|
const base_js_1 = require("./base.cjs");
|
|
5
5
|
/**
|
|
6
6
|
* Represents a system message in a conversation.
|
|
@@ -35,3 +35,11 @@ class SystemMessageChunk extends base_js_1.BaseMessageChunk {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
exports.SystemMessageChunk = SystemMessageChunk;
|
|
38
|
+
function isSystemMessage(x) {
|
|
39
|
+
return x._getType() === "system";
|
|
40
|
+
}
|
|
41
|
+
exports.isSystemMessage = isSystemMessage;
|
|
42
|
+
function isSystemMessageChunk(x) {
|
|
43
|
+
return x._getType() === "system";
|
|
44
|
+
}
|
|
45
|
+
exports.isSystemMessageChunk = isSystemMessageChunk;
|
|
@@ -15,3 +15,5 @@ export declare class SystemMessageChunk extends BaseMessageChunk {
|
|
|
15
15
|
_getType(): MessageType;
|
|
16
16
|
concat(chunk: SystemMessageChunk): SystemMessageChunk;
|
|
17
17
|
}
|
|
18
|
+
export declare function isSystemMessage(x: BaseMessage): x is SystemMessage;
|
|
19
|
+
export declare function isSystemMessageChunk(x: BaseMessageChunk): x is SystemMessageChunk;
|
package/dist/messages/system.js
CHANGED
package/dist/messages/tool.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.defaultToolCallParser = exports.ToolMessageChunk = exports.ToolMessage = void 0;
|
|
3
|
+
exports.isToolMessageChunk = exports.isToolMessage = exports.defaultToolCallParser = exports.ToolMessageChunk = exports.ToolMessage = void 0;
|
|
4
4
|
const base_js_1 = require("./base.cjs");
|
|
5
5
|
/**
|
|
6
6
|
* Represents a tool message in a conversation.
|
|
@@ -168,3 +168,11 @@ rawToolCalls) {
|
|
|
168
168
|
return [toolCalls, invalidToolCalls];
|
|
169
169
|
}
|
|
170
170
|
exports.defaultToolCallParser = defaultToolCallParser;
|
|
171
|
+
function isToolMessage(x) {
|
|
172
|
+
return x._getType() === "tool";
|
|
173
|
+
}
|
|
174
|
+
exports.isToolMessage = isToolMessage;
|
|
175
|
+
function isToolMessageChunk(x) {
|
|
176
|
+
return x._getType() === "tool";
|
|
177
|
+
}
|
|
178
|
+
exports.isToolMessageChunk = isToolMessageChunk;
|
package/dist/messages/tool.d.ts
CHANGED
|
@@ -143,3 +143,5 @@ export type InvalidToolCall = {
|
|
|
143
143
|
type?: "invalid_tool_call";
|
|
144
144
|
};
|
|
145
145
|
export declare function defaultToolCallParser(rawToolCalls: Record<string, any>[]): [ToolCall[], InvalidToolCall[]];
|
|
146
|
+
export declare function isToolMessage(x: BaseMessage): x is ToolMessage;
|
|
147
|
+
export declare function isToolMessageChunk(x: BaseMessageChunk): x is ToolMessageChunk;
|
package/dist/messages/tool.js
CHANGED
package/dist/messages/utils.cjs
CHANGED
|
@@ -34,8 +34,40 @@ function _coerceToolCall(toolCall) {
|
|
|
34
34
|
return toolCall;
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
|
+
function isSerializedConstructor(x) {
|
|
38
|
+
return (typeof x === "object" &&
|
|
39
|
+
x != null &&
|
|
40
|
+
x.lc === 1 &&
|
|
41
|
+
Array.isArray(x.id) &&
|
|
42
|
+
x.kwargs != null &&
|
|
43
|
+
typeof x.kwargs === "object");
|
|
44
|
+
}
|
|
37
45
|
function _constructMessageFromParams(params) {
|
|
38
|
-
|
|
46
|
+
let type;
|
|
47
|
+
let rest;
|
|
48
|
+
// Support serialized messages
|
|
49
|
+
if (isSerializedConstructor(params)) {
|
|
50
|
+
const className = params.id.at(-1);
|
|
51
|
+
if (className === "HumanMessage" || className === "HumanMessageChunk") {
|
|
52
|
+
type = "user";
|
|
53
|
+
}
|
|
54
|
+
else if (className === "AIMessage" || className === "AIMessageChunk") {
|
|
55
|
+
type = "assistant";
|
|
56
|
+
}
|
|
57
|
+
else if (className === "SystemMessage" ||
|
|
58
|
+
className === "SystemMessageChunk") {
|
|
59
|
+
type = "system";
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
type = "unknown";
|
|
63
|
+
}
|
|
64
|
+
rest = params.kwargs;
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
const { type: extractedType, ...otherParams } = params;
|
|
68
|
+
type = extractedType;
|
|
69
|
+
rest = otherParams;
|
|
70
|
+
}
|
|
39
71
|
if (type === "human" || type === "user") {
|
|
40
72
|
return new human_js_1.HumanMessage(rest);
|
|
41
73
|
}
|
|
@@ -59,7 +91,7 @@ function _constructMessageFromParams(params) {
|
|
|
59
91
|
});
|
|
60
92
|
}
|
|
61
93
|
else {
|
|
62
|
-
throw new Error(`Unable to coerce message from array: only human, AI, or system message coercion is currently supported
|
|
94
|
+
throw new Error(`Unable to coerce message from array: only human, AI, or system message coercion is currently supported.\n\nReceived:${params}`);
|
|
63
95
|
}
|
|
64
96
|
}
|
|
65
97
|
function coerceMessageLikeToMessage(messageLike) {
|
package/dist/messages/utils.js
CHANGED
|
@@ -31,8 +31,40 @@ function _coerceToolCall(toolCall) {
|
|
|
31
31
|
return toolCall;
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
+
function isSerializedConstructor(x) {
|
|
35
|
+
return (typeof x === "object" &&
|
|
36
|
+
x != null &&
|
|
37
|
+
x.lc === 1 &&
|
|
38
|
+
Array.isArray(x.id) &&
|
|
39
|
+
x.kwargs != null &&
|
|
40
|
+
typeof x.kwargs === "object");
|
|
41
|
+
}
|
|
34
42
|
function _constructMessageFromParams(params) {
|
|
35
|
-
|
|
43
|
+
let type;
|
|
44
|
+
let rest;
|
|
45
|
+
// Support serialized messages
|
|
46
|
+
if (isSerializedConstructor(params)) {
|
|
47
|
+
const className = params.id.at(-1);
|
|
48
|
+
if (className === "HumanMessage" || className === "HumanMessageChunk") {
|
|
49
|
+
type = "user";
|
|
50
|
+
}
|
|
51
|
+
else if (className === "AIMessage" || className === "AIMessageChunk") {
|
|
52
|
+
type = "assistant";
|
|
53
|
+
}
|
|
54
|
+
else if (className === "SystemMessage" ||
|
|
55
|
+
className === "SystemMessageChunk") {
|
|
56
|
+
type = "system";
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
type = "unknown";
|
|
60
|
+
}
|
|
61
|
+
rest = params.kwargs;
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
const { type: extractedType, ...otherParams } = params;
|
|
65
|
+
type = extractedType;
|
|
66
|
+
rest = otherParams;
|
|
67
|
+
}
|
|
36
68
|
if (type === "human" || type === "user") {
|
|
37
69
|
return new HumanMessage(rest);
|
|
38
70
|
}
|
|
@@ -56,7 +88,7 @@ function _constructMessageFromParams(params) {
|
|
|
56
88
|
});
|
|
57
89
|
}
|
|
58
90
|
else {
|
|
59
|
-
throw new Error(`Unable to coerce message from array: only human, AI, or system message coercion is currently supported
|
|
91
|
+
throw new Error(`Unable to coerce message from array: only human, AI, or system message coercion is currently supported.\n\nReceived:${params}`);
|
|
60
92
|
}
|
|
61
93
|
}
|
|
62
94
|
export function coerceMessageLikeToMessage(messageLike) {
|
package/dist/runnables/base.d.ts
CHANGED
|
@@ -479,7 +479,7 @@ export declare class RunnableSequence<RunInput = any, RunOutput = any> extends R
|
|
|
479
479
|
last: Runnable<any, RunOutput>;
|
|
480
480
|
name?: string;
|
|
481
481
|
});
|
|
482
|
-
get steps(): Runnable<any, any, RunnableConfig
|
|
482
|
+
get steps(): Runnable<any, any, RunnableConfig<Record<string, any>>>[];
|
|
483
483
|
invoke(input: RunInput, options?: RunnableConfig): Promise<RunOutput>;
|
|
484
484
|
batch(inputs: RunInput[], options?: Partial<RunnableConfig> | Partial<RunnableConfig>[], batchOptions?: RunnableBatchOptions & {
|
|
485
485
|
returnExceptions?: false;
|
|
@@ -593,7 +593,7 @@ export declare class RunnableWithFallbacks<RunInput, RunOutput> extends Runnable
|
|
|
593
593
|
runnable: Runnable<RunInput, RunOutput>;
|
|
594
594
|
fallbacks: Runnable<RunInput, RunOutput>[];
|
|
595
595
|
});
|
|
596
|
-
runnables(): Generator<Runnable<RunInput, RunOutput, RunnableConfig
|
|
596
|
+
runnables(): Generator<Runnable<RunInput, RunOutput, RunnableConfig<Record<string, any>>>, void, unknown>;
|
|
597
597
|
invoke(input: RunInput, options?: Partial<RunnableConfig>): Promise<RunOutput>;
|
|
598
598
|
_streamIterator(input: RunInput, options?: Partial<RunnableConfig> | undefined): AsyncGenerator<RunOutput>;
|
|
599
599
|
batch(inputs: RunInput[], options?: Partial<RunnableConfig> | Partial<RunnableConfig>[], batchOptions?: RunnableBatchOptions & {
|
|
@@ -19,7 +19,7 @@ export declare class Graph {
|
|
|
19
19
|
*/
|
|
20
20
|
extend(graph: Graph, prefix?: string): ({
|
|
21
21
|
id: string;
|
|
22
|
-
data: RunnableIOSchema | RunnableInterface<any, any, import("./types.js").RunnableConfig
|
|
22
|
+
data: RunnableIOSchema | RunnableInterface<any, any, import("./types.js").RunnableConfig<Record<string, any>>>;
|
|
23
23
|
} | undefined)[];
|
|
24
24
|
trimFirstNode(): void;
|
|
25
25
|
trimLastNode(): void;
|
|
@@ -87,6 +87,6 @@ export declare class RunnableWithMessageHistory<RunInput, RunOutput> extends Run
|
|
|
87
87
|
_getOutputMessages(outputValue: string | BaseMessage | Array<BaseMessage> | Record<string, any>): Array<BaseMessage>;
|
|
88
88
|
_enterHistory(input: any, kwargs?: RunnableConfig): Promise<BaseMessage[]>;
|
|
89
89
|
_exitHistory(run: Run, config: RunnableConfig): Promise<void>;
|
|
90
|
-
_mergeConfig(...configs: Array<RunnableConfig | undefined>): Promise<Partial<RunnableConfig
|
|
90
|
+
_mergeConfig(...configs: Array<RunnableConfig | undefined>): Promise<Partial<RunnableConfig<Record<string, any>>>>;
|
|
91
91
|
}
|
|
92
92
|
export {};
|
|
@@ -43,12 +43,12 @@ export interface Node {
|
|
|
43
43
|
data: RunnableIOSchema | RunnableInterface;
|
|
44
44
|
metadata?: Record<string, any>;
|
|
45
45
|
}
|
|
46
|
-
export interface RunnableConfig extends BaseCallbackConfig {
|
|
46
|
+
export interface RunnableConfig<ConfigurableFieldType extends Record<string, any> = Record<string, any>> extends BaseCallbackConfig {
|
|
47
47
|
/**
|
|
48
48
|
* Runtime values for attributes previously made configurable on this Runnable,
|
|
49
49
|
* or sub-Runnables.
|
|
50
50
|
*/
|
|
51
|
-
configurable?:
|
|
51
|
+
configurable?: ConfigurableFieldType;
|
|
52
52
|
/**
|
|
53
53
|
* Maximum number of times a call can recurse. If not provided, defaults to 25.
|
|
54
54
|
*/
|
|
@@ -309,8 +309,14 @@ class FakeListChatModel extends chat_models_js_1.BaseChatModel {
|
|
|
309
309
|
static lc_name() {
|
|
310
310
|
return "FakeListChatModel";
|
|
311
311
|
}
|
|
312
|
-
constructor(
|
|
313
|
-
super(
|
|
312
|
+
constructor(params) {
|
|
313
|
+
super(params);
|
|
314
|
+
Object.defineProperty(this, "lc_serializable", {
|
|
315
|
+
enumerable: true,
|
|
316
|
+
configurable: true,
|
|
317
|
+
writable: true,
|
|
318
|
+
value: true
|
|
319
|
+
});
|
|
314
320
|
Object.defineProperty(this, "responses", {
|
|
315
321
|
enumerable: true,
|
|
316
322
|
configurable: true,
|
|
@@ -335,6 +341,7 @@ class FakeListChatModel extends chat_models_js_1.BaseChatModel {
|
|
|
335
341
|
writable: true,
|
|
336
342
|
value: false
|
|
337
343
|
});
|
|
344
|
+
const { responses, sleep, emitCustomEvent } = params;
|
|
338
345
|
this.responses = responses;
|
|
339
346
|
this.sleep = sleep;
|
|
340
347
|
this.emitCustomEvent = emitCustomEvent ?? this.emitCustomEvent;
|
|
@@ -116,11 +116,12 @@ export interface FakeListChatModelCallOptions extends BaseChatModelCallOptions {
|
|
|
116
116
|
*/
|
|
117
117
|
export declare class FakeListChatModel extends BaseChatModel<FakeListChatModelCallOptions> {
|
|
118
118
|
static lc_name(): string;
|
|
119
|
+
lc_serializable: boolean;
|
|
119
120
|
responses: string[];
|
|
120
121
|
i: number;
|
|
121
122
|
sleep?: number;
|
|
122
123
|
emitCustomEvent: boolean;
|
|
123
|
-
constructor(
|
|
124
|
+
constructor(params: FakeChatInput);
|
|
124
125
|
_combineLLMOutput(): never[];
|
|
125
126
|
_llmType(): string;
|
|
126
127
|
_generate(_messages: BaseMessage[], options?: this["ParsedCallOptions"], runManager?: CallbackManagerForLLMRun): Promise<ChatResult>;
|
|
@@ -299,8 +299,14 @@ export class FakeListChatModel extends BaseChatModel {
|
|
|
299
299
|
static lc_name() {
|
|
300
300
|
return "FakeListChatModel";
|
|
301
301
|
}
|
|
302
|
-
constructor(
|
|
303
|
-
super(
|
|
302
|
+
constructor(params) {
|
|
303
|
+
super(params);
|
|
304
|
+
Object.defineProperty(this, "lc_serializable", {
|
|
305
|
+
enumerable: true,
|
|
306
|
+
configurable: true,
|
|
307
|
+
writable: true,
|
|
308
|
+
value: true
|
|
309
|
+
});
|
|
304
310
|
Object.defineProperty(this, "responses", {
|
|
305
311
|
enumerable: true,
|
|
306
312
|
configurable: true,
|
|
@@ -325,6 +331,7 @@ export class FakeListChatModel extends BaseChatModel {
|
|
|
325
331
|
writable: true,
|
|
326
332
|
value: false
|
|
327
333
|
});
|
|
334
|
+
const { responses, sleep, emitCustomEvent } = params;
|
|
328
335
|
this.responses = responses;
|
|
329
336
|
this.sleep = sleep;
|
|
330
337
|
this.emitCustomEvent = emitCustomEvent ?? this.emitCustomEvent;
|