add distil-whisper link (#1261)

This commit is contained in:
Radamés Ajna
2023-11-03 13:34:42 -07:00
committed by GitHub
parent 3173b1ce3b
commit 0a58886ccb

View File

@ -26,32 +26,54 @@
// models base url // models base url
const MODELS = { const MODELS = {
tiny_multilingual: { tiny_multilingual: {
base_url: "https://huggingface.co/openai/whisper-tiny/resolve/main/", base_url: "https://huggingface.co/openai/whisper-tiny/resolve/main/",
model: "model.safetensors", model: "model.safetensors",
tokenizer: "tokenizer.json", tokenizer: "tokenizer.json",
config: "config.json", config: "config.json",
}, size: "151 MB",
tiny_en: { },
base_url: tiny_en: {
"https://huggingface.co/openai/whisper-tiny.en/resolve/main/", base_url:
model: "model.safetensors", "https://huggingface.co/openai/whisper-tiny.en/resolve/main/",
tokenizer: "tokenizer.json", model: "model.safetensors",
config: "config.json", tokenizer: "tokenizer.json",
}, config: "config.json",
tiny_quantized_multilingual_q80: { size: "151 MB",
base_url: "https://huggingface.co/lmz/candle-whisper/resolve/main/", },
model: "model-tiny-q80.gguf", tiny_quantized_multilingual_q80: {
tokenizer: "tokenizer-tiny.json", base_url: "https://huggingface.co/lmz/candle-whisper/resolve/main/",
config: "config-tiny.json", model: "model-tiny-q80.gguf",
}, tokenizer: "tokenizer-tiny.json",
tiny_en_quantized_q80: { config: "config-tiny.json",
base_url: "https://huggingface.co/lmz/candle-whisper/resolve/main/", size: "41.5 MB",
model: "model-tiny-q80.gguf", },
tokenizer: "tokenizer-tiny-en.json", tiny_en_quantized_q80: {
config: "config-tiny-en.json", base_url: "https://huggingface.co/lmz/candle-whisper/resolve/main/",
}, model: "model-tiny-q80.gguf",
}; tokenizer: "tokenizer-tiny-en.json",
config: "config-tiny-en.json",
size: "41.8 MB",
},
distil_medium_en: {
base_url:
"https://huggingface.co/distil-whisper/distil-medium.en/resolve/main/",
model: "model.safetensors",
tokenizer: "tokenizer.json",
config: "config.json",
size: "789 MB",
},
};
const modelEl = document.querySelector("#model");
Object.keys(MODELS).forEach((modelID) => {
const model = MODELS[modelID];
const option = document.createElement("option");
option.value = modelID;
option.textContent = `${modelID} (${model.size})`;
modelEl.appendChild(option);
});
const whisperWorker = new Worker("./whisperWorker.js", { const whisperWorker = new Worker("./whisperWorker.js", {
type: "module", type: "module",
}); });
@ -150,7 +172,7 @@
if (audioURL === null) { if (audioURL === null) {
return; return;
} }
const modelID = document.querySelector("#model").value; const modelID = modelEl.value;
const model = MODELS[modelID]; const model = MODELS[modelID];
const modelURL = model.base_url + model.model; const modelURL = model.base_url + model.model;
const tokenizerURL = model.base_url + model.tokenizer; const tokenizerURL = model.base_url + model.tokenizer;
@ -222,14 +244,6 @@
<select <select
id="model" id="model"
class="border-2 border-gray-500 rounded-md font-light"> class="border-2 border-gray-500 rounded-md font-light">
<option value="tiny_multilingual" selected>tiny (151 MB)</option>
<option value="tiny_en" selected>tiny.en (151 MB)</option>
<option value="tiny_quantized_multilingual_q80">
tiny quantized q80 (41.5 MB)
</option>
<option value="tiny_en_quantized_q80">
tiny.en quantized q80 (41.8 MB)
</option>
</select> </select>
</div> </div>
<!-- drag and drop area --> <!-- drag and drop area -->