@runanywhere/web 0.1.0-beta.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 +795 -0
- package/dist/Foundation/ErrorTypes.d.ts +61 -0
- package/dist/Foundation/ErrorTypes.d.ts.map +1 -0
- package/dist/Foundation/ErrorTypes.js +90 -0
- package/dist/Foundation/ErrorTypes.js.map +1 -0
- package/dist/Foundation/EventBus.d.ts +171 -0
- package/dist/Foundation/EventBus.d.ts.map +1 -0
- package/dist/Foundation/EventBus.js +113 -0
- package/dist/Foundation/EventBus.js.map +1 -0
- package/dist/Foundation/PlatformAdapter.d.ts +101 -0
- package/dist/Foundation/PlatformAdapter.d.ts.map +1 -0
- package/dist/Foundation/PlatformAdapter.js +417 -0
- package/dist/Foundation/PlatformAdapter.js.map +1 -0
- package/dist/Foundation/SDKLogger.d.ts +33 -0
- package/dist/Foundation/SDKLogger.d.ts.map +1 -0
- package/dist/Foundation/SDKLogger.js +82 -0
- package/dist/Foundation/SDKLogger.js.map +1 -0
- package/dist/Foundation/SherpaONNXBridge.d.ts +134 -0
- package/dist/Foundation/SherpaONNXBridge.d.ts.map +1 -0
- package/dist/Foundation/SherpaONNXBridge.js +332 -0
- package/dist/Foundation/SherpaONNXBridge.js.map +1 -0
- package/dist/Foundation/StructOffsets.d.ts +147 -0
- package/dist/Foundation/StructOffsets.d.ts.map +1 -0
- package/dist/Foundation/StructOffsets.js +161 -0
- package/dist/Foundation/StructOffsets.js.map +1 -0
- package/dist/Foundation/WASMBridge.d.ts +241 -0
- package/dist/Foundation/WASMBridge.d.ts.map +1 -0
- package/dist/Foundation/WASMBridge.js +393 -0
- package/dist/Foundation/WASMBridge.js.map +1 -0
- package/dist/Infrastructure/ArchiveUtility.d.ts +25 -0
- package/dist/Infrastructure/ArchiveUtility.d.ts.map +1 -0
- package/dist/Infrastructure/ArchiveUtility.js +139 -0
- package/dist/Infrastructure/ArchiveUtility.js.map +1 -0
- package/dist/Infrastructure/AudioCapture.d.ts +87 -0
- package/dist/Infrastructure/AudioCapture.d.ts.map +1 -0
- package/dist/Infrastructure/AudioCapture.js +231 -0
- package/dist/Infrastructure/AudioCapture.js.map +1 -0
- package/dist/Infrastructure/AudioPlayback.d.ts +53 -0
- package/dist/Infrastructure/AudioPlayback.d.ts.map +1 -0
- package/dist/Infrastructure/AudioPlayback.js +117 -0
- package/dist/Infrastructure/AudioPlayback.js.map +1 -0
- package/dist/Infrastructure/DeviceCapabilities.d.ts +39 -0
- package/dist/Infrastructure/DeviceCapabilities.d.ts.map +1 -0
- package/dist/Infrastructure/DeviceCapabilities.js +111 -0
- package/dist/Infrastructure/DeviceCapabilities.js.map +1 -0
- package/dist/Infrastructure/ExtensionRegistry.d.ts +30 -0
- package/dist/Infrastructure/ExtensionRegistry.d.ts.map +1 -0
- package/dist/Infrastructure/ExtensionRegistry.js +41 -0
- package/dist/Infrastructure/ExtensionRegistry.js.map +1 -0
- package/dist/Infrastructure/ModelDownloader.d.ts +98 -0
- package/dist/Infrastructure/ModelDownloader.d.ts.map +1 -0
- package/dist/Infrastructure/ModelDownloader.js +431 -0
- package/dist/Infrastructure/ModelDownloader.js.map +1 -0
- package/dist/Infrastructure/ModelLoaderTypes.d.ts +34 -0
- package/dist/Infrastructure/ModelLoaderTypes.d.ts.map +1 -0
- package/dist/Infrastructure/ModelLoaderTypes.js +12 -0
- package/dist/Infrastructure/ModelLoaderTypes.js.map +1 -0
- package/dist/Infrastructure/ModelManager.d.ts +219 -0
- package/dist/Infrastructure/ModelManager.d.ts.map +1 -0
- package/dist/Infrastructure/ModelManager.js +885 -0
- package/dist/Infrastructure/ModelManager.js.map +1 -0
- package/dist/Infrastructure/ModelRegistry.d.ts +131 -0
- package/dist/Infrastructure/ModelRegistry.d.ts.map +1 -0
- package/dist/Infrastructure/ModelRegistry.js +122 -0
- package/dist/Infrastructure/ModelRegistry.js.map +1 -0
- package/dist/Infrastructure/OPFSStorage.d.ts +143 -0
- package/dist/Infrastructure/OPFSStorage.d.ts.map +1 -0
- package/dist/Infrastructure/OPFSStorage.js +330 -0
- package/dist/Infrastructure/OPFSStorage.js.map +1 -0
- package/dist/Infrastructure/VLMWorkerBridge.d.ts +211 -0
- package/dist/Infrastructure/VLMWorkerBridge.d.ts.map +1 -0
- package/dist/Infrastructure/VLMWorkerBridge.js +264 -0
- package/dist/Infrastructure/VLMWorkerBridge.js.map +1 -0
- package/dist/Infrastructure/VLMWorkerRuntime.d.ts +38 -0
- package/dist/Infrastructure/VLMWorkerRuntime.d.ts.map +1 -0
- package/dist/Infrastructure/VLMWorkerRuntime.js +503 -0
- package/dist/Infrastructure/VLMWorkerRuntime.js.map +1 -0
- package/dist/Infrastructure/VideoCapture.d.ts +118 -0
- package/dist/Infrastructure/VideoCapture.d.ts.map +1 -0
- package/dist/Infrastructure/VideoCapture.js +207 -0
- package/dist/Infrastructure/VideoCapture.js.map +1 -0
- package/dist/Public/Extensions/DiffusionTypes.d.ts +64 -0
- package/dist/Public/Extensions/DiffusionTypes.d.ts.map +1 -0
- package/dist/Public/Extensions/DiffusionTypes.js +28 -0
- package/dist/Public/Extensions/DiffusionTypes.js.map +1 -0
- package/dist/Public/Extensions/EmbeddingsTypes.d.ts +33 -0
- package/dist/Public/Extensions/EmbeddingsTypes.d.ts.map +1 -0
- package/dist/Public/Extensions/EmbeddingsTypes.js +13 -0
- package/dist/Public/Extensions/EmbeddingsTypes.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+Diffusion.d.ts +44 -0
- package/dist/Public/Extensions/RunAnywhere+Diffusion.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+Diffusion.js +189 -0
- package/dist/Public/Extensions/RunAnywhere+Diffusion.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+Embeddings.d.ts +56 -0
- package/dist/Public/Extensions/RunAnywhere+Embeddings.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+Embeddings.js +240 -0
- package/dist/Public/Extensions/RunAnywhere+Embeddings.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+ModelManagement.d.ts +53 -0
- package/dist/Public/Extensions/RunAnywhere+ModelManagement.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+ModelManagement.js +153 -0
- package/dist/Public/Extensions/RunAnywhere+ModelManagement.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+STT.d.ts +95 -0
- package/dist/Public/Extensions/RunAnywhere+STT.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+STT.js +417 -0
- package/dist/Public/Extensions/RunAnywhere+STT.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+StructuredOutput.d.ts +69 -0
- package/dist/Public/Extensions/RunAnywhere+StructuredOutput.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+StructuredOutput.js +196 -0
- package/dist/Public/Extensions/RunAnywhere+StructuredOutput.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+TTS.d.ts +55 -0
- package/dist/Public/Extensions/RunAnywhere+TTS.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+TTS.js +253 -0
- package/dist/Public/Extensions/RunAnywhere+TTS.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+TextGeneration.d.ts +80 -0
- package/dist/Public/Extensions/RunAnywhere+TextGeneration.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+TextGeneration.js +436 -0
- package/dist/Public/Extensions/RunAnywhere+TextGeneration.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+ToolCalling.d.ts +82 -0
- package/dist/Public/Extensions/RunAnywhere+ToolCalling.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+ToolCalling.js +576 -0
- package/dist/Public/Extensions/RunAnywhere+ToolCalling.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+VAD.d.ts +70 -0
- package/dist/Public/Extensions/RunAnywhere+VAD.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+VAD.js +231 -0
- package/dist/Public/Extensions/RunAnywhere+VAD.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+VLM.d.ts +58 -0
- package/dist/Public/Extensions/RunAnywhere+VLM.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+VLM.js +262 -0
- package/dist/Public/Extensions/RunAnywhere+VLM.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+VoiceAgent.d.ts +49 -0
- package/dist/Public/Extensions/RunAnywhere+VoiceAgent.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+VoiceAgent.js +222 -0
- package/dist/Public/Extensions/RunAnywhere+VoiceAgent.js.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+VoicePipeline.d.ts +63 -0
- package/dist/Public/Extensions/RunAnywhere+VoicePipeline.d.ts.map +1 -0
- package/dist/Public/Extensions/RunAnywhere+VoicePipeline.js +168 -0
- package/dist/Public/Extensions/RunAnywhere+VoicePipeline.js.map +1 -0
- package/dist/Public/Extensions/STTTypes.d.ts +53 -0
- package/dist/Public/Extensions/STTTypes.d.ts.map +1 -0
- package/dist/Public/Extensions/STTTypes.js +16 -0
- package/dist/Public/Extensions/STTTypes.js.map +1 -0
- package/dist/Public/Extensions/TTSTypes.d.ts +31 -0
- package/dist/Public/Extensions/TTSTypes.d.ts.map +1 -0
- package/dist/Public/Extensions/TTSTypes.js +3 -0
- package/dist/Public/Extensions/TTSTypes.js.map +1 -0
- package/dist/Public/Extensions/ToolCallingTypes.d.ts +78 -0
- package/dist/Public/Extensions/ToolCallingTypes.d.ts.map +1 -0
- package/dist/Public/Extensions/ToolCallingTypes.js +8 -0
- package/dist/Public/Extensions/ToolCallingTypes.js.map +1 -0
- package/dist/Public/Extensions/VADTypes.d.ts +30 -0
- package/dist/Public/Extensions/VADTypes.d.ts.map +1 -0
- package/dist/Public/Extensions/VADTypes.js +8 -0
- package/dist/Public/Extensions/VADTypes.js.map +1 -0
- package/dist/Public/Extensions/VLMTypes.d.ts +56 -0
- package/dist/Public/Extensions/VLMTypes.d.ts.map +1 -0
- package/dist/Public/Extensions/VLMTypes.js +24 -0
- package/dist/Public/Extensions/VLMTypes.js.map +1 -0
- package/dist/Public/Extensions/VoiceAgentTypes.d.ts +42 -0
- package/dist/Public/Extensions/VoiceAgentTypes.d.ts.map +1 -0
- package/dist/Public/Extensions/VoiceAgentTypes.js +12 -0
- package/dist/Public/Extensions/VoiceAgentTypes.js.map +1 -0
- package/dist/Public/Extensions/VoicePipelineTypes.d.ts +69 -0
- package/dist/Public/Extensions/VoicePipelineTypes.d.ts.map +1 -0
- package/dist/Public/Extensions/VoicePipelineTypes.js +9 -0
- package/dist/Public/Extensions/VoicePipelineTypes.js.map +1 -0
- package/dist/Public/RunAnywhere.d.ts +121 -0
- package/dist/Public/RunAnywhere.d.ts.map +1 -0
- package/dist/Public/RunAnywhere.js +332 -0
- package/dist/Public/RunAnywhere.js.map +1 -0
- package/dist/index.d.ts +67 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +53 -0
- package/dist/index.js.map +1 -0
- package/dist/types/LLMTypes.d.ts +48 -0
- package/dist/types/LLMTypes.d.ts.map +1 -0
- package/dist/types/LLMTypes.js +8 -0
- package/dist/types/LLMTypes.js.map +1 -0
- package/dist/types/enums.d.ts +144 -0
- package/dist/types/enums.d.ts.map +1 -0
- package/dist/types/enums.js +159 -0
- package/dist/types/enums.js.map +1 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +8 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/models.d.ts +154 -0
- package/dist/types/models.d.ts.map +1 -0
- package/dist/types/models.js +8 -0
- package/dist/types/models.js.map +1 -0
- package/dist/workers/vlm-worker.d.ts +9 -0
- package/dist/workers/vlm-worker.d.ts.map +1 -0
- package/dist/workers/vlm-worker.js +10 -0
- package/dist/workers/vlm-worker.js.map +1 -0
- package/package.json +62 -0
- package/wasm/racommons-webgpu.js +156 -0
- package/wasm/racommons-webgpu.wasm +0 -0
- package/wasm/racommons.js +126 -0
- package/wasm/racommons.wasm +0 -0
- package/wasm/sherpa/sherpa-onnx-asr.js +1538 -0
- package/wasm/sherpa/sherpa-onnx-glue-original.js +19 -0
- package/wasm/sherpa/sherpa-onnx-glue.js +17 -0
- package/wasm/sherpa/sherpa-onnx-tts.js +657 -0
- package/wasm/sherpa/sherpa-onnx-vad.js +337 -0
- package/wasm/sherpa/sherpa-onnx-wave.js +88 -0
- package/wasm/sherpa/sherpa-onnx.wasm +0 -0
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RunAnywhere Web SDK - Main Entry Point
|
|
3
|
+
*
|
|
4
|
+
* The public API for the RunAnywhere Web SDK.
|
|
5
|
+
* Mirrors the pattern across all SDKs:
|
|
6
|
+
* - RunAnywhere.swift (iOS) - enum with static methods
|
|
7
|
+
* - RunAnywhere.kt (Kotlin) - object/class
|
|
8
|
+
* - RunAnywhere.ts (React Native) - object literal
|
|
9
|
+
* - RunAnywhere.dart (Flutter) - class
|
|
10
|
+
*
|
|
11
|
+
* All operations flow through the WASM bridge to RACommons C++.
|
|
12
|
+
*
|
|
13
|
+
* Usage:
|
|
14
|
+
* import { RunAnywhere } from '@runanywhere/web';
|
|
15
|
+
*
|
|
16
|
+
* await RunAnywhere.initialize({ environment: 'development' });
|
|
17
|
+
* const result = await RunAnywhere.generate('Hello!', { maxTokens: 100 });
|
|
18
|
+
*/
|
|
19
|
+
import { SDKEnvironment, SDKEventType, AccelerationPreference } from '../types/enums';
|
|
20
|
+
import { SDKError, SDKErrorCode } from '../Foundation/ErrorTypes';
|
|
21
|
+
import { EventBus } from '../Foundation/EventBus';
|
|
22
|
+
import { SDKLogger, LogLevel } from '../Foundation/SDKLogger';
|
|
23
|
+
import { WASMBridge } from '../Foundation/WASMBridge';
|
|
24
|
+
import { SherpaONNXBridge } from '../Foundation/SherpaONNXBridge';
|
|
25
|
+
import { PlatformAdapter } from '../Foundation/PlatformAdapter';
|
|
26
|
+
import { loadOffsets } from '../Foundation/StructOffsets';
|
|
27
|
+
import { Offsets } from '../Foundation/StructOffsets';
|
|
28
|
+
import { ModelManager } from '../Infrastructure/ModelManager';
|
|
29
|
+
import { ExtensionRegistry } from '../Infrastructure/ExtensionRegistry';
|
|
30
|
+
// Extension imports for registration and shutdown cleanup
|
|
31
|
+
import { TextGeneration } from './Extensions/RunAnywhere+TextGeneration';
|
|
32
|
+
import { VLM } from './Extensions/RunAnywhere+VLM';
|
|
33
|
+
import { STT } from './Extensions/RunAnywhere+STT';
|
|
34
|
+
import { TTS } from './Extensions/RunAnywhere+TTS';
|
|
35
|
+
import { VAD } from './Extensions/RunAnywhere+VAD';
|
|
36
|
+
import { Embeddings } from './Extensions/RunAnywhere+Embeddings';
|
|
37
|
+
import { Diffusion } from './Extensions/RunAnywhere+Diffusion';
|
|
38
|
+
import { ToolCalling } from './Extensions/RunAnywhere+ToolCalling';
|
|
39
|
+
const logger = new SDKLogger('RunAnywhere');
|
|
40
|
+
// ---------------------------------------------------------------------------
|
|
41
|
+
// Internal State
|
|
42
|
+
// ---------------------------------------------------------------------------
|
|
43
|
+
let _isInitialized = false;
|
|
44
|
+
let _hasCompletedServicesInit = false;
|
|
45
|
+
let _platformAdapter = null;
|
|
46
|
+
let _initOptions = null;
|
|
47
|
+
/** Guard against concurrent initialize() calls */
|
|
48
|
+
let _initializingPromise = null;
|
|
49
|
+
// ---------------------------------------------------------------------------
|
|
50
|
+
// RunAnywhere Public API
|
|
51
|
+
// ---------------------------------------------------------------------------
|
|
52
|
+
export const RunAnywhere = {
|
|
53
|
+
// =========================================================================
|
|
54
|
+
// SDK State
|
|
55
|
+
// =========================================================================
|
|
56
|
+
/** Whether the SDK is initialized (Phase 1 complete) */
|
|
57
|
+
get isInitialized() {
|
|
58
|
+
return _isInitialized;
|
|
59
|
+
},
|
|
60
|
+
/** Whether services are fully ready (Phase 2 complete) */
|
|
61
|
+
get areServicesReady() {
|
|
62
|
+
return _hasCompletedServicesInit;
|
|
63
|
+
},
|
|
64
|
+
/** Current SDK version */
|
|
65
|
+
get version() {
|
|
66
|
+
return '0.1.0';
|
|
67
|
+
},
|
|
68
|
+
/** Current environment */
|
|
69
|
+
get environment() {
|
|
70
|
+
return _initOptions?.environment ?? null;
|
|
71
|
+
},
|
|
72
|
+
/** Access to the event bus */
|
|
73
|
+
get events() {
|
|
74
|
+
return EventBus.shared;
|
|
75
|
+
},
|
|
76
|
+
/** Whether the WASM module is loaded */
|
|
77
|
+
get isWASMLoaded() {
|
|
78
|
+
return WASMBridge.shared.isLoaded;
|
|
79
|
+
},
|
|
80
|
+
/** The active hardware acceleration mode ('webgpu' or 'cpu'). */
|
|
81
|
+
get accelerationMode() {
|
|
82
|
+
return WASMBridge.shared.accelerationMode;
|
|
83
|
+
},
|
|
84
|
+
// =========================================================================
|
|
85
|
+
// Initialization
|
|
86
|
+
// =========================================================================
|
|
87
|
+
/**
|
|
88
|
+
* Initialize the RunAnywhere SDK.
|
|
89
|
+
*
|
|
90
|
+
* This performs:
|
|
91
|
+
* 1. Load RACommons WASM module
|
|
92
|
+
* 2. Register JS platform adapter callbacks
|
|
93
|
+
* 3. Call rac_init() (same C function as iOS/Android)
|
|
94
|
+
* 4. Mark SDK as initialized
|
|
95
|
+
*
|
|
96
|
+
* @param options - SDK initialization options
|
|
97
|
+
* @param wasmUrl - Optional URL to the racommons.js glue file
|
|
98
|
+
*
|
|
99
|
+
* @example
|
|
100
|
+
* ```typescript
|
|
101
|
+
* // Development mode (default)
|
|
102
|
+
* await RunAnywhere.initialize();
|
|
103
|
+
*
|
|
104
|
+
* // Production mode
|
|
105
|
+
* await RunAnywhere.initialize({
|
|
106
|
+
* apiKey: 'your-key',
|
|
107
|
+
* baseURL: 'https://api.runanywhere.ai',
|
|
108
|
+
* environment: 'production',
|
|
109
|
+
* });
|
|
110
|
+
* ```
|
|
111
|
+
*/
|
|
112
|
+
async initialize(options = {}, wasmUrl) {
|
|
113
|
+
// Guard: already done
|
|
114
|
+
if (_isInitialized) {
|
|
115
|
+
logger.debug('Already initialized');
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
// Guard: another call is already in flight – wait for it instead of racing
|
|
119
|
+
if (_initializingPromise) {
|
|
120
|
+
logger.debug('Initialization already in progress, awaiting...');
|
|
121
|
+
return _initializingPromise;
|
|
122
|
+
}
|
|
123
|
+
_initializingPromise = (async () => {
|
|
124
|
+
try {
|
|
125
|
+
const env = options.environment ?? SDKEnvironment.Development;
|
|
126
|
+
_initOptions = { ...options, environment: env };
|
|
127
|
+
// Configure logging
|
|
128
|
+
if (options.debug) {
|
|
129
|
+
SDKLogger.level = LogLevel.Debug;
|
|
130
|
+
}
|
|
131
|
+
logger.info(`Initializing RunAnywhere Web SDK (${env})...`);
|
|
132
|
+
// Phase 1: Load WASM module (auto-detects WebGPU and loads correct variant)
|
|
133
|
+
const bridge = WASMBridge.shared;
|
|
134
|
+
const acceleration = options.acceleration ?? AccelerationPreference.Auto;
|
|
135
|
+
await bridge.load(wasmUrl, options.webgpuWasmUrl, acceleration);
|
|
136
|
+
logger.info(`Hardware acceleration: ${bridge.accelerationMode}`);
|
|
137
|
+
// Emit acceleration mode event so app UIs can show a badge
|
|
138
|
+
EventBus.shared.emit('sdk.accelerationMode', SDKEventType.Device, {
|
|
139
|
+
mode: bridge.accelerationMode,
|
|
140
|
+
});
|
|
141
|
+
// Phase 1b: Load struct field offsets from the WASM module.
|
|
142
|
+
// This must happen before any struct read/write in the SDK.
|
|
143
|
+
loadOffsets(bridge.module);
|
|
144
|
+
// Phase 2: Register platform adapter
|
|
145
|
+
_platformAdapter = new PlatformAdapter();
|
|
146
|
+
_platformAdapter.register();
|
|
147
|
+
// Phase 3: Initialize RACommons core
|
|
148
|
+
const m = bridge.module;
|
|
149
|
+
// Create rac_config_t in WASM memory
|
|
150
|
+
const configSize = m._rac_wasm_sizeof_config();
|
|
151
|
+
const configPtr = m._malloc(configSize);
|
|
152
|
+
// Zero-initialize
|
|
153
|
+
for (let i = 0; i < configSize; i++) {
|
|
154
|
+
m.setValue(configPtr + i, 0, 'i8');
|
|
155
|
+
}
|
|
156
|
+
// Set platform_adapter pointer (offset 0) -- always first field
|
|
157
|
+
m.setValue(configPtr, _platformAdapter.getAdapterPtr(), '*');
|
|
158
|
+
// Set log_level using compiler-provided offset
|
|
159
|
+
const logLevel = options.debug ? 1 : 2; // DEBUG=1, INFO=2
|
|
160
|
+
m.setValue(configPtr + Offsets.config.logLevel, logLevel, 'i32');
|
|
161
|
+
// {async: true} lets JSPI suspend during WebGPU adapter/device init.
|
|
162
|
+
const result = await bridge.callFunction('rac_init', 'number', ['number'], [configPtr], { async: true });
|
|
163
|
+
m._free(configPtr);
|
|
164
|
+
if (result !== 0) {
|
|
165
|
+
const errMsg = bridge.getErrorMessage(result);
|
|
166
|
+
throw new SDKError(SDKErrorCode.InitializationFailed, `rac_init failed: ${errMsg}`);
|
|
167
|
+
}
|
|
168
|
+
// Phase 4: Register available backends
|
|
169
|
+
// The llama.cpp LLM backend must be registered before any LLM/VLM operations.
|
|
170
|
+
// Check if the function exists (only present when built with --llamacpp).
|
|
171
|
+
if (typeof m['_rac_backend_llamacpp_register'] === 'function') {
|
|
172
|
+
const regResult = await bridge.callFunction('rac_backend_llamacpp_register', 'number', [], [], { async: true });
|
|
173
|
+
if (regResult === 0) {
|
|
174
|
+
logger.info('llama.cpp LLM backend registered');
|
|
175
|
+
}
|
|
176
|
+
else {
|
|
177
|
+
logger.warning(`llama.cpp backend registration returned: ${regResult}`);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
// Phase 5: Register model loaders with ModelManager.
|
|
181
|
+
// This keeps the dependency flow correct: Public -> Infrastructure.
|
|
182
|
+
ModelManager.setLLMLoader(TextGeneration);
|
|
183
|
+
ModelManager.setSTTLoader(STT);
|
|
184
|
+
ModelManager.setTTSLoader(TTS);
|
|
185
|
+
ModelManager.setVADLoader(VAD);
|
|
186
|
+
// Phase 6: Register extensions with the lifecycle registry.
|
|
187
|
+
// Order matters: low-level components first (cleaned up last).
|
|
188
|
+
ExtensionRegistry.register(TextGeneration);
|
|
189
|
+
ExtensionRegistry.register(STT);
|
|
190
|
+
ExtensionRegistry.register(TTS);
|
|
191
|
+
ExtensionRegistry.register(VAD);
|
|
192
|
+
ExtensionRegistry.register(VLM);
|
|
193
|
+
ExtensionRegistry.register(Embeddings);
|
|
194
|
+
ExtensionRegistry.register(Diffusion);
|
|
195
|
+
ExtensionRegistry.register(ToolCalling);
|
|
196
|
+
_isInitialized = true;
|
|
197
|
+
_hasCompletedServicesInit = true;
|
|
198
|
+
logger.info('RunAnywhere Web SDK initialized successfully');
|
|
199
|
+
EventBus.shared.emit('sdk.initialized', SDKEventType.Initialization, {
|
|
200
|
+
environment: env,
|
|
201
|
+
accelerationMode: bridge.accelerationMode,
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
finally {
|
|
205
|
+
_initializingPromise = null;
|
|
206
|
+
}
|
|
207
|
+
})();
|
|
208
|
+
return _initializingPromise;
|
|
209
|
+
},
|
|
210
|
+
// =========================================================================
|
|
211
|
+
// Model Management (mirrors iOS RunAnywhere.registerModel / loadModel / etc.)
|
|
212
|
+
// =========================================================================
|
|
213
|
+
/**
|
|
214
|
+
* Register a catalog of models for download and loading.
|
|
215
|
+
* @param models - Compact model definitions to register
|
|
216
|
+
*/
|
|
217
|
+
registerModels(models) {
|
|
218
|
+
ModelManager.registerModels(models);
|
|
219
|
+
},
|
|
220
|
+
/**
|
|
221
|
+
* Set the VLM (vision-language model) loader implementation.
|
|
222
|
+
* The app provides an implementation (typically backed by a Web Worker).
|
|
223
|
+
*/
|
|
224
|
+
setVLMLoader(loader) {
|
|
225
|
+
ModelManager.setVLMLoader(loader);
|
|
226
|
+
},
|
|
227
|
+
/**
|
|
228
|
+
* Download a model (and any companion files) to persistent OPFS storage.
|
|
229
|
+
* @param modelId - The model ID to download
|
|
230
|
+
*/
|
|
231
|
+
async downloadModel(modelId) {
|
|
232
|
+
return ModelManager.downloadModel(modelId);
|
|
233
|
+
},
|
|
234
|
+
/**
|
|
235
|
+
* Load a downloaded model into the inference engine.
|
|
236
|
+
* @param modelId - The model ID to load
|
|
237
|
+
* @returns true if loaded successfully
|
|
238
|
+
*/
|
|
239
|
+
async loadModel(modelId) {
|
|
240
|
+
return ModelManager.loadModel(modelId);
|
|
241
|
+
},
|
|
242
|
+
/**
|
|
243
|
+
* Get all registered models with their current status.
|
|
244
|
+
*/
|
|
245
|
+
availableModels() {
|
|
246
|
+
return ModelManager.getModels();
|
|
247
|
+
},
|
|
248
|
+
/**
|
|
249
|
+
* Get the currently loaded model for a given category.
|
|
250
|
+
* @param category - Optional model category filter
|
|
251
|
+
*/
|
|
252
|
+
getLoadedModel(category) {
|
|
253
|
+
return ModelManager.getLoadedModel(category);
|
|
254
|
+
},
|
|
255
|
+
/**
|
|
256
|
+
* Unload ALL loaded models and free their resources.
|
|
257
|
+
*
|
|
258
|
+
* Useful when switching between features/tabs to ensure clean state
|
|
259
|
+
* and reclaim memory. Called automatically by `loadModel()`, but can
|
|
260
|
+
* also be called explicitly by the app.
|
|
261
|
+
*/
|
|
262
|
+
async unloadAll() {
|
|
263
|
+
return ModelManager.unloadAll();
|
|
264
|
+
},
|
|
265
|
+
/**
|
|
266
|
+
* Delete a downloaded model from OPFS storage.
|
|
267
|
+
* @param modelId - The model ID to delete
|
|
268
|
+
*/
|
|
269
|
+
async deleteModel(modelId) {
|
|
270
|
+
return ModelManager.deleteModel(modelId);
|
|
271
|
+
},
|
|
272
|
+
// =========================================================================
|
|
273
|
+
// Shutdown
|
|
274
|
+
// =========================================================================
|
|
275
|
+
/**
|
|
276
|
+
* Shutdown the SDK and release all resources.
|
|
277
|
+
*
|
|
278
|
+
* Cleans up extensions in reverse dependency order so that
|
|
279
|
+
* higher-level components (e.g. VoiceAgent pipeline) are torn
|
|
280
|
+
* down before the lower-level ones they depend on.
|
|
281
|
+
*/
|
|
282
|
+
shutdown() {
|
|
283
|
+
logger.info('Shutting down RunAnywhere Web SDK...');
|
|
284
|
+
// ------------------------------------------------------------------
|
|
285
|
+
// 1. Clean up all registered extensions in reverse dependency order.
|
|
286
|
+
// Extensions were registered low-level first, so reverse cleanup
|
|
287
|
+
// tears down high-level orchestrations before their dependencies.
|
|
288
|
+
// ------------------------------------------------------------------
|
|
289
|
+
ExtensionRegistry.cleanupAll();
|
|
290
|
+
// ------------------------------------------------------------------
|
|
291
|
+
// 2. Shut down WASM bridges
|
|
292
|
+
// ------------------------------------------------------------------
|
|
293
|
+
// SherpaONNXBridge (STT/TTS/VAD WASM module)
|
|
294
|
+
try {
|
|
295
|
+
SherpaONNXBridge.shared.shutdown();
|
|
296
|
+
}
|
|
297
|
+
catch { /* ignore during shutdown */ }
|
|
298
|
+
// Platform adapter
|
|
299
|
+
if (_platformAdapter) {
|
|
300
|
+
try {
|
|
301
|
+
_platformAdapter.cleanup();
|
|
302
|
+
}
|
|
303
|
+
catch { /* ignore during shutdown */ }
|
|
304
|
+
_platformAdapter = null;
|
|
305
|
+
}
|
|
306
|
+
// RACommons WASM bridge
|
|
307
|
+
try {
|
|
308
|
+
WASMBridge.shared.shutdown();
|
|
309
|
+
}
|
|
310
|
+
catch { /* ignore during shutdown */ }
|
|
311
|
+
// ------------------------------------------------------------------
|
|
312
|
+
// 3. Reset SDK state
|
|
313
|
+
// ------------------------------------------------------------------
|
|
314
|
+
EventBus.reset();
|
|
315
|
+
ExtensionRegistry.reset();
|
|
316
|
+
_isInitialized = false;
|
|
317
|
+
_hasCompletedServicesInit = false;
|
|
318
|
+
_initOptions = null;
|
|
319
|
+
_initializingPromise = null;
|
|
320
|
+
logger.info('RunAnywhere Web SDK shut down');
|
|
321
|
+
},
|
|
322
|
+
// =========================================================================
|
|
323
|
+
// Reset (testing)
|
|
324
|
+
// =========================================================================
|
|
325
|
+
/**
|
|
326
|
+
* Reset SDK state (for testing purposes).
|
|
327
|
+
*/
|
|
328
|
+
reset() {
|
|
329
|
+
RunAnywhere.shutdown();
|
|
330
|
+
},
|
|
331
|
+
};
|
|
332
|
+
//# sourceMappingURL=RunAnywhere.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RunAnywhere.js","sourceRoot":"","sources":["../../src/Public/RunAnywhere.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RunAnywhere Web SDK
|
|
3
|
+
*
|
|
4
|
+
* On-device AI inference in the browser via RACommons WebAssembly.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import { RunAnywhere } from '@runanywhere/web';
|
|
11
|
+
*
|
|
12
|
+
* // Initialize
|
|
13
|
+
* await RunAnywhere.initialize({ environment: 'development' });
|
|
14
|
+
*
|
|
15
|
+
* // Check capabilities
|
|
16
|
+
* console.log('WebGPU:', RunAnywhere.isWASMLoaded);
|
|
17
|
+
*
|
|
18
|
+
* // Future: Generate text
|
|
19
|
+
* // const result = await RunAnywhere.generate('Hello!', { maxTokens: 100 });
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export { RunAnywhere } from './Public/RunAnywhere';
|
|
23
|
+
export { TextGeneration } from './Public/Extensions/RunAnywhere+TextGeneration';
|
|
24
|
+
export { STT, STTModelType } from './Public/Extensions/RunAnywhere+STT';
|
|
25
|
+
export type { STTModelConfig, STTWhisperFiles, STTZipformerFiles, STTParaformerFiles, STTTranscriptionResult, STTWord, STTTranscribeOptions, STTStreamCallback, STTStreamingSession, } from './Public/Extensions/RunAnywhere+STT';
|
|
26
|
+
export { TTS } from './Public/Extensions/RunAnywhere+TTS';
|
|
27
|
+
export type { TTSVoiceConfig, TTSSynthesisResult, TTSSynthesizeOptions } from './Public/Extensions/RunAnywhere+TTS';
|
|
28
|
+
export { VAD, SpeechActivity } from './Public/Extensions/RunAnywhere+VAD';
|
|
29
|
+
export type { SpeechActivityCallback, VADModelConfig, SpeechSegment } from './Public/Extensions/RunAnywhere+VAD';
|
|
30
|
+
export { VoiceAgent, VoiceAgentSession, PipelineState } from './Public/Extensions/RunAnywhere+VoiceAgent';
|
|
31
|
+
export type { VoiceAgentModels, VoiceTurnResult, VoiceAgentEventData, VoiceAgentEventCallback } from './Public/Extensions/RunAnywhere+VoiceAgent';
|
|
32
|
+
export { VoicePipeline } from './Public/Extensions/RunAnywhere+VoicePipeline';
|
|
33
|
+
export type { VoicePipelineCallbacks, VoicePipelineOptions, VoicePipelineTurnResult } from './Public/Extensions/VoicePipelineTypes';
|
|
34
|
+
export { VLM, VLMImageFormat, VLMModelFamily } from './Public/Extensions/RunAnywhere+VLM';
|
|
35
|
+
export type { VLMImage, VLMGenerationOptions, VLMGenerationResult, VLMStreamingResult } from './Public/Extensions/RunAnywhere+VLM';
|
|
36
|
+
export { ToolCalling, toToolValue, fromToolValue, getStringArg, getNumberArg } from './Public/Extensions/RunAnywhere+ToolCalling';
|
|
37
|
+
export type { ToolValue, ToolParameterType, ToolParameter, ToolDefinition, ToolCall, ToolResult, ToolCallFormat, ToolCallingOptions, ToolCallingResult, ToolExecutor, } from './Public/Extensions/RunAnywhere+ToolCalling';
|
|
38
|
+
export { StructuredOutput } from './Public/Extensions/RunAnywhere+StructuredOutput';
|
|
39
|
+
export type { StructuredOutputConfig, StructuredOutputValidation } from './Public/Extensions/RunAnywhere+StructuredOutput';
|
|
40
|
+
export { Diffusion } from './Public/Extensions/RunAnywhere+Diffusion';
|
|
41
|
+
export { DiffusionScheduler, DiffusionModelVariant, DiffusionMode } from './Public/Extensions/RunAnywhere+Diffusion';
|
|
42
|
+
export type { DiffusionGenerationOptions, DiffusionGenerationResult, DiffusionProgressCallback } from './Public/Extensions/RunAnywhere+Diffusion';
|
|
43
|
+
export { Embeddings } from './Public/Extensions/RunAnywhere+Embeddings';
|
|
44
|
+
export { EmbeddingsNormalize, EmbeddingsPooling } from './Public/Extensions/RunAnywhere+Embeddings';
|
|
45
|
+
export type { EmbeddingVector, EmbeddingsResult, EmbeddingsOptions } from './Public/Extensions/RunAnywhere+Embeddings';
|
|
46
|
+
export * from './types';
|
|
47
|
+
export { SDKError, SDKErrorCode } from './Foundation/ErrorTypes';
|
|
48
|
+
export { SDKLogger, LogLevel } from './Foundation/SDKLogger';
|
|
49
|
+
export { EventBus } from './Foundation/EventBus';
|
|
50
|
+
export type { EventListener, Unsubscribe, SDKEventEnvelope } from './Foundation/EventBus';
|
|
51
|
+
export { detectCapabilities, getDeviceInfo } from './Infrastructure/DeviceCapabilities';
|
|
52
|
+
export type { WebCapabilities } from './Infrastructure/DeviceCapabilities';
|
|
53
|
+
export { AudioCapture } from './Infrastructure/AudioCapture';
|
|
54
|
+
export type { AudioChunkCallback, AudioLevelCallback, AudioCaptureConfig } from './Infrastructure/AudioCapture';
|
|
55
|
+
export { VideoCapture } from './Infrastructure/VideoCapture';
|
|
56
|
+
export type { VideoCaptureConfig, CapturedFrame } from './Infrastructure/VideoCapture';
|
|
57
|
+
export { AudioPlayback } from './Infrastructure/AudioPlayback';
|
|
58
|
+
export type { PlaybackCompleteCallback, PlaybackConfig } from './Infrastructure/AudioPlayback';
|
|
59
|
+
/** @advanced — Most consumers should use `RunAnywhere.downloadModel / loadModel / registerModels` instead. */
|
|
60
|
+
export { ModelManager } from './Infrastructure/ModelManager';
|
|
61
|
+
export type { ManagedModel, CompactModelDef, DownloadProgress, ModelFileDescriptor, ArtifactType, VLMLoader, VLMLoadParams, } from './Infrastructure/ModelManager';
|
|
62
|
+
export type { QuotaCheckResult, EvictionCandidateInfo } from './Infrastructure/ModelDownloader';
|
|
63
|
+
export { OPFSStorage } from './Infrastructure/OPFSStorage';
|
|
64
|
+
export type { StoredModelInfo, MetadataMap, ModelMetadata } from './Infrastructure/OPFSStorage';
|
|
65
|
+
export { VLMWorkerBridge } from './Infrastructure/VLMWorkerBridge';
|
|
66
|
+
export type { VLMWorkerResult, VLMLoadModelParams, VLMProcessOptions, VLMWorkerCommand, VLMWorkerResponse, ProgressListener, } from './Infrastructure/VLMWorkerBridge';
|
|
67
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RunAnywhere Web SDK
|
|
3
|
+
*
|
|
4
|
+
* On-device AI inference in the browser via RACommons WebAssembly.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import { RunAnywhere } from '@runanywhere/web';
|
|
11
|
+
*
|
|
12
|
+
* // Initialize
|
|
13
|
+
* await RunAnywhere.initialize({ environment: 'development' });
|
|
14
|
+
*
|
|
15
|
+
* // Check capabilities
|
|
16
|
+
* console.log('WebGPU:', RunAnywhere.isWASMLoaded);
|
|
17
|
+
*
|
|
18
|
+
* // Future: Generate text
|
|
19
|
+
* // const result = await RunAnywhere.generate('Hello!', { maxTokens: 100 });
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
// Main entry point
|
|
23
|
+
export { RunAnywhere } from './Public/RunAnywhere';
|
|
24
|
+
// Extensions
|
|
25
|
+
export { TextGeneration } from './Public/Extensions/RunAnywhere+TextGeneration';
|
|
26
|
+
export { STT, STTModelType } from './Public/Extensions/RunAnywhere+STT';
|
|
27
|
+
export { TTS } from './Public/Extensions/RunAnywhere+TTS';
|
|
28
|
+
export { VAD, SpeechActivity } from './Public/Extensions/RunAnywhere+VAD';
|
|
29
|
+
export { VoiceAgent, VoiceAgentSession, PipelineState } from './Public/Extensions/RunAnywhere+VoiceAgent';
|
|
30
|
+
export { VoicePipeline } from './Public/Extensions/RunAnywhere+VoicePipeline';
|
|
31
|
+
export { VLM, VLMImageFormat, VLMModelFamily } from './Public/Extensions/RunAnywhere+VLM';
|
|
32
|
+
export { ToolCalling, toToolValue, fromToolValue, getStringArg, getNumberArg } from './Public/Extensions/RunAnywhere+ToolCalling';
|
|
33
|
+
export { StructuredOutput } from './Public/Extensions/RunAnywhere+StructuredOutput';
|
|
34
|
+
export { Diffusion } from './Public/Extensions/RunAnywhere+Diffusion';
|
|
35
|
+
export { DiffusionScheduler, DiffusionModelVariant, DiffusionMode } from './Public/Extensions/RunAnywhere+Diffusion';
|
|
36
|
+
export { Embeddings } from './Public/Extensions/RunAnywhere+Embeddings';
|
|
37
|
+
export { EmbeddingsNormalize, EmbeddingsPooling } from './Public/Extensions/RunAnywhere+Embeddings';
|
|
38
|
+
// Types
|
|
39
|
+
export * from './types';
|
|
40
|
+
// Foundation
|
|
41
|
+
export { SDKError, SDKErrorCode } from './Foundation/ErrorTypes';
|
|
42
|
+
export { SDKLogger, LogLevel } from './Foundation/SDKLogger';
|
|
43
|
+
export { EventBus } from './Foundation/EventBus';
|
|
44
|
+
// Infrastructure
|
|
45
|
+
export { detectCapabilities, getDeviceInfo } from './Infrastructure/DeviceCapabilities';
|
|
46
|
+
export { AudioCapture } from './Infrastructure/AudioCapture';
|
|
47
|
+
export { VideoCapture } from './Infrastructure/VideoCapture';
|
|
48
|
+
export { AudioPlayback } from './Infrastructure/AudioPlayback';
|
|
49
|
+
/** @advanced — Most consumers should use `RunAnywhere.downloadModel / loadModel / registerModels` instead. */
|
|
50
|
+
export { ModelManager } from './Infrastructure/ModelManager';
|
|
51
|
+
export { OPFSStorage } from './Infrastructure/OPFSStorage';
|
|
52
|
+
export { VLMWorkerBridge } from './Infrastructure/VLMWorkerBridge';
|
|
53
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,mBAAmB;AACnB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,aAAa;AACb,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAChF,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAKxE,OAAO,EAAE,GAAG,EAAE,MAAM,qCAAqC,CAAC;AAE1D,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE1G,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAE9E,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAE1F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAKlI,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAErH,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAGpG,QAAQ;AACR,cAAc,SAAS,CAAC;AAExB,aAAa;AACb,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,iBAAiB;AACjB,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAExF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,8GAA8G;AAC9G,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAM7D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RunAnywhere Web SDK - LLM Types
|
|
3
|
+
*
|
|
4
|
+
* Mirrored from: sdk/runanywhere-react-native/packages/core/src/types/LLMTypes.ts
|
|
5
|
+
* Source of truth: sdk/runanywhere-swift/Sources/RunAnywhere/Public/Extensions/LLM/LLMTypes.swift
|
|
6
|
+
*/
|
|
7
|
+
import type { HardwareAcceleration, LLMFramework } from './enums';
|
|
8
|
+
export interface LLMGenerationOptions {
|
|
9
|
+
maxTokens?: number;
|
|
10
|
+
temperature?: number;
|
|
11
|
+
topP?: number;
|
|
12
|
+
topK?: number;
|
|
13
|
+
stopSequences?: string[];
|
|
14
|
+
systemPrompt?: string;
|
|
15
|
+
streamingEnabled?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface LLMGenerationResult {
|
|
18
|
+
text: string;
|
|
19
|
+
thinkingContent?: string;
|
|
20
|
+
inputTokens: number;
|
|
21
|
+
tokensUsed: number;
|
|
22
|
+
modelUsed: string;
|
|
23
|
+
latencyMs: number;
|
|
24
|
+
framework: LLMFramework;
|
|
25
|
+
hardwareUsed: HardwareAcceleration;
|
|
26
|
+
tokensPerSecond: number;
|
|
27
|
+
timeToFirstTokenMs?: number;
|
|
28
|
+
thinkingTokens: number;
|
|
29
|
+
responseTokens: number;
|
|
30
|
+
}
|
|
31
|
+
export interface LLMStreamingResult {
|
|
32
|
+
stream: AsyncIterable<string>;
|
|
33
|
+
result: Promise<LLMGenerationResult>;
|
|
34
|
+
cancel: () => void;
|
|
35
|
+
}
|
|
36
|
+
export interface LLMStreamingMetrics {
|
|
37
|
+
fullText: string;
|
|
38
|
+
tokenCount: number;
|
|
39
|
+
timeToFirstTokenMs?: number;
|
|
40
|
+
totalTimeMs: number;
|
|
41
|
+
tokensPerSecond: number;
|
|
42
|
+
completed: boolean;
|
|
43
|
+
error?: string;
|
|
44
|
+
}
|
|
45
|
+
export type LLMTokenCallback = (token: string) => void;
|
|
46
|
+
export type LLMStreamCompleteCallback = (result: LLMGenerationResult) => void;
|
|
47
|
+
export type LLMStreamErrorCallback = (error: Error) => void;
|
|
48
|
+
//# sourceMappingURL=LLMTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMTypes.d.ts","sourceRoot":"","sources":["../../src/types/LLMTypes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAElE,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,YAAY,CAAC;IACxB,YAAY,EAAE,oBAAoB,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AACvD,MAAM,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;AAC9E,MAAM,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RunAnywhere Web SDK - LLM Types
|
|
3
|
+
*
|
|
4
|
+
* Mirrored from: sdk/runanywhere-react-native/packages/core/src/types/LLMTypes.ts
|
|
5
|
+
* Source of truth: sdk/runanywhere-swift/Sources/RunAnywhere/Public/Extensions/LLM/LLMTypes.swift
|
|
6
|
+
*/
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=LLMTypes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMTypes.js","sourceRoot":"","sources":["../../src/types/LLMTypes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|