Instructions to use Xenova/tiny-random-WhisperForConditionalGeneration with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers.js
How to use Xenova/tiny-random-WhisperForConditionalGeneration with Transformers.js:
// npm i @huggingface/transformers import { pipeline } from '@huggingface/transformers'; // Allocate pipeline const pipe = await pipeline('automatic-speech-recognition', 'Xenova/tiny-random-WhisperForConditionalGeneration');
| tags: | |
| - transformers.js | |
| Code to generate: | |
| ```py | |
| from transformers import WhisperForConditionalGeneration, AutoProcessor | |
| new_config_values = dict( | |
| d_model = 16, | |
| decoder_attention_heads = 4, | |
| decoder_layers = 1, | |
| encoder_attention_heads = 4, | |
| encoder_layers = 1, | |
| num_hidden_layers = 1, | |
| ignore_mismatched_sizes=True, | |
| ) | |
| original_model = WhisperForConditionalGeneration.from_pretrained('openai/whisper-tiny', **new_config_values) | |
| original_model.save_pretrained('converted') | |
| original_processor = AutoProcessor.from_pretrained('openai/whisper-tiny') | |
| original_processor.save_pretrained('converted') | |
| ``` | |
| Followed by: | |
| ```sh | |
| $ mkdir -p ./converted/onnx | |
| $ optimum-cli export onnx -m ./converted ./converted/onnx --task automatic-speech-recognition-with-past | |
| $ find ./converted/onnx -type f ! -name "*.onnx" -delete | |
| ``` | |
| ## Usage (Transformers.js) | |
| If you haven't already, you can install the [Transformers.js](https://huggingface.co/docs/transformers.js) JavaScript library from [NPM](https://www.npmjs.com/package/@huggingface/transformers) using: | |
| ```bash | |
| npm i @huggingface/transformers | |
| ``` | |
| **Example:** Transcribe audio from a URL. | |
| ```js | |
| import { pipeline } from '@huggingface/transformers'; | |
| const transcriber = await pipeline('automatic-speech-recognition', 'Xenova/tiny-random-WhisperForConditionalGeneration'); | |
| const url = 'https://huggingface.co/datasets/Xenova/transformers.js-docs/resolve/main/jfk.wav'; | |
| const output = await transcriber(url); | |
| ``` | |
| Note: Having a separate repo for ONNX weights is intended to be a temporary solution until WebML gains more traction. If you would like to make your models web-ready, we recommend converting to ONNX using [🤗 Optimum](https://huggingface.co/docs/optimum/index) and structuring your repo like this one (with ONNX weights located in a subfolder named `onnx`). |