Spaces:
Running
Running
chore: deploy Laya Tetris 48faaf3
Browse files- deploy-sha.txt +1 -1
- flutter_bootstrap.js +1 -1
- main.dart.js +0 -0
- webgpu_bridge/llama_webgpu_bridge.d.ts +10 -0
- webgpu_bridge/llama_webgpu_bridge.js +64 -13
- webgpu_bridge/llama_webgpu_core.wasm +2 -2
- webgpu_bridge/llama_webgpu_core_mem64.wasm +2 -2
- webgpu_bridge/manifest.json +23 -23
- webgpu_bridge/sha256sums.txt +4 -4
deploy-sha.txt
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
|
|
|
|
| 1 |
+
48faaf32be7ca52f86cf49cc4249af0c67366d82
|
flutter_bootstrap.js
CHANGED
|
@@ -42,6 +42,6 @@ _flutter.buildConfig = {"engineRevision":"5d531788691ec3404cac0cee66ead4007b1773
|
|
| 42 |
|
| 43 |
_flutter.loader.load({
|
| 44 |
serviceWorkerSettings: {
|
| 45 |
-
serviceWorkerVersion: "
|
| 46 |
}
|
| 47 |
});
|
|
|
|
| 42 |
|
| 43 |
_flutter.loader.load({
|
| 44 |
serviceWorkerSettings: {
|
| 45 |
+
serviceWorkerVersion: "3539410200" /* Flutter's service worker is deprecated and will be removed in a future Flutter release. */
|
| 46 |
}
|
| 47 |
});
|
main.dart.js
CHANGED
|
The diff for this file is too large to render.
See raw diff
|
|
|
webgpu_bridge/llama_webgpu_bridge.d.ts
CHANGED
|
@@ -7,7 +7,10 @@ export interface LlamaWebGpuBridgeConfig {
|
|
| 7 |
coreModuleUrlMem64?: string;
|
| 8 |
wasmUrl?: string;
|
| 9 |
wasmUrlMem64?: string;
|
|
|
|
| 10 |
coreModuleFactory?: LlamaCoreModuleFactory | Promise<LlamaCoreModuleFactory>;
|
|
|
|
|
|
|
| 11 |
workerUrl?: string;
|
| 12 |
disableWorker?: boolean;
|
| 13 |
preferMemory64?: boolean;
|
|
@@ -298,6 +301,13 @@ export class EmbeddingError extends Error {
|
|
| 298 |
constructor(code: EmbeddingErrorCode, message: string);
|
| 299 |
}
|
| 300 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 301 |
export interface NextTokenScoreOptions {
|
| 302 |
/** Token ids to score, in the order the result lists them. */
|
| 303 |
candidates?: ArrayLike<number>;
|
|
|
|
| 7 |
coreModuleUrlMem64?: string;
|
| 8 |
wasmUrl?: string;
|
| 9 |
wasmUrlMem64?: string;
|
| 10 |
+
/** A custom factory skips the cross-origin isolation check, so a custom pthread core on a page that is not isolated still waits for `coreInitTimeoutMs`. */
|
| 11 |
coreModuleFactory?: LlamaCoreModuleFactory | Promise<LlamaCoreModuleFactory>;
|
| 12 |
+
/** Set for a `coreModuleUrl` core built without pthreads (`WEBGPU_BRIDGE_PTHREADS=0`): it loads on a page that is not cross-origin isolated, capped to one thread, instead of rejecting with `CrossOriginIsolationError`. */
|
| 13 |
+
allowSingleThreadCore?: boolean;
|
| 14 |
workerUrl?: string;
|
| 15 |
disableWorker?: boolean;
|
| 16 |
preferMemory64?: boolean;
|
|
|
|
| 301 |
constructor(code: EmbeddingErrorCode, message: string);
|
| 302 |
}
|
| 303 |
|
| 304 |
+
export type CrossOriginIsolationErrorCode = 'CROSS_ORIGIN_ISOLATION_REQUIRED';
|
| 305 |
+
/** Thrown by a load or core init on a page that cannot share memory with workers, before the core starts. */
|
| 306 |
+
export class CrossOriginIsolationError extends Error {
|
| 307 |
+
code: CrossOriginIsolationErrorCode;
|
| 308 |
+
constructor(message?: string);
|
| 309 |
+
}
|
| 310 |
+
|
| 311 |
export interface NextTokenScoreOptions {
|
| 312 |
/** Token ids to score, in the order the result lists them. */
|
| 313 |
candidates?: ArrayLike<number>;
|
webgpu_bridge/llama_webgpu_bridge.js
CHANGED
|
@@ -1402,16 +1402,53 @@ function isSafariUserAgent(userAgent) {
|
|
| 1402 |
const hasOtherBrowserToken = /(Chrome|Chromium|CriOS|Edg|OPR|Firefox|FxiOS)\//.test(userAgent);
|
| 1403 |
return hasSafariToken && !hasOtherBrowserToken;
|
| 1404 |
}
|
| 1405 |
-
function
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1406 |
try {
|
| 1407 |
-
|
| 1408 |
-
|
| 1409 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1410 |
} catch (_) {
|
|
|
|
| 1411 |
}
|
| 1412 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1413 |
}
|
| 1414 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1415 |
// js/src/internal/image.ts
|
| 1416 |
async function decodeImageBytesToRgb(bytes, options = {}) {
|
| 1417 |
const sourceBytes = toUint8Array(bytes);
|
|
@@ -2751,6 +2788,9 @@ var LlamaWebGpuBridgeRuntime = class {
|
|
| 2751 |
this._applyCoreLogLevel();
|
| 2752 |
return this._core;
|
| 2753 |
}
|
|
|
|
|
|
|
|
|
|
| 2754 |
const candidates = [];
|
| 2755 |
if (this._config.coreModuleFactory) {
|
| 2756 |
candidates.push({
|
|
@@ -2942,6 +2982,18 @@ var LlamaWebGpuBridgeRuntime = class {
|
|
| 2942 |
if (Number.isFinite(requestedGpuLayers)) {
|
| 2943 |
this._nGpuLayers = Math.trunc(requestedGpuLayers);
|
| 2944 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2945 |
const isCpuModelMode = this._nGpuLayers === 0;
|
| 2946 |
const requestedBatch = Number(options.nBatch);
|
| 2947 |
this._nBatch = Number.isFinite(requestedBatch) && requestedBatch > 0 ? Math.max(32, Math.trunc(requestedBatch)) : isCpuModelMode ? Math.min(this._nCtx, 512) : 0;
|
|
@@ -2963,14 +3015,10 @@ var LlamaWebGpuBridgeRuntime = class {
|
|
| 2963 |
if (Number.isFinite(this._threadPoolSizeHint) && this._threadPoolSizeHint > 0) {
|
| 2964 |
this._pushRuntimeNote(`thread_pool_size:${this._threadPoolSizeHint}`);
|
| 2965 |
}
|
| 2966 |
-
if (!
|
| 2967 |
this._runtimeNotes.push("threads_capped_no_coi");
|
| 2968 |
-
|
| 2969 |
-
|
| 2970 |
-
}
|
| 2971 |
-
if (this._threadsBatch > 1) {
|
| 2972 |
-
this._threadsBatch = 1;
|
| 2973 |
-
}
|
| 2974 |
}
|
| 2975 |
this._pushRuntimeNote(`threads_batch:${this._threadsBatch}`);
|
| 2976 |
if (this._nBatch > 0) {
|
|
@@ -5346,7 +5394,7 @@ var BridgeWorkerProxy = class {
|
|
| 5346 |
this._pending.delete(id);
|
| 5347 |
if (type === "error") {
|
| 5348 |
const errorMessage = String(message.message || "Worker request failed");
|
| 5349 |
-
const workerError = message.embeddingErrorCode ? new EmbeddingError(message.embeddingErrorCode, errorMessage) : new Error(errorMessage);
|
| 5350 |
if (isDecisionErrorCode(message.decisionErrorCode)) {
|
| 5351 |
withDecisionErrorCode(workerError, message.decisionErrorCode);
|
| 5352 |
}
|
|
@@ -6472,6 +6520,7 @@ var LlamaWebGpuBridge = class {
|
|
| 6472 |
coreModuleUrl: typeof config.coreModuleUrl === "string" ? config.coreModuleUrl : void 0,
|
| 6473 |
coreModuleUrlMem64: typeof config.coreModuleUrlMem64 === "string" ? config.coreModuleUrlMem64 : void 0,
|
| 6474 |
preferMemory64: typeof config.preferMemory64 === "boolean" ? config.preferMemory64 : void 0,
|
|
|
|
| 6475 |
threads: Number(config.threads) > 0 ? Number(config.threads) : void 0,
|
| 6476 |
threadsBatch: Number(config.threadsBatch) > 0 ? Number(config.threadsBatch) : void 0,
|
| 6477 |
threadPoolSize: Number(config.threadPoolSize) > 0 ? Number(config.threadPoolSize) : void 0,
|
|
@@ -8261,6 +8310,7 @@ function installBridgeWorkerHost() {
|
|
| 8261 |
id,
|
| 8262 |
message: serializeWorkerError(error),
|
| 8263 |
...error instanceof EmbeddingError ? { embeddingErrorCode: error.code } : {},
|
|
|
|
| 8264 |
...decisionErrorCode ? { decisionErrorCode } : {},
|
| 8265 |
state
|
| 8266 |
});
|
|
@@ -8628,6 +8678,7 @@ if (typeof window !== "undefined") {
|
|
| 8628 |
}
|
| 8629 |
}
|
| 8630 |
export {
|
|
|
|
| 8631 |
EmbeddingError,
|
| 8632 |
LlamaWebGpuBridge,
|
| 8633 |
enableBridgeWorkerHost
|
|
|
|
| 1402 |
const hasOtherBrowserToken = /(Chrome|Chromium|CriOS|Edg|OPR|Firefox|FxiOS)\//.test(userAgent);
|
| 1403 |
return hasSafariToken && !hasOtherBrowserToken;
|
| 1404 |
}
|
| 1405 |
+
function canPostSharedMemory() {
|
| 1406 |
+
if (typeof MessageChannel !== "function" || typeof WebAssembly === "undefined") {
|
| 1407 |
+
return true;
|
| 1408 |
+
}
|
| 1409 |
+
let channel = null;
|
| 1410 |
try {
|
| 1411 |
+
channel = new MessageChannel();
|
| 1412 |
+
channel.port1.postMessage(new WebAssembly.Memory({ initial: 1, maximum: 1, shared: true }));
|
| 1413 |
+
return true;
|
| 1414 |
+
} catch (_) {
|
| 1415 |
+
return false;
|
| 1416 |
+
} finally {
|
| 1417 |
+
channel?.port1.close();
|
| 1418 |
+
channel?.port2.close();
|
| 1419 |
+
}
|
| 1420 |
+
}
|
| 1421 |
+
async function describeWebGpuUnavailable() {
|
| 1422 |
+
const gpu = globalThis.navigator?.gpu;
|
| 1423 |
+
if (!gpu || typeof gpu.requestAdapter !== "function") {
|
| 1424 |
+
return { reason: "no_webgpu", adapter: "" };
|
| 1425 |
+
}
|
| 1426 |
+
let adapter = null;
|
| 1427 |
+
try {
|
| 1428 |
+
adapter = await gpu.requestAdapter();
|
| 1429 |
} catch (_) {
|
| 1430 |
+
adapter = null;
|
| 1431 |
}
|
| 1432 |
+
if (!adapter) {
|
| 1433 |
+
return { reason: "no_adapter", adapter: "" };
|
| 1434 |
+
}
|
| 1435 |
+
return {
|
| 1436 |
+
reason: adapter.features?.has?.("shader-f16") ? "unknown" : "adapter_missing_shader_f16",
|
| 1437 |
+
adapter: [adapter.info?.vendor, adapter.info?.architecture].filter(Boolean).join("/")
|
| 1438 |
+
};
|
| 1439 |
}
|
| 1440 |
|
| 1441 |
+
// js/src/internal/isolation.ts
|
| 1442 |
+
var CROSS_ORIGIN_ISOLATION_REQUIRED = "CROSS_ORIGIN_ISOLATION_REQUIRED";
|
| 1443 |
+
var CrossOriginIsolationError = class extends Error {
|
| 1444 |
+
constructor(message = CROSS_ORIGIN_ISOLATION_MESSAGE) {
|
| 1445 |
+
super(message);
|
| 1446 |
+
this.name = "CrossOriginIsolationError";
|
| 1447 |
+
this.code = CROSS_ORIGIN_ISOLATION_REQUIRED;
|
| 1448 |
+
}
|
| 1449 |
+
};
|
| 1450 |
+
var CROSS_ORIGIN_ISOLATION_MESSAGE = 'The llama.cpp web core needs shared memory, which this page cannot use because it is not cross-origin isolated. Serve the page with "Cross-Origin-Opener-Policy: same-origin" and "Cross-Origin-Embedder-Policy: require-corp". "credentialless" does not isolate Safari.';
|
| 1451 |
+
|
| 1452 |
// js/src/internal/image.ts
|
| 1453 |
async function decodeImageBytesToRgb(bytes, options = {}) {
|
| 1454 |
const sourceBytes = toUint8Array(bytes);
|
|
|
|
| 2788 |
this._applyCoreLogLevel();
|
| 2789 |
return this._core;
|
| 2790 |
}
|
| 2791 |
+
if (!this._config.coreModuleFactory && this._config.allowSingleThreadCore !== true && !canPostSharedMemory()) {
|
| 2792 |
+
throw new CrossOriginIsolationError();
|
| 2793 |
+
}
|
| 2794 |
const candidates = [];
|
| 2795 |
if (this._config.coreModuleFactory) {
|
| 2796 |
candidates.push({
|
|
|
|
| 2982 |
if (Number.isFinite(requestedGpuLayers)) {
|
| 2983 |
this._nGpuLayers = Math.trunc(requestedGpuLayers);
|
| 2984 |
}
|
| 2985 |
+
if (this._nGpuLayers > 0 && !this._gpuActive) {
|
| 2986 |
+
const unavailable = await describeWebGpuUnavailable();
|
| 2987 |
+
throwIfAborted(operationSignal, abortMessage);
|
| 2988 |
+
this._pushRuntimeNote(`gpu_unavailable:${unavailable.reason}`);
|
| 2989 |
+
const detail = {
|
| 2990 |
+
no_webgpu: "this browser has no navigator.gpu",
|
| 2991 |
+
no_adapter: "the browser returned no WebGPU adapter",
|
| 2992 |
+
adapter_missing_shader_f16: `the ${unavailable.adapter || "WebGPU"} adapter lacks shader-f16`,
|
| 2993 |
+
unknown: "the core registered no WebGPU device"
|
| 2994 |
+
}[unavailable.reason];
|
| 2995 |
+
this._emitLogger("warn", `WebGPU is unavailable (${detail}); loading on the WebAssembly CPU runtime.`);
|
| 2996 |
+
}
|
| 2997 |
const isCpuModelMode = this._nGpuLayers === 0;
|
| 2998 |
const requestedBatch = Number(options.nBatch);
|
| 2999 |
this._nBatch = Number.isFinite(requestedBatch) && requestedBatch > 0 ? Math.max(32, Math.trunc(requestedBatch)) : isCpuModelMode ? Math.min(this._nCtx, 512) : 0;
|
|
|
|
| 3015 |
if (Number.isFinite(this._threadPoolSizeHint) && this._threadPoolSizeHint > 0) {
|
| 3016 |
this._pushRuntimeNote(`thread_pool_size:${this._threadPoolSizeHint}`);
|
| 3017 |
}
|
| 3018 |
+
if (!canPostSharedMemory()) {
|
| 3019 |
this._runtimeNotes.push("threads_capped_no_coi");
|
| 3020 |
+
this._threads = Math.min(this._threads, 1);
|
| 3021 |
+
this._threadsBatch = Math.min(this._threadsBatch, 1);
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3022 |
}
|
| 3023 |
this._pushRuntimeNote(`threads_batch:${this._threadsBatch}`);
|
| 3024 |
if (this._nBatch > 0) {
|
|
|
|
| 5394 |
this._pending.delete(id);
|
| 5395 |
if (type === "error") {
|
| 5396 |
const errorMessage = String(message.message || "Worker request failed");
|
| 5397 |
+
const workerError = message.embeddingErrorCode ? new EmbeddingError(message.embeddingErrorCode, errorMessage) : message.errorCode === CROSS_ORIGIN_ISOLATION_REQUIRED ? new CrossOriginIsolationError(errorMessage) : new Error(errorMessage);
|
| 5398 |
if (isDecisionErrorCode(message.decisionErrorCode)) {
|
| 5399 |
withDecisionErrorCode(workerError, message.decisionErrorCode);
|
| 5400 |
}
|
|
|
|
| 6520 |
coreModuleUrl: typeof config.coreModuleUrl === "string" ? config.coreModuleUrl : void 0,
|
| 6521 |
coreModuleUrlMem64: typeof config.coreModuleUrlMem64 === "string" ? config.coreModuleUrlMem64 : void 0,
|
| 6522 |
preferMemory64: typeof config.preferMemory64 === "boolean" ? config.preferMemory64 : void 0,
|
| 6523 |
+
allowSingleThreadCore: config.allowSingleThreadCore === true ? true : void 0,
|
| 6524 |
threads: Number(config.threads) > 0 ? Number(config.threads) : void 0,
|
| 6525 |
threadsBatch: Number(config.threadsBatch) > 0 ? Number(config.threadsBatch) : void 0,
|
| 6526 |
threadPoolSize: Number(config.threadPoolSize) > 0 ? Number(config.threadPoolSize) : void 0,
|
|
|
|
| 8310 |
id,
|
| 8311 |
message: serializeWorkerError(error),
|
| 8312 |
...error instanceof EmbeddingError ? { embeddingErrorCode: error.code } : {},
|
| 8313 |
+
...error instanceof CrossOriginIsolationError ? { errorCode: CROSS_ORIGIN_ISOLATION_REQUIRED } : {},
|
| 8314 |
...decisionErrorCode ? { decisionErrorCode } : {},
|
| 8315 |
state
|
| 8316 |
});
|
|
|
|
| 8678 |
}
|
| 8679 |
}
|
| 8680 |
export {
|
| 8681 |
+
CrossOriginIsolationError,
|
| 8682 |
EmbeddingError,
|
| 8683 |
LlamaWebGpuBridge,
|
| 8684 |
enableBridgeWorkerHost
|
webgpu_bridge/llama_webgpu_core.wasm
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
-
size
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:06be047419dcd3fb55b8d6d28577dee658d9dbe0b7e240153841d05f37a1b8a5
|
| 3 |
+
size 11099393
|
webgpu_bridge/llama_webgpu_core_mem64.wasm
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
-
size
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d81d1b4e7fecade75da7446885777ea7af7a31292fc43ed062fac9613092165d
|
| 3 |
+
size 11390682
|
webgpu_bridge/manifest.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
| 1 |
{
|
| 2 |
"artifacts": {
|
| 3 |
"llama_webgpu_bridge.d.ts": {
|
| 4 |
-
"sha256": "
|
| 5 |
-
"size_bytes":
|
| 6 |
},
|
| 7 |
"llama_webgpu_bridge.js": {
|
| 8 |
-
"sha256": "
|
| 9 |
-
"size_bytes":
|
| 10 |
},
|
| 11 |
"llama_webgpu_bridge_worker.js": {
|
| 12 |
"sha256": "47bbfa0fe897e708455b9497e9aa41d2e94489c329300c33b12936fb3169deca",
|
|
@@ -17,21 +17,21 @@
|
|
| 17 |
"size_bytes": 123583
|
| 18 |
},
|
| 19 |
"llama_webgpu_core.wasm": {
|
| 20 |
-
"sha256": "
|
| 21 |
-
"size_bytes":
|
| 22 |
},
|
| 23 |
"llama_webgpu_core_mem64.js": {
|
| 24 |
"sha256": "32b4689944aa4e3a940bddaf31928ab3476e57b9963b918cb38c1281e5688297",
|
| 25 |
"size_bytes": 147340
|
| 26 |
},
|
| 27 |
"llama_webgpu_core_mem64.wasm": {
|
| 28 |
-
"sha256": "
|
| 29 |
-
"size_bytes":
|
| 30 |
}
|
| 31 |
},
|
| 32 |
"assets_repository": "leehack/llama-web-bridge-assets",
|
| 33 |
-
"bridge_assets_tag": "v0.1.
|
| 34 |
-
"bridge_commit": "
|
| 35 |
"bridge_repository": "leehack/llama-web-bridge",
|
| 36 |
"capabilities": {
|
| 37 |
"memory64": true,
|
|
@@ -62,12 +62,12 @@
|
|
| 62 |
"emscripten_version": "6.0.8",
|
| 63 |
"files": {
|
| 64 |
"llama_webgpu_bridge.d.ts": {
|
| 65 |
-
"sha256": "
|
| 66 |
-
"size_bytes":
|
| 67 |
},
|
| 68 |
"llama_webgpu_bridge.js": {
|
| 69 |
-
"sha256": "
|
| 70 |
-
"size_bytes":
|
| 71 |
},
|
| 72 |
"llama_webgpu_bridge_worker.js": {
|
| 73 |
"sha256": "47bbfa0fe897e708455b9497e9aa41d2e94489c329300c33b12936fb3169deca",
|
|
@@ -78,27 +78,27 @@
|
|
| 78 |
"size_bytes": 123583
|
| 79 |
},
|
| 80 |
"llama_webgpu_core.wasm": {
|
| 81 |
-
"sha256": "
|
| 82 |
-
"size_bytes":
|
| 83 |
},
|
| 84 |
"llama_webgpu_core_mem64.js": {
|
| 85 |
"sha256": "32b4689944aa4e3a940bddaf31928ab3476e57b9963b918cb38c1281e5688297",
|
| 86 |
"size_bytes": 147340
|
| 87 |
},
|
| 88 |
"llama_webgpu_core_mem64.wasm": {
|
| 89 |
-
"sha256": "
|
| 90 |
-
"size_bytes":
|
| 91 |
}
|
| 92 |
},
|
| 93 |
-
"github_run_id": "
|
| 94 |
-
"github_run_url": "https://github.com/leehack/llama-web-bridge/actions/runs/
|
| 95 |
"llama_cpp_commit": "cd959bae99ff4bed22bef2604f45241c09bbb8c8",
|
| 96 |
"llama_cpp_tag": "v0.9.0",
|
| 97 |
"native_commit": "a604639131105c42a25a3e7384ca10314d385f80",
|
| 98 |
"native_manifest_sha256": "0d2119cdcf34d347a96a996423094498de3393026efb6ad1a96ba286b621c39e",
|
| 99 |
"native_release_tag": "v0.9.0",
|
| 100 |
"native_repository": "leehack/llamadart-native",
|
| 101 |
-
"orchestrator_correlation_id": "manual-v0.1.
|
| 102 |
"qualification_gates": {
|
| 103 |
"multimodal": "passed",
|
| 104 |
"speech_to_text": "required-automated-qualification",
|
|
@@ -107,9 +107,9 @@
|
|
| 107 |
},
|
| 108 |
"release_channel": "stable",
|
| 109 |
"release_rebuild": 0,
|
| 110 |
-
"release_tag": "v0.1.
|
| 111 |
"schema_version": 2,
|
| 112 |
-
"source_commit": "
|
| 113 |
"source_repository": "leehack/llama-web-bridge",
|
| 114 |
"unproven_capabilities": {
|
| 115 |
"hardware_gpu_acceleration": "unavailable-on-hosted-runners",
|
|
|
|
| 1 |
{
|
| 2 |
"artifacts": {
|
| 3 |
"llama_webgpu_bridge.d.ts": {
|
| 4 |
+
"sha256": "e897f8308267d6e461140e5ad46badecfb8629283c4a7815cba1230a9802ba89",
|
| 5 |
+
"size_bytes": 23878
|
| 6 |
},
|
| 7 |
"llama_webgpu_bridge.js": {
|
| 8 |
+
"sha256": "c91d386f5b7a42c1a2d9ba9208203cea2e062bc494e98cfcccdfa398a2a2ba24",
|
| 9 |
+
"size_bytes": 320015
|
| 10 |
},
|
| 11 |
"llama_webgpu_bridge_worker.js": {
|
| 12 |
"sha256": "47bbfa0fe897e708455b9497e9aa41d2e94489c329300c33b12936fb3169deca",
|
|
|
|
| 17 |
"size_bytes": 123583
|
| 18 |
},
|
| 19 |
"llama_webgpu_core.wasm": {
|
| 20 |
+
"sha256": "06be047419dcd3fb55b8d6d28577dee658d9dbe0b7e240153841d05f37a1b8a5",
|
| 21 |
+
"size_bytes": 11099393
|
| 22 |
},
|
| 23 |
"llama_webgpu_core_mem64.js": {
|
| 24 |
"sha256": "32b4689944aa4e3a940bddaf31928ab3476e57b9963b918cb38c1281e5688297",
|
| 25 |
"size_bytes": 147340
|
| 26 |
},
|
| 27 |
"llama_webgpu_core_mem64.wasm": {
|
| 28 |
+
"sha256": "d81d1b4e7fecade75da7446885777ea7af7a31292fc43ed062fac9613092165d",
|
| 29 |
+
"size_bytes": 11390682
|
| 30 |
}
|
| 31 |
},
|
| 32 |
"assets_repository": "leehack/llama-web-bridge-assets",
|
| 33 |
+
"bridge_assets_tag": "v0.1.85",
|
| 34 |
+
"bridge_commit": "f1ac2fc1d4d4d3fda56c161ac6a629ae4c67a7d3",
|
| 35 |
"bridge_repository": "leehack/llama-web-bridge",
|
| 36 |
"capabilities": {
|
| 37 |
"memory64": true,
|
|
|
|
| 62 |
"emscripten_version": "6.0.8",
|
| 63 |
"files": {
|
| 64 |
"llama_webgpu_bridge.d.ts": {
|
| 65 |
+
"sha256": "e897f8308267d6e461140e5ad46badecfb8629283c4a7815cba1230a9802ba89",
|
| 66 |
+
"size_bytes": 23878
|
| 67 |
},
|
| 68 |
"llama_webgpu_bridge.js": {
|
| 69 |
+
"sha256": "c91d386f5b7a42c1a2d9ba9208203cea2e062bc494e98cfcccdfa398a2a2ba24",
|
| 70 |
+
"size_bytes": 320015
|
| 71 |
},
|
| 72 |
"llama_webgpu_bridge_worker.js": {
|
| 73 |
"sha256": "47bbfa0fe897e708455b9497e9aa41d2e94489c329300c33b12936fb3169deca",
|
|
|
|
| 78 |
"size_bytes": 123583
|
| 79 |
},
|
| 80 |
"llama_webgpu_core.wasm": {
|
| 81 |
+
"sha256": "06be047419dcd3fb55b8d6d28577dee658d9dbe0b7e240153841d05f37a1b8a5",
|
| 82 |
+
"size_bytes": 11099393
|
| 83 |
},
|
| 84 |
"llama_webgpu_core_mem64.js": {
|
| 85 |
"sha256": "32b4689944aa4e3a940bddaf31928ab3476e57b9963b918cb38c1281e5688297",
|
| 86 |
"size_bytes": 147340
|
| 87 |
},
|
| 88 |
"llama_webgpu_core_mem64.wasm": {
|
| 89 |
+
"sha256": "d81d1b4e7fecade75da7446885777ea7af7a31292fc43ed062fac9613092165d",
|
| 90 |
+
"size_bytes": 11390682
|
| 91 |
}
|
| 92 |
},
|
| 93 |
+
"github_run_id": "43520247188",
|
| 94 |
+
"github_run_url": "https://github.com/leehack/llama-web-bridge/actions/runs/43520247188",
|
| 95 |
"llama_cpp_commit": "cd959bae99ff4bed22bef2604f45241c09bbb8c8",
|
| 96 |
"llama_cpp_tag": "v0.9.0",
|
| 97 |
"native_commit": "a604639131105c42a25a3e7384ca10314d385f80",
|
| 98 |
"native_manifest_sha256": "0d2119cdcf34d347a96a996423094498de3393026efb6ad1a96ba286b621c39e",
|
| 99 |
"native_release_tag": "v0.9.0",
|
| 100 |
"native_repository": "leehack/llamadart-native",
|
| 101 |
+
"orchestrator_correlation_id": "manual-v0.1.85",
|
| 102 |
"qualification_gates": {
|
| 103 |
"multimodal": "passed",
|
| 104 |
"speech_to_text": "required-automated-qualification",
|
|
|
|
| 107 |
},
|
| 108 |
"release_channel": "stable",
|
| 109 |
"release_rebuild": 0,
|
| 110 |
+
"release_tag": "v0.1.85",
|
| 111 |
"schema_version": 2,
|
| 112 |
+
"source_commit": "f1ac2fc1d4d4d3fda56c161ac6a629ae4c67a7d3",
|
| 113 |
"source_repository": "leehack/llama-web-bridge",
|
| 114 |
"unproven_capabilities": {
|
| 115 |
"hardware_gpu_acceleration": "unavailable-on-hosted-runners",
|
webgpu_bridge/sha256sums.txt
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
-
|
| 2 |
f34ad08e95cf6dd1bddd7df31794383ceb6e350553f4487746f54210f8fd9c18 llama_webgpu_core.js
|
| 3 |
-
|
| 4 |
47bbfa0fe897e708455b9497e9aa41d2e94489c329300c33b12936fb3169deca llama_webgpu_bridge_worker.js
|
| 5 |
-
|
| 6 |
32b4689944aa4e3a940bddaf31928ab3476e57b9963b918cb38c1281e5688297 llama_webgpu_core_mem64.js
|
| 7 |
-
|
|
|
|
| 1 |
+
c91d386f5b7a42c1a2d9ba9208203cea2e062bc494e98cfcccdfa398a2a2ba24 llama_webgpu_bridge.js
|
| 2 |
f34ad08e95cf6dd1bddd7df31794383ceb6e350553f4487746f54210f8fd9c18 llama_webgpu_core.js
|
| 3 |
+
06be047419dcd3fb55b8d6d28577dee658d9dbe0b7e240153841d05f37a1b8a5 llama_webgpu_core.wasm
|
| 4 |
47bbfa0fe897e708455b9497e9aa41d2e94489c329300c33b12936fb3169deca llama_webgpu_bridge_worker.js
|
| 5 |
+
e897f8308267d6e461140e5ad46badecfb8629283c4a7815cba1230a9802ba89 llama_webgpu_bridge.d.ts
|
| 6 |
32b4689944aa4e3a940bddaf31928ab3476e57b9963b918cb38c1281e5688297 llama_webgpu_core_mem64.js
|
| 7 |
+
d81d1b4e7fecade75da7446885777ea7af7a31292fc43ed062fac9613092165d llama_webgpu_core_mem64.wasm
|