71 lines
1.5 KiB
JavaScript
71 lines
1.5 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
"use strict";
|
|
|
|
const perfMetadata = {
|
|
owner: "GenAI Team",
|
|
name: "browser_ml_engine_perf.js",
|
|
description: "Template test for latency for ml models",
|
|
options: {
|
|
default: {
|
|
perfherder: true,
|
|
perfherder_metrics: [
|
|
{
|
|
name: "latency",
|
|
unit: "ms",
|
|
shouldAlert: false,
|
|
},
|
|
{
|
|
name: "memory",
|
|
unit: "MiB",
|
|
shouldAlert: false,
|
|
},
|
|
{
|
|
name: "tokenSpeed",
|
|
unit: "tokens/s",
|
|
shouldAlert: false,
|
|
lowerIsBetter: false,
|
|
},
|
|
{
|
|
name: "charactersSpeed",
|
|
unit: "chars/s",
|
|
shouldAlert: false,
|
|
lowerIsBetter: false,
|
|
},
|
|
],
|
|
verbose: true,
|
|
manifest: "perftest.toml",
|
|
manifest_flavor: "browser-chrome",
|
|
try_platform: ["linux", "mac", "win"],
|
|
},
|
|
},
|
|
};
|
|
|
|
requestLongerTimeout(10);
|
|
|
|
/**
|
|
* Tests remote ml model
|
|
*/
|
|
add_task(async function test_ml_generic_pipeline() {
|
|
const options = {
|
|
taskName: "feature-extraction",
|
|
modelId: "Xenova/all-MiniLM-L6-v2",
|
|
modelHubUrlTemplate: "{model}/{revision}",
|
|
modelRevision: "main",
|
|
timeoutMS: -1,
|
|
};
|
|
|
|
const args = ["The quick brown fox jumps over the lazy dog."];
|
|
const request = {
|
|
args,
|
|
options: { pooling: "mean", normalize: true },
|
|
};
|
|
await perfTest({
|
|
name: "example",
|
|
options,
|
|
request,
|
|
iterations: ITERATIONS,
|
|
addColdStart: true,
|
|
});
|
|
});
|