langchain 0.0.201 → 0.0.202
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/util/stream.cjs +15 -85
- package/dist/util/stream.d.ts +1 -15
- package/dist/util/stream.js +1 -83
- package/dist/vectorstores/xata.cjs +1 -1
- package/dist/vectorstores/xata.js +1 -1
- package/package.json +4 -4
package/dist/util/stream.cjs
CHANGED
|
@@ -1,87 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*/
|
|
8
|
-
class IterableReadableStream extends ReadableStream {
|
|
9
|
-
constructor() {
|
|
10
|
-
super(...arguments);
|
|
11
|
-
Object.defineProperty(this, "reader", {
|
|
12
|
-
enumerable: true,
|
|
13
|
-
configurable: true,
|
|
14
|
-
writable: true,
|
|
15
|
-
value: void 0
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
ensureReader() {
|
|
19
|
-
if (!this.reader) {
|
|
20
|
-
this.reader = this.getReader();
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
async next() {
|
|
24
|
-
this.ensureReader();
|
|
25
|
-
try {
|
|
26
|
-
const result = await this.reader.read();
|
|
27
|
-
if (result.done)
|
|
28
|
-
this.reader.releaseLock(); // release lock when stream becomes closed
|
|
29
|
-
return {
|
|
30
|
-
done: result.done,
|
|
31
|
-
value: result.value, // Cloudflare Workers typing fix
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
catch (e) {
|
|
35
|
-
this.reader.releaseLock(); // release lock when stream becomes errored
|
|
36
|
-
throw e;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
async return() {
|
|
40
|
-
this.ensureReader();
|
|
41
|
-
const cancelPromise = this.reader.cancel(); // cancel first, but don't await yet
|
|
42
|
-
this.reader.releaseLock(); // release lock first
|
|
43
|
-
await cancelPromise; // now await it
|
|
44
|
-
return { done: true, value: undefined }; // This cast fixes TS typing, and convention is to ignore final chunk value anyway
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
45
7
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
return reader.read().then(({ done, value }) => {
|
|
57
|
-
// When no more data needs to be consumed, close the stream
|
|
58
|
-
if (done) {
|
|
59
|
-
controller.close();
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
// Enqueue the next data chunk into our target stream
|
|
63
|
-
controller.enqueue(value);
|
|
64
|
-
return pump();
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
},
|
|
68
|
-
cancel() {
|
|
69
|
-
reader.releaseLock();
|
|
70
|
-
},
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
static fromAsyncGenerator(generator) {
|
|
74
|
-
return new IterableReadableStream({
|
|
75
|
-
async pull(controller) {
|
|
76
|
-
const { value, done } = await generator.next();
|
|
77
|
-
// When no more data needs to be consumed, close the stream
|
|
78
|
-
if (done) {
|
|
79
|
-
controller.close();
|
|
80
|
-
}
|
|
81
|
-
// Fix: `else if (value)` will hang the streaming when nullish value (e.g. empty string) is pulled
|
|
82
|
-
controller.enqueue(value);
|
|
83
|
-
},
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
exports.IterableReadableStream = IterableReadableStream;
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("@langchain/core/utils/stream"), exports);
|
package/dist/util/stream.d.ts
CHANGED
|
@@ -1,15 +1 @@
|
|
|
1
|
-
export
|
|
2
|
-
reader: ReadableStreamDefaultReader<T>;
|
|
3
|
-
ensureReader(): void;
|
|
4
|
-
next(): Promise<{
|
|
5
|
-
done: boolean;
|
|
6
|
-
value: T;
|
|
7
|
-
}>;
|
|
8
|
-
return(): Promise<{
|
|
9
|
-
done: boolean;
|
|
10
|
-
value: T;
|
|
11
|
-
}>;
|
|
12
|
-
[Symbol.asyncIterator](): this;
|
|
13
|
-
static fromReadableStream<T>(stream: ReadableStream<T>): IterableReadableStream<T>;
|
|
14
|
-
static fromAsyncGenerator<T>(generator: AsyncGenerator<T>): IterableReadableStream<T>;
|
|
15
|
-
}
|
|
1
|
+
export * from "@langchain/core/utils/stream";
|
package/dist/util/stream.js
CHANGED
|
@@ -1,83 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Support async iterator syntax for ReadableStreams in all environments.
|
|
3
|
-
* Source: https://github.com/MattiasBuelens/web-streams-polyfill/pull/122#issuecomment-1627354490
|
|
4
|
-
*/
|
|
5
|
-
export class IterableReadableStream extends ReadableStream {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(...arguments);
|
|
8
|
-
Object.defineProperty(this, "reader", {
|
|
9
|
-
enumerable: true,
|
|
10
|
-
configurable: true,
|
|
11
|
-
writable: true,
|
|
12
|
-
value: void 0
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
ensureReader() {
|
|
16
|
-
if (!this.reader) {
|
|
17
|
-
this.reader = this.getReader();
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
async next() {
|
|
21
|
-
this.ensureReader();
|
|
22
|
-
try {
|
|
23
|
-
const result = await this.reader.read();
|
|
24
|
-
if (result.done)
|
|
25
|
-
this.reader.releaseLock(); // release lock when stream becomes closed
|
|
26
|
-
return {
|
|
27
|
-
done: result.done,
|
|
28
|
-
value: result.value, // Cloudflare Workers typing fix
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
catch (e) {
|
|
32
|
-
this.reader.releaseLock(); // release lock when stream becomes errored
|
|
33
|
-
throw e;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
async return() {
|
|
37
|
-
this.ensureReader();
|
|
38
|
-
const cancelPromise = this.reader.cancel(); // cancel first, but don't await yet
|
|
39
|
-
this.reader.releaseLock(); // release lock first
|
|
40
|
-
await cancelPromise; // now await it
|
|
41
|
-
return { done: true, value: undefined }; // This cast fixes TS typing, and convention is to ignore final chunk value anyway
|
|
42
|
-
}
|
|
43
|
-
[Symbol.asyncIterator]() {
|
|
44
|
-
return this;
|
|
45
|
-
}
|
|
46
|
-
static fromReadableStream(stream) {
|
|
47
|
-
// From https://developer.mozilla.org/en-US/docs/Web/API/Streams_API/Using_readable_streams#reading_the_stream
|
|
48
|
-
const reader = stream.getReader();
|
|
49
|
-
return new IterableReadableStream({
|
|
50
|
-
start(controller) {
|
|
51
|
-
return pump();
|
|
52
|
-
function pump() {
|
|
53
|
-
return reader.read().then(({ done, value }) => {
|
|
54
|
-
// When no more data needs to be consumed, close the stream
|
|
55
|
-
if (done) {
|
|
56
|
-
controller.close();
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
// Enqueue the next data chunk into our target stream
|
|
60
|
-
controller.enqueue(value);
|
|
61
|
-
return pump();
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
},
|
|
65
|
-
cancel() {
|
|
66
|
-
reader.releaseLock();
|
|
67
|
-
},
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
static fromAsyncGenerator(generator) {
|
|
71
|
-
return new IterableReadableStream({
|
|
72
|
-
async pull(controller) {
|
|
73
|
-
const { value, done } = await generator.next();
|
|
74
|
-
// When no more data needs to be consumed, close the stream
|
|
75
|
-
if (done) {
|
|
76
|
-
controller.close();
|
|
77
|
-
}
|
|
78
|
-
// Fix: `else if (value)` will hang the streaming when nullish value (e.g. empty string) is pulled
|
|
79
|
-
controller.enqueue(value);
|
|
80
|
-
},
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
}
|
|
1
|
+
export * from "@langchain/core/utils/stream";
|
|
@@ -89,7 +89,7 @@ class XataVectorSearch extends base_js_1.VectorStore {
|
|
|
89
89
|
* @returns Promise resolving to an array of tuples, each containing a Document and its score.
|
|
90
90
|
*/
|
|
91
91
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
92
|
-
const records = await this.client.db[this.table].vectorSearch("embedding", query, {
|
|
92
|
+
const { records } = await this.client.db[this.table].vectorSearch("embedding", query, {
|
|
93
93
|
size: k,
|
|
94
94
|
filter,
|
|
95
95
|
});
|
|
@@ -86,7 +86,7 @@ export class XataVectorSearch extends VectorStore {
|
|
|
86
86
|
* @returns Promise resolving to an array of tuples, each containing a Document and its score.
|
|
87
87
|
*/
|
|
88
88
|
async similaritySearchVectorWithScore(query, k, filter) {
|
|
89
|
-
const records = await this.client.db[this.table].vectorSearch("embedding", query, {
|
|
89
|
+
const { records } = await this.client.db[this.table].vectorSearch("embedding", query, {
|
|
90
90
|
size: k,
|
|
91
91
|
filter,
|
|
92
92
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "langchain",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.202",
|
|
4
4
|
"description": "Typescript bindings for langchain",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -944,7 +944,7 @@
|
|
|
944
944
|
"@vercel/kv": "^0.2.3",
|
|
945
945
|
"@vercel/postgres": "^0.5.0",
|
|
946
946
|
"@writerai/writer-sdk": "^0.40.2",
|
|
947
|
-
"@xata.io/client": "^0.
|
|
947
|
+
"@xata.io/client": "^0.28.0",
|
|
948
948
|
"@xenova/transformers": "^2.5.4",
|
|
949
949
|
"@zilliz/milvus2-sdk-node": ">=2.2.11",
|
|
950
950
|
"apify-client": "^2.7.1",
|
|
@@ -1066,7 +1066,7 @@
|
|
|
1066
1066
|
"@vercel/kv": "^0.2.3",
|
|
1067
1067
|
"@vercel/postgres": "^0.5.0",
|
|
1068
1068
|
"@writerai/writer-sdk": "^0.40.2",
|
|
1069
|
-
"@xata.io/client": "^0.
|
|
1069
|
+
"@xata.io/client": "^0.28.0",
|
|
1070
1070
|
"@xenova/transformers": "^2.5.4",
|
|
1071
1071
|
"@zilliz/milvus2-sdk-node": ">=2.2.7",
|
|
1072
1072
|
"apify-client": "^2.7.1",
|
|
@@ -1432,7 +1432,7 @@
|
|
|
1432
1432
|
},
|
|
1433
1433
|
"dependencies": {
|
|
1434
1434
|
"@anthropic-ai/sdk": "^0.9.1",
|
|
1435
|
-
"@langchain/core": "~0.0.
|
|
1435
|
+
"@langchain/core": "~0.0.9",
|
|
1436
1436
|
"binary-extensions": "^2.2.0",
|
|
1437
1437
|
"expr-eval": "^2.0.2",
|
|
1438
1438
|
"flat": "^5.0.2",
|