@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.
Files changed (118) hide show
  1. package/README.md +164 -0
  2. package/dist/cleanup.d.ts +25 -0
  3. package/dist/cleanup.d.ts.map +1 -0
  4. package/dist/cleanup.js +36 -0
  5. package/dist/cleanup.js.map +1 -0
  6. package/dist/conversation.d.ts +51 -0
  7. package/dist/conversation.d.ts.map +1 -0
  8. package/dist/conversation.js +171 -0
  9. package/dist/conversation.js.map +1 -0
  10. package/dist/conversation_config.d.ts +157 -0
  11. package/dist/conversation_config.d.ts.map +1 -0
  12. package/dist/conversation_config.js +42 -0
  13. package/dist/conversation_config.js.map +1 -0
  14. package/dist/embedding_engine.d.ts +51 -0
  15. package/dist/embedding_engine.d.ts.map +1 -0
  16. package/dist/embedding_engine.js +198 -0
  17. package/dist/embedding_engine.js.map +1 -0
  18. package/dist/embedding_engine_settings.d.ts +39 -0
  19. package/dist/embedding_engine_settings.d.ts.map +1 -0
  20. package/dist/embedding_engine_settings.js +35 -0
  21. package/dist/embedding_engine_settings.js.map +1 -0
  22. package/dist/engine.d.ts +37 -0
  23. package/dist/engine.d.ts.map +1 -0
  24. package/dist/engine.js +203 -0
  25. package/dist/engine.js.map +1 -0
  26. package/dist/engine_settings.d.ts +57 -0
  27. package/dist/engine_settings.d.ts.map +1 -0
  28. package/dist/engine_settings.js +114 -0
  29. package/dist/engine_settings.js.map +1 -0
  30. package/dist/global_litertlm.d.ts +66 -0
  31. package/dist/global_litertlm.d.ts.map +1 -0
  32. package/dist/global_litertlm.js +85 -0
  33. package/dist/global_litertlm.js.map +1 -0
  34. package/dist/index.d.ts +33 -0
  35. package/dist/index.d.ts.map +1 -0
  36. package/dist/index.js +33 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/litertlm_web.d.ts +32 -0
  39. package/dist/litertlm_web.d.ts.map +1 -0
  40. package/dist/litertlm_web.js +75 -0
  41. package/dist/litertlm_web.js.map +1 -0
  42. package/dist/load.d.ts +28 -0
  43. package/dist/load.d.ts.map +1 -0
  44. package/dist/load.js +50 -0
  45. package/dist/load.js.map +1 -0
  46. package/dist/load_litertlm.d.ts +58 -0
  47. package/dist/load_litertlm.d.ts.map +1 -0
  48. package/dist/load_litertlm.js +87 -0
  49. package/dist/load_litertlm.js.map +1 -0
  50. package/dist/mutex.d.ts +45 -0
  51. package/dist/mutex.d.ts.map +1 -0
  52. package/dist/mutex.js +62 -0
  53. package/dist/mutex.js.map +1 -0
  54. package/dist/orchestration/auto_tool_chat.d.ts +82 -0
  55. package/dist/orchestration/auto_tool_chat.d.ts.map +1 -0
  56. package/dist/orchestration/auto_tool_chat.js +304 -0
  57. package/dist/orchestration/auto_tool_chat.js.map +1 -0
  58. package/dist/orchestration/chat_interface.d.ts +30 -0
  59. package/dist/orchestration/chat_interface.d.ts.map +1 -0
  60. package/dist/orchestration/chat_interface.js +17 -0
  61. package/dist/orchestration/chat_interface.js.map +1 -0
  62. package/dist/orchestration/webmcp_tool.d.ts +41 -0
  63. package/dist/orchestration/webmcp_tool.d.ts.map +1 -0
  64. package/dist/orchestration/webmcp_tool.js +32 -0
  65. package/dist/orchestration/webmcp_tool.js.map +1 -0
  66. package/dist/readable_stream_data_stream_wrapper.d.ts +44 -0
  67. package/dist/readable_stream_data_stream_wrapper.d.ts.map +1 -0
  68. package/dist/readable_stream_data_stream_wrapper.js +315 -0
  69. package/dist/readable_stream_data_stream_wrapper.js.map +1 -0
  70. package/dist/session.d.ts +51 -0
  71. package/dist/session.d.ts.map +1 -0
  72. package/dist/session.js +107 -0
  73. package/dist/session.js.map +1 -0
  74. package/dist/session_config.d.ts +60 -0
  75. package/dist/session_config.d.ts.map +1 -0
  76. package/dist/session_config.js +109 -0
  77. package/dist/session_config.js.map +1 -0
  78. package/dist/stream_utils.d.ts +25 -0
  79. package/dist/stream_utils.d.ts.map +1 -0
  80. package/dist/stream_utils.js +95 -0
  81. package/dist/stream_utils.js.map +1 -0
  82. package/dist/testing/fakes.d.ts +67 -0
  83. package/dist/testing/fakes.d.ts.map +1 -0
  84. package/dist/testing/fakes.js +125 -0
  85. package/dist/testing/fakes.js.map +1 -0
  86. package/dist/testing/index.d.ts +17 -0
  87. package/dist/testing/index.d.ts.map +1 -0
  88. package/dist/testing/index.js +17 -0
  89. package/dist/testing/index.js.map +1 -0
  90. package/dist/types.d.ts +42 -0
  91. package/dist/types.d.ts.map +1 -0
  92. package/dist/types.js +17 -0
  93. package/dist/types.js.map +1 -0
  94. package/dist/url_path_utils.d.ts +28 -0
  95. package/dist/url_path_utils.d.ts.map +1 -0
  96. package/dist/url_path_utils.js +34 -0
  97. package/dist/url_path_utils.js.map +1 -0
  98. package/dist/wasm_binding_types.d.ts +473 -0
  99. package/dist/wasm_binding_types.d.ts.map +1 -0
  100. package/dist/wasm_binding_types.js +47 -0
  101. package/dist/wasm_binding_types.js.map +1 -0
  102. package/dist/wasm_feature_detect.d.ts +45 -0
  103. package/dist/wasm_feature_detect.d.ts.map +1 -0
  104. package/dist/wasm_feature_detect.js +139 -0
  105. package/dist/wasm_feature_detect.js.map +1 -0
  106. package/dist/wasm_utils.d.ts +30 -0
  107. package/dist/wasm_utils.d.ts.map +1 -0
  108. package/dist/wasm_utils.js +41 -0
  109. package/dist/wasm_utils.js.map +1 -0
  110. package/package.json +3 -2
  111. package/wasm/litertlm_wasm_asyncify_internal.js +8749 -0
  112. package/wasm/litertlm_wasm_asyncify_internal.wasm +0 -0
  113. package/wasm/litertlm_wasm_compat_asyncify_internal.js +8758 -0
  114. package/wasm/litertlm_wasm_compat_asyncify_internal.wasm +0 -0
  115. package/wasm/litertlm_wasm_compat_internal.js +8543 -0
  116. package/wasm/litertlm_wasm_compat_internal.wasm +0 -0
  117. package/wasm/litertlm_wasm_internal.js +8532 -0
  118. 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"}
@@ -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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"}