@litert-lm/core 0.16.0 → 0.17.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/README.md +164 -0
- package/dist/cleanup.d.ts +25 -0
- package/dist/cleanup.d.ts.map +1 -0
- package/dist/cleanup.js +36 -0
- package/dist/cleanup.js.map +1 -0
- package/dist/conversation.d.ts +51 -0
- package/dist/conversation.d.ts.map +1 -0
- package/dist/conversation.js +171 -0
- package/dist/conversation.js.map +1 -0
- package/dist/conversation_config.d.ts +157 -0
- package/dist/conversation_config.d.ts.map +1 -0
- package/dist/conversation_config.js +42 -0
- package/dist/conversation_config.js.map +1 -0
- package/dist/embedding_engine.d.ts +51 -0
- package/dist/embedding_engine.d.ts.map +1 -0
- package/dist/embedding_engine.js +198 -0
- package/dist/embedding_engine.js.map +1 -0
- package/dist/embedding_engine_settings.d.ts +39 -0
- package/dist/embedding_engine_settings.d.ts.map +1 -0
- package/dist/embedding_engine_settings.js +35 -0
- package/dist/embedding_engine_settings.js.map +1 -0
- package/dist/engine.d.ts +37 -0
- package/dist/engine.d.ts.map +1 -0
- package/dist/engine.js +203 -0
- package/dist/engine.js.map +1 -0
- package/dist/engine_settings.d.ts +57 -0
- package/dist/engine_settings.d.ts.map +1 -0
- package/dist/engine_settings.js +114 -0
- package/dist/engine_settings.js.map +1 -0
- package/dist/global_litertlm.d.ts +66 -0
- package/dist/global_litertlm.d.ts.map +1 -0
- package/dist/global_litertlm.js +85 -0
- package/dist/global_litertlm.js.map +1 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +33 -0
- package/dist/index.js.map +1 -0
- package/dist/litertlm_web.d.ts +32 -0
- package/dist/litertlm_web.d.ts.map +1 -0
- package/dist/litertlm_web.js +75 -0
- package/dist/litertlm_web.js.map +1 -0
- package/dist/load.d.ts +28 -0
- package/dist/load.d.ts.map +1 -0
- package/dist/load.js +50 -0
- package/dist/load.js.map +1 -0
- package/dist/load_litertlm.d.ts +58 -0
- package/dist/load_litertlm.d.ts.map +1 -0
- package/dist/load_litertlm.js +87 -0
- package/dist/load_litertlm.js.map +1 -0
- package/dist/mutex.d.ts +45 -0
- package/dist/mutex.d.ts.map +1 -0
- package/dist/mutex.js +62 -0
- package/dist/mutex.js.map +1 -0
- package/dist/orchestration/auto_tool_chat.d.ts +82 -0
- package/dist/orchestration/auto_tool_chat.d.ts.map +1 -0
- package/dist/orchestration/auto_tool_chat.js +304 -0
- package/dist/orchestration/auto_tool_chat.js.map +1 -0
- package/dist/orchestration/chat_interface.d.ts +30 -0
- package/dist/orchestration/chat_interface.d.ts.map +1 -0
- package/dist/orchestration/chat_interface.js +17 -0
- package/dist/orchestration/chat_interface.js.map +1 -0
- package/dist/orchestration/webmcp_tool.d.ts +41 -0
- package/dist/orchestration/webmcp_tool.d.ts.map +1 -0
- package/dist/orchestration/webmcp_tool.js +32 -0
- package/dist/orchestration/webmcp_tool.js.map +1 -0
- package/dist/readable_stream_data_stream_wrapper.d.ts +44 -0
- package/dist/readable_stream_data_stream_wrapper.d.ts.map +1 -0
- package/dist/readable_stream_data_stream_wrapper.js +315 -0
- package/dist/readable_stream_data_stream_wrapper.js.map +1 -0
- package/dist/session.d.ts +51 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +107 -0
- package/dist/session.js.map +1 -0
- package/dist/session_config.d.ts +60 -0
- package/dist/session_config.d.ts.map +1 -0
- package/dist/session_config.js +109 -0
- package/dist/session_config.js.map +1 -0
- package/dist/stream_utils.d.ts +25 -0
- package/dist/stream_utils.d.ts.map +1 -0
- package/dist/stream_utils.js +95 -0
- package/dist/stream_utils.js.map +1 -0
- package/dist/testing/fakes.d.ts +67 -0
- package/dist/testing/fakes.d.ts.map +1 -0
- package/dist/testing/fakes.js +125 -0
- package/dist/testing/fakes.js.map +1 -0
- package/dist/testing/index.d.ts +17 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +17 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/types.d.ts +42 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +17 -0
- package/dist/types.js.map +1 -0
- package/dist/url_path_utils.d.ts +28 -0
- package/dist/url_path_utils.d.ts.map +1 -0
- package/dist/url_path_utils.js +34 -0
- package/dist/url_path_utils.js.map +1 -0
- package/dist/wasm_binding_types.d.ts +473 -0
- package/dist/wasm_binding_types.d.ts.map +1 -0
- package/dist/wasm_binding_types.js +47 -0
- package/dist/wasm_binding_types.js.map +1 -0
- package/dist/wasm_feature_detect.d.ts +45 -0
- package/dist/wasm_feature_detect.d.ts.map +1 -0
- package/dist/wasm_feature_detect.js +139 -0
- package/dist/wasm_feature_detect.js.map +1 -0
- package/dist/wasm_utils.d.ts +30 -0
- package/dist/wasm_utils.d.ts.map +1 -0
- package/dist/wasm_utils.js +41 -0
- package/dist/wasm_utils.js.map +1 -0
- package/package.json +3 -2
- package/wasm/litertlm_wasm_asyncify_internal.js +8749 -0
- package/wasm/litertlm_wasm_asyncify_internal.wasm +0 -0
- package/wasm/litertlm_wasm_compat_asyncify_internal.js +8758 -0
- package/wasm/litertlm_wasm_compat_asyncify_internal.wasm +0 -0
- package/wasm/litertlm_wasm_compat_internal.js +8543 -0
- package/wasm/litertlm_wasm_compat_internal.wasm +0 -0
- package/wasm/litertlm_wasm_internal.js +8532 -0
- package/wasm/litertlm_wasm_internal.wasm +0 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Google LLC
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
export * from './fakes.js';
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,YAAY,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Google LLC
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* Recursively makes all properties of T required.
|
|
18
|
+
*/
|
|
19
|
+
export type RecursiveRequired<T> = T extends Set<infer U> ? Set<RecursiveRequired<U>> : T extends object ? {
|
|
20
|
+
[K in keyof T]-?: RecursiveRequired<T[K]>;
|
|
21
|
+
} : T;
|
|
22
|
+
/**
|
|
23
|
+
* Primitive JSON value.
|
|
24
|
+
*
|
|
25
|
+
* This includes 'null' in order to match the JSON spec.
|
|
26
|
+
*/
|
|
27
|
+
export type JsonPrimitive = string | number | boolean | null;
|
|
28
|
+
/**
|
|
29
|
+
* Array of JSON values.
|
|
30
|
+
*/
|
|
31
|
+
export type JsonArray = JsonValue[];
|
|
32
|
+
/**
|
|
33
|
+
* Object of JSON values.
|
|
34
|
+
*/
|
|
35
|
+
export interface JsonObject {
|
|
36
|
+
[key: string]: JsonValue | undefined;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Any valid JSON value.
|
|
40
|
+
*/
|
|
41
|
+
export type JsonValue = JsonPrimitive | JsonArray | JsonObject;
|
|
42
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAC7B,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,GAClD,CAAC,SAAS,MAAM,GAAG;KAClB,CAAC,IAAI,MAAM,CAAC,CAAE,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3C,GAAG,CAAC,CAAC;AAEN;;;;GAIG;AAEH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAC,MAAM,GAAC,OAAO,GAAC,IAAI,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAC,SAAS,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,aAAa,GAAC,SAAS,GAAC,UAAU,CAAC"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Google LLC
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Google LLC
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* Type for a path to a resource.
|
|
18
|
+
*/
|
|
19
|
+
export type UrlPath = string;
|
|
20
|
+
/**
|
|
21
|
+
* Returns the string representation of the given url path.
|
|
22
|
+
*/
|
|
23
|
+
export declare function pathToString(path: UrlPath): string;
|
|
24
|
+
/**
|
|
25
|
+
* Appends a path segment to the given url path.
|
|
26
|
+
*/
|
|
27
|
+
export declare function appendPathSegment(path: UrlPath, segment: string): string;
|
|
28
|
+
//# sourceMappingURL=url_path_utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url_path_utils.d.ts","sourceRoot":"","sources":["../src/url_path_utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAElD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAQxE"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Google LLC
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* Returns the string representation of the given url path.
|
|
18
|
+
*/
|
|
19
|
+
export function pathToString(path) {
|
|
20
|
+
return path;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Appends a path segment to the given url path.
|
|
24
|
+
*/
|
|
25
|
+
export function appendPathSegment(path, segment) {
|
|
26
|
+
if (!path)
|
|
27
|
+
return segment;
|
|
28
|
+
if (!segment)
|
|
29
|
+
return path;
|
|
30
|
+
const pathWithSlash = path.endsWith('/') ? path : path + '/';
|
|
31
|
+
const segmentWithoutSlash = segment.startsWith('/') ? segment.substring(1) : segment;
|
|
32
|
+
return pathWithSlash + segmentWithoutSlash;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=url_path_utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url_path_utils.js","sourceRoot":"","sources":["../src/url_path_utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAa,EAAE,OAAe;IAC9D,IAAI,CAAC,IAAI;QAAE,OAAO,OAAO,CAAC;IAC1B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC;IAC7D,MAAM,mBAAmB,GACrB,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC7D,OAAO,aAAa,GAAG,mBAAmB,CAAC;AAC7C,CAAC"}
|
|
@@ -0,0 +1,473 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Google LLC
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { WasmModule } from '@litertjs/wasm-utils';
|
|
17
|
+
import { type ReadableStreamDataStreamWrapper } from './readable_stream_data_stream_wrapper.js';
|
|
18
|
+
/**
|
|
19
|
+
* Backend types for LiteRT-LM.
|
|
20
|
+
*/
|
|
21
|
+
export declare const Backend: {
|
|
22
|
+
UNSPECIFIED: number;
|
|
23
|
+
CPU_ARTISAN: number;
|
|
24
|
+
GPU_ARTISAN: number;
|
|
25
|
+
CPU: number;
|
|
26
|
+
GPU: number;
|
|
27
|
+
GOOGLE_TENSOR_ARTISAN: number;
|
|
28
|
+
NPU: number;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* A LiteRT-LM Backend.
|
|
32
|
+
*/
|
|
33
|
+
export type Backend = (typeof Backend)[keyof typeof Backend];
|
|
34
|
+
/**
|
|
35
|
+
* An object that must be manually deleted to free its memory.
|
|
36
|
+
*/
|
|
37
|
+
export declare interface Deletable {
|
|
38
|
+
delete(): void;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* A C++ vector of elements.
|
|
42
|
+
*/
|
|
43
|
+
export declare interface EmscriptenVector<T> extends Deletable {
|
|
44
|
+
size(): number;
|
|
45
|
+
get(index: number): T;
|
|
46
|
+
push_back(item: T): void;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* A C++ vector of uint32_t.
|
|
50
|
+
*/
|
|
51
|
+
export declare interface VectorUint32Constructor {
|
|
52
|
+
new (): EmscriptenVector<number>;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* A C++ vector of int.
|
|
56
|
+
*/
|
|
57
|
+
export declare interface VectorIntConstructor {
|
|
58
|
+
new (): EmscriptenVector<number>;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* A C++ vector of vector of int.
|
|
62
|
+
*/
|
|
63
|
+
export declare interface VectorVectorIntConstructor {
|
|
64
|
+
new (): EmscriptenVector<EmscriptenVector<number>>;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* A C++ vector of float.
|
|
68
|
+
*/
|
|
69
|
+
export declare interface VectorFloatConstructor {
|
|
70
|
+
new (): EmscriptenVector<number>;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* A C++ vector of EmbeddingResponse.
|
|
74
|
+
*/
|
|
75
|
+
export declare interface VectorEmbeddingResponseConstructor {
|
|
76
|
+
new (): EmscriptenVector<WasmEmbeddingResponse>;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* A C++ enum value in Wasm.
|
|
80
|
+
*/
|
|
81
|
+
export declare interface EmscriptenEnumElement<T> {
|
|
82
|
+
value: T;
|
|
83
|
+
}
|
|
84
|
+
type EmscriptenEnum<T extends object> = {
|
|
85
|
+
[K in keyof T]: EmscriptenEnumElement<T[K]>;
|
|
86
|
+
};
|
|
87
|
+
declare interface ModelAssetsConstructor {
|
|
88
|
+
new (...args: never[]): ModelAssets;
|
|
89
|
+
create(modelPath: string): ModelAssets;
|
|
90
|
+
createStreaming(stream: ReadableStreamDataStream): ModelAssets;
|
|
91
|
+
}
|
|
92
|
+
declare const ModelAssetsBrand: unique symbol;
|
|
93
|
+
/**
|
|
94
|
+
* LiteRT-LM ModelAssets
|
|
95
|
+
*/
|
|
96
|
+
export declare interface ModelAssets extends Deletable {
|
|
97
|
+
[ModelAssetsBrand]: void;
|
|
98
|
+
getPath(): string;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* LiteRT-LM Backend enum values
|
|
102
|
+
*/
|
|
103
|
+
declare interface EngineSettingsConstructor {
|
|
104
|
+
new (...args: never[]): EngineSettings;
|
|
105
|
+
createDefault(modelAssets: ModelAssets, backend: EmscriptenEnumElement<Backend>): EngineSettings;
|
|
106
|
+
}
|
|
107
|
+
declare const EngineSettingsBrand: unique symbol;
|
|
108
|
+
/**
|
|
109
|
+
* LiteRT-LM EngineSettings
|
|
110
|
+
*/
|
|
111
|
+
export declare interface EngineSettings extends Deletable {
|
|
112
|
+
[EngineSettingsBrand]: void;
|
|
113
|
+
getMutableMainExecutorSettings(): LlmExecutorSettings;
|
|
114
|
+
getParallelFileSectionLoading(): boolean;
|
|
115
|
+
setParallelFileSectionLoading(parallelFileSectionLoading: boolean): void;
|
|
116
|
+
getSingleThreadedExecution(): boolean;
|
|
117
|
+
setSingleThreadedExecution(singleThreadedExecution: boolean): void;
|
|
118
|
+
enableBenchmark(): void;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* LiteRT-LM CpuConfig
|
|
122
|
+
*/
|
|
123
|
+
export declare interface CpuConfig {
|
|
124
|
+
kv_increment_size: number;
|
|
125
|
+
prefill_chunk_size: number;
|
|
126
|
+
number_of_threads: number;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* LiteRT-LM GpuConfig
|
|
130
|
+
*/
|
|
131
|
+
export declare interface GpuConfig {
|
|
132
|
+
max_top_k: number;
|
|
133
|
+
external_tensor_mode: boolean;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* LiteRT-LM GpuArtisanConfig
|
|
137
|
+
*/
|
|
138
|
+
export declare interface GpuArtisanConfig {
|
|
139
|
+
num_output_candidates: number;
|
|
140
|
+
wait_for_weight_uploads: boolean;
|
|
141
|
+
num_decode_steps_per_sync: number;
|
|
142
|
+
sequence_batch_size: number;
|
|
143
|
+
supported_lora_ranks: EmscriptenVector<number>;
|
|
144
|
+
max_top_k: number;
|
|
145
|
+
enable_decode_logits: boolean;
|
|
146
|
+
enable_external_embeddings: boolean;
|
|
147
|
+
use_submodel: boolean;
|
|
148
|
+
use_autosized_ringbuffers: boolean;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* LiteRT-LM AdvancedSettings
|
|
152
|
+
*/
|
|
153
|
+
export declare interface AdvancedSettings {
|
|
154
|
+
prefill_batch_sizes: number[];
|
|
155
|
+
num_output_candidates: number;
|
|
156
|
+
configure_magic_numbers: boolean;
|
|
157
|
+
verify_magic_numbers: boolean;
|
|
158
|
+
clear_kv_cache_before_prefill: boolean;
|
|
159
|
+
num_logits_to_print_after_decode: number;
|
|
160
|
+
gpu_madvise_original_shared_tensors: boolean;
|
|
161
|
+
is_benchmark: boolean;
|
|
162
|
+
preferred_device_substr: string;
|
|
163
|
+
num_threads_to_upload: number;
|
|
164
|
+
num_threads_to_compile: number;
|
|
165
|
+
convert_weights_on_gpu: boolean;
|
|
166
|
+
optimize_shader_compilation: boolean;
|
|
167
|
+
share_constant_tensors: boolean;
|
|
168
|
+
}
|
|
169
|
+
declare const ExecutorSettingsBaseBrand: unique symbol;
|
|
170
|
+
/**
|
|
171
|
+
* LiteRT-LM ExecutorSettingsBase
|
|
172
|
+
*/
|
|
173
|
+
export declare interface ExecutorSettingsBase extends Deletable {
|
|
174
|
+
[ExecutorSettingsBaseBrand]: void;
|
|
175
|
+
getCacheDir(): string;
|
|
176
|
+
setCacheDir(cacheDir: string): void;
|
|
177
|
+
getBackend(): EmscriptenEnumElement<Backend>;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* LiteRT-LM LlmExecutorSettings constructor
|
|
181
|
+
*/
|
|
182
|
+
declare interface LlmExecutorSettingsConstructor {
|
|
183
|
+
new (...args: never[]): LlmExecutorSettings;
|
|
184
|
+
}
|
|
185
|
+
declare const LlmExecutorSettingsBrand: unique symbol;
|
|
186
|
+
/**
|
|
187
|
+
* LiteRT-LM LlmExecutorSettings
|
|
188
|
+
*/
|
|
189
|
+
export declare interface LlmExecutorSettings extends ExecutorSettingsBase {
|
|
190
|
+
[LlmExecutorSettingsBrand]: void;
|
|
191
|
+
getMaxNumTokens(): number;
|
|
192
|
+
setMaxNumTokens(maxNumTokens: number): void;
|
|
193
|
+
setBackendConfigCpu(cpuConfig: CpuConfig): void;
|
|
194
|
+
setBackendConfigGpu(gpuConfig: GpuConfig): void;
|
|
195
|
+
setBackendConfigGpuArtisan(gpuArtisanConfig: GpuArtisanConfig): void;
|
|
196
|
+
getBackendConfigCpu(): CpuConfig;
|
|
197
|
+
getBackendConfigGpu(): GpuConfig;
|
|
198
|
+
getBackendConfigGpuArtisan(): GpuArtisanConfig;
|
|
199
|
+
setSamplerBackend(backend: EmscriptenEnumElement<Backend>): void;
|
|
200
|
+
getSamplerBackend(): EmscriptenEnumElement<Backend>;
|
|
201
|
+
setAdvancedSettings(advancedSettings: AdvancedSettings): void;
|
|
202
|
+
getAdvancedSettings(): AdvancedSettings;
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* LiteRT-LM Engine constructor
|
|
206
|
+
*/
|
|
207
|
+
declare interface EngineConstructor {
|
|
208
|
+
new (...args: never[]): Engine;
|
|
209
|
+
createEngine(engineSettings: EngineSettings, inputPromptAsHint: string): Promise<Engine>;
|
|
210
|
+
createStreaming(engineSettings: EngineSettings, inputPromptAsHint: string): Promise<Engine>;
|
|
211
|
+
}
|
|
212
|
+
declare const EngineBrand: unique symbol;
|
|
213
|
+
/**
|
|
214
|
+
* LiteRT-LM Engine
|
|
215
|
+
*/
|
|
216
|
+
export declare interface Engine extends Deletable {
|
|
217
|
+
[EngineBrand]: void;
|
|
218
|
+
createSession(sessionConfig: SessionConfig): Session;
|
|
219
|
+
getEngineSettings(): EngineSettings;
|
|
220
|
+
waitUntilDone(): Promise<void>;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* LiteRT-LM SamplerType enum values
|
|
224
|
+
*/
|
|
225
|
+
export declare const SamplerType: {
|
|
226
|
+
readonly TYPE_UNSPECIFIED: 0;
|
|
227
|
+
readonly TOP_K: 1;
|
|
228
|
+
readonly TOP_P: 2;
|
|
229
|
+
readonly GREEDY: 3;
|
|
230
|
+
};
|
|
231
|
+
/**
|
|
232
|
+
* LiteRT-LM SamplerType
|
|
233
|
+
*/
|
|
234
|
+
export type SamplerType = typeof SamplerType[keyof typeof SamplerType];
|
|
235
|
+
/**
|
|
236
|
+
* LiteRT-LM SamplerParameters
|
|
237
|
+
*/
|
|
238
|
+
export declare interface SamplerParameters {
|
|
239
|
+
type(): EmscriptenEnumElement<SamplerType>;
|
|
240
|
+
setType(type: EmscriptenEnumElement<SamplerType>): void;
|
|
241
|
+
k(): number;
|
|
242
|
+
setK(k: number): void;
|
|
243
|
+
p(): number;
|
|
244
|
+
setP(p: number): void;
|
|
245
|
+
temperature(): number;
|
|
246
|
+
setTemperature(temperature: number): void;
|
|
247
|
+
seed(): number;
|
|
248
|
+
setSeed(seed: number): void;
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* LiteRT-LM SessionConfig constructor
|
|
252
|
+
*/
|
|
253
|
+
declare interface SessionConfigConstructor {
|
|
254
|
+
new (...args: never[]): SessionConfig;
|
|
255
|
+
createDefault(): SessionConfig;
|
|
256
|
+
}
|
|
257
|
+
declare const SessionConfigBrand: unique symbol;
|
|
258
|
+
/**
|
|
259
|
+
* LiteRT-LM SessionConfig
|
|
260
|
+
*/
|
|
261
|
+
export declare interface SessionConfig extends Deletable {
|
|
262
|
+
[SessionConfigBrand]: void;
|
|
263
|
+
getAudioModalityEnabled(): boolean;
|
|
264
|
+
setAudioModalityEnabled(audioModalityEnabled: boolean): void;
|
|
265
|
+
getVisionModalityEnabled(): boolean;
|
|
266
|
+
setVisionModalityEnabled(visionModalityEnabled: boolean): void;
|
|
267
|
+
getMutableSamplerParams(): SamplerParameters;
|
|
268
|
+
getStopTokenIds(): EmscriptenVector<EmscriptenVector<number>>;
|
|
269
|
+
setStopTokenIds(stopTokenIds: EmscriptenVector<EmscriptenVector<number>>): void;
|
|
270
|
+
getStartTokenId(): number;
|
|
271
|
+
setStartTokenId(startTokenId: number): void;
|
|
272
|
+
getNumOutputCandidates(): number;
|
|
273
|
+
setNumOutputCandidates(numOutputCandidates: number): void;
|
|
274
|
+
getSamplerBackend(): EmscriptenEnumElement<Backend>;
|
|
275
|
+
setSamplerBackend(backend: EmscriptenEnumElement<Backend>): void;
|
|
276
|
+
getApplyPromptTemplateInSession(): boolean;
|
|
277
|
+
setApplyPromptTemplateInSession(applyPromptTemplateInSession: boolean): void;
|
|
278
|
+
getUseExternalSampler(): boolean;
|
|
279
|
+
setUseExternalSampler(useExternalSampler: boolean): void;
|
|
280
|
+
getMaxOutputTokens(): number;
|
|
281
|
+
setMaxOutputTokens(maxOutputTokens: number): void;
|
|
282
|
+
}
|
|
283
|
+
declare const SessionBrand: unique symbol;
|
|
284
|
+
/**
|
|
285
|
+
* LiteRT-LM Session
|
|
286
|
+
*/
|
|
287
|
+
export declare interface Session extends Deletable {
|
|
288
|
+
[SessionBrand]: void;
|
|
289
|
+
getSessionConfig(): SessionConfig;
|
|
290
|
+
runPrefill(inputs: string[]): Promise<void>;
|
|
291
|
+
runDecode(): Promise<Responses>;
|
|
292
|
+
cancelProcess(): void;
|
|
293
|
+
clone(): Session;
|
|
294
|
+
}
|
|
295
|
+
declare const ResponsesBrand: unique symbol;
|
|
296
|
+
/**
|
|
297
|
+
* LiteRT-LM Responses
|
|
298
|
+
*/
|
|
299
|
+
export declare interface Responses extends Deletable {
|
|
300
|
+
[ResponsesBrand]: void;
|
|
301
|
+
getTexts(): EmscriptenVector<string>;
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* LiteRT-LM ConversationConfig constructor
|
|
305
|
+
*/
|
|
306
|
+
declare interface ConversationConfigConstructor {
|
|
307
|
+
new (...args: never[]): ConversationConfig;
|
|
308
|
+
createDefault(engine: Engine): ConversationConfig;
|
|
309
|
+
createCustom(engine: Engine, sessionConfig: SessionConfig, enableConstrainedDecoding: boolean, prefillPrefaceOnInit: boolean, filterChannelContentFromKvCache: boolean, prefaceJson: string): ConversationConfig;
|
|
310
|
+
}
|
|
311
|
+
declare const ConversationConfigBrand: unique symbol;
|
|
312
|
+
/**
|
|
313
|
+
* LiteRT-LM ConversationConfig
|
|
314
|
+
*/
|
|
315
|
+
export declare interface ConversationConfig extends Deletable {
|
|
316
|
+
[ConversationConfigBrand]: void;
|
|
317
|
+
}
|
|
318
|
+
/**
|
|
319
|
+
* LiteRT-LM Conversation constructor
|
|
320
|
+
*/
|
|
321
|
+
declare interface ConversationConstructor {
|
|
322
|
+
new (...args: never[]): Conversation;
|
|
323
|
+
create(engine: Engine, config: ConversationConfig): Promise<Conversation>;
|
|
324
|
+
}
|
|
325
|
+
declare const ConversationBrand: unique symbol;
|
|
326
|
+
/**
|
|
327
|
+
* LiteRT-LM Conversation
|
|
328
|
+
*/
|
|
329
|
+
export declare interface Conversation extends Deletable {
|
|
330
|
+
[ConversationBrand]: void;
|
|
331
|
+
sendMessage(messageJson: string): Promise<string>;
|
|
332
|
+
sendMessageAsync(messageJson: string, callback: (chunk: string | null, isDone: boolean, error: string | null) => void): Promise<void>;
|
|
333
|
+
getHistory(): string;
|
|
334
|
+
getTokenCount(): number;
|
|
335
|
+
getBenchmarkInfo(): BenchmarkInfo;
|
|
336
|
+
cancelProcess(): void;
|
|
337
|
+
clone(): Conversation;
|
|
338
|
+
}
|
|
339
|
+
/** Benchmark metadata for tracking decoding efficiency. */
|
|
340
|
+
export declare interface BenchmarkInfo {
|
|
341
|
+
lastPrefillTokensPerSecond: number;
|
|
342
|
+
lastPrefillTokenCount: number;
|
|
343
|
+
lastDecodeTokensPerSecond: number;
|
|
344
|
+
lastDecodeTokenCount: number;
|
|
345
|
+
timeToFirstTokenInSecond: number;
|
|
346
|
+
}
|
|
347
|
+
declare interface ReadableStreamDataStreamConstructor {
|
|
348
|
+
new (...args: never[]): ReadableStreamDataStream;
|
|
349
|
+
create(stream: ReadableStreamDataStreamWrapper): ReadableStreamDataStream;
|
|
350
|
+
}
|
|
351
|
+
declare const ReadableStreamDataStreamBrand: unique symbol;
|
|
352
|
+
/**
|
|
353
|
+
* LiteRT-LM ReadableStreamDataStream.
|
|
354
|
+
*/
|
|
355
|
+
export declare interface ReadableStreamDataStream extends Deletable {
|
|
356
|
+
[ReadableStreamDataStreamBrand]: void;
|
|
357
|
+
}
|
|
358
|
+
type BackendEnum = EmscriptenEnum<{
|
|
359
|
+
UNSPECIFIED: Backend;
|
|
360
|
+
CPU_ARTISAN: Backend;
|
|
361
|
+
GPU_ARTISAN: Backend;
|
|
362
|
+
CPU: Backend;
|
|
363
|
+
GPU: Backend;
|
|
364
|
+
GOOGLE_TENSOR_ARTISAN: Backend;
|
|
365
|
+
NPU: Backend;
|
|
366
|
+
}>;
|
|
367
|
+
/**
|
|
368
|
+
* Input overflow strategies for embedding computations.
|
|
369
|
+
*/
|
|
370
|
+
export declare const InputOverflowStrategy: {
|
|
371
|
+
readonly CHUNK_AND_AVERAGE: 0;
|
|
372
|
+
readonly TRUNCATE: 1;
|
|
373
|
+
readonly ERROR: 2;
|
|
374
|
+
};
|
|
375
|
+
/**
|
|
376
|
+
* An input overflow strategy.
|
|
377
|
+
*/
|
|
378
|
+
export type InputOverflowStrategy = (typeof InputOverflowStrategy)[keyof typeof InputOverflowStrategy];
|
|
379
|
+
/**
|
|
380
|
+
* Options for configuring the embedding computation.
|
|
381
|
+
*/
|
|
382
|
+
export interface EmbeddingOptions {
|
|
383
|
+
normalize?: boolean;
|
|
384
|
+
insertSpecialTokens?: boolean;
|
|
385
|
+
inputOverflowStrategy?: InputOverflowStrategy;
|
|
386
|
+
visionTokensPerImage?: number;
|
|
387
|
+
outputSize?: number;
|
|
388
|
+
}
|
|
389
|
+
/**
|
|
390
|
+
* Wasm-level result of an embedding computation.
|
|
391
|
+
*/
|
|
392
|
+
export interface WasmEmbeddingResponse {
|
|
393
|
+
embedding: EmscriptenVector<number>;
|
|
394
|
+
inputLength: number;
|
|
395
|
+
truncatedLength?: number;
|
|
396
|
+
numChunks: number;
|
|
397
|
+
}
|
|
398
|
+
declare const EmbeddingExecutorSettingsBrand: unique symbol;
|
|
399
|
+
/**
|
|
400
|
+
* LiteRT-LM EmbeddingExecutorSettings
|
|
401
|
+
*/
|
|
402
|
+
export declare interface EmbeddingExecutorSettings extends ExecutorSettingsBase {
|
|
403
|
+
[EmbeddingExecutorSettingsBrand]: void;
|
|
404
|
+
getNumThreads(): number;
|
|
405
|
+
setNumThreads(numThreads: number): void;
|
|
406
|
+
}
|
|
407
|
+
declare interface EmbeddingEngineSettingsConstructor {
|
|
408
|
+
new (...args: never[]): EmbeddingEngineSettings;
|
|
409
|
+
createDefault(modelAssets: ModelAssets, backend: EmscriptenEnumElement<Backend>): EmbeddingEngineSettings;
|
|
410
|
+
createDefaultMultimodal(modelAssets: ModelAssets, backend: EmscriptenEnumElement<Backend>, visionBackend?: EmscriptenEnumElement<Backend>, audioBackend?: EmscriptenEnumElement<Backend>): EmbeddingEngineSettings;
|
|
411
|
+
}
|
|
412
|
+
declare const EmbeddingEngineSettingsBrand: unique symbol;
|
|
413
|
+
/**
|
|
414
|
+
* LiteRT-LM EmbeddingEngineSettings
|
|
415
|
+
*/
|
|
416
|
+
export declare interface EmbeddingEngineSettings extends Deletable {
|
|
417
|
+
[EmbeddingEngineSettingsBrand]: void;
|
|
418
|
+
getMaxInputLength(): number | undefined;
|
|
419
|
+
setMaxInputLength(maxInputLength?: number): void;
|
|
420
|
+
getVisionTokensPerImage(): number | undefined;
|
|
421
|
+
setVisionTokensPerImage(visionTokensPerImage?: number): void;
|
|
422
|
+
getMutableMainExecutorSettings(): EmbeddingExecutorSettings;
|
|
423
|
+
}
|
|
424
|
+
declare interface EmbeddingEngineConstructor {
|
|
425
|
+
new (...args: never[]): EmbeddingEngine;
|
|
426
|
+
createEngine(settings: EmbeddingEngineSettings): Promise<EmbeddingEngine>;
|
|
427
|
+
}
|
|
428
|
+
declare const EmbeddingEngineBrand: unique symbol;
|
|
429
|
+
/**
|
|
430
|
+
* LiteRT-LM EmbeddingEngine
|
|
431
|
+
*/
|
|
432
|
+
export declare interface EmbeddingEngine extends Deletable {
|
|
433
|
+
[EmbeddingEngineBrand]: void;
|
|
434
|
+
computeEmbedding(input: unknown, options: EmbeddingOptions): Promise<WasmEmbeddingResponse>;
|
|
435
|
+
computeEmbeddingBatch(inputs: unknown[], options: EmbeddingOptions): Promise<EmscriptenVector<WasmEmbeddingResponse>>;
|
|
436
|
+
}
|
|
437
|
+
/**
|
|
438
|
+
* Interface for the C++ LiteRt LM bindings.
|
|
439
|
+
*/
|
|
440
|
+
export declare interface LiteRtLmWasm extends WasmModule {
|
|
441
|
+
preinitializedWebGPUDevice?: GPUDevice;
|
|
442
|
+
VectorUint32: VectorUint32Constructor;
|
|
443
|
+
VectorInt: VectorIntConstructor;
|
|
444
|
+
VectorVectorInt: VectorVectorIntConstructor;
|
|
445
|
+
VectorFloat: VectorFloatConstructor;
|
|
446
|
+
VectorEmbeddingResponse: VectorEmbeddingResponseConstructor;
|
|
447
|
+
FS: FileSystemApi;
|
|
448
|
+
setupLogging(): void;
|
|
449
|
+
Backend: BackendEnum;
|
|
450
|
+
ModelAssets: ModelAssetsConstructor;
|
|
451
|
+
EngineSettings: EngineSettingsConstructor;
|
|
452
|
+
LlmExecutorSettings: LlmExecutorSettingsConstructor;
|
|
453
|
+
Engine: EngineConstructor;
|
|
454
|
+
EmbeddingEngineSettings: EmbeddingEngineSettingsConstructor;
|
|
455
|
+
EmbeddingEngine: EmbeddingEngineConstructor;
|
|
456
|
+
SessionConfig: SessionConfigConstructor;
|
|
457
|
+
ReadableStreamDataStream: ReadableStreamDataStreamConstructor;
|
|
458
|
+
ConversationConfig: ConversationConfigConstructor;
|
|
459
|
+
Conversation: ConversationConstructor;
|
|
460
|
+
registerStreamWeightsCallback(callback: ((tflIds: Int32Array, wgpuBufferIds: Uint32Array, offsets: Float64Array, lengths: Float64Array) => Promise<void>) | undefined): void;
|
|
461
|
+
readStoredWeights(modelType: number, offset: number, size: number, destAddress: number): Promise<void>;
|
|
462
|
+
clearStoredWeightsStreams(): Promise<void>;
|
|
463
|
+
getCurrentlyCompilingModel(): number;
|
|
464
|
+
WebGPU: {
|
|
465
|
+
getJsObject(id: number): unknown;
|
|
466
|
+
};
|
|
467
|
+
}
|
|
468
|
+
declare interface FileSystemApi {
|
|
469
|
+
writeFile(path: string, data: string | ArrayBufferView): void;
|
|
470
|
+
unlink(path: string): void;
|
|
471
|
+
}
|
|
472
|
+
export {};
|
|
473
|
+
//# sourceMappingURL=wasm_binding_types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wasm_binding_types.d.ts","sourceRoot":"","sources":["../src/wasm_binding_types.ts"],"names":[],"mappings":"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"}
|