Buckets:

rtrm's picture
|
download
raw
8.78 kB
# processors
Processors are used to prepare inputs (e.g., text, image or audio) for a model.
**Example:** Using a `WhisperProcessor` to prepare an audio input for a model.
```javascript
import { AutoProcessor, read_audio } from '@huggingface/transformers';
const processor = await AutoProcessor.from_pretrained('openai/whisper-tiny.en');
const audio = await read_audio('https://huggingface.co/datasets/Narsil/asr_dummy/resolve/main/mlk.flac', 16000);
const { input_features } = await processor(audio);
// Tensor {
// data: Float32Array(240000) [0.4752984642982483, 0.5597258806228638, 0.56434166431427, ...],
// dims: [1, 80, 3000],
// type: 'float32',
// size: 240000,
// }
```
* [processors](#module_processors)
* _static_
* [.Processor](#module_processors.Processor)
* [`new Processor(config, components, chat_template)`](#new_module_processors.Processor_new)
* _instance_
* [`.image_processor`](#module_processors.Processor+image_processor) ⇒ <code>*</code>
* [`.tokenizer`](#module_processors.Processor+tokenizer) ⇒ <code>PreTrainedTokenizer</code> | <code>undefined</code>
* [`.feature_extractor`](#module_processors.Processor+feature_extractor) ⇒ <code>*</code>
* [`.apply_chat_template(messages, options)`](#module_processors.Processor+apply_chat_template) ⇒ <code>*</code>
* [`.batch_decode(...args)`](#module_processors.Processor+batch_decode) ⇒ <code>*</code>
* [`.decode(...args)`](#module_processors.Processor+decode) ⇒ <code>*</code>
* [`._call(input, ...args)`](#module_processors.Processor+_call) ⇒ <code>Promise.&lt;any&gt;</code>
* _static_
* [`.from_pretrained(pretrained_model_name_or_path, options)`](#module_processors.Processor.from_pretrained) ⇒ <code>Promise.&lt;Processor&gt;</code>
* _inner_
* [`~PreTrainedTokenizer`](#module_processors..PreTrainedTokenizer) : <code>Object</code>
* * *
<a id="module_processors.Processor" class="group"></a>
## processors.Processor
Represents a Processor that extracts features from an input.
**Kind**: static class of [<code>processors</code>](#module_processors)
* [.Processor](#module_processors.Processor)
* [`new Processor(config, components, chat_template)`](#new_module_processors.Processor_new)
* _instance_
* [`.image_processor`](#module_processors.Processor+image_processor) ⇒ <code>*</code>
* [`.tokenizer`](#module_processors.Processor+tokenizer) ⇒ <code>PreTrainedTokenizer</code> | <code>undefined</code>
* [`.feature_extractor`](#module_processors.Processor+feature_extractor) ⇒ <code>*</code>
* [`.apply_chat_template(messages, options)`](#module_processors.Processor+apply_chat_template) ⇒ <code>*</code>
* [`.batch_decode(...args)`](#module_processors.Processor+batch_decode) ⇒ <code>*</code>
* [`.decode(...args)`](#module_processors.Processor+decode) ⇒ <code>*</code>
* [`._call(input, ...args)`](#module_processors.Processor+_call) ⇒ <code>Promise.&lt;any&gt;</code>
* _static_
* [`.from_pretrained(pretrained_model_name_or_path, options)`](#module_processors.Processor.from_pretrained) ⇒ <code>Promise.&lt;Processor&gt;</code>
* * *
<a id="new_module_processors.Processor_new" class="group"></a>
### `new Processor(config, components, chat_template)`
Creates a new Processor with the given components
<table>
<thead>
<tr>
<th>Param</th><th>Type</th>
</tr>
</thead>
<tbody>
<tr>
<td>config</td><td><code>Object</code></td>
</tr><tr>
<td>components</td><td><code>Record.&lt;string, Object&gt;</code></td>
</tr><tr>
<td>chat_template</td><td><code>string</code></td>
</tr> </tbody>
</table>
* * *
<a id="module_processors.Processor+image_processor" class="group"></a>
### `processor.image_processor` ⇒ <code>*</code>
**Kind**: instance property of [<code>Processor</code>](#module_processors.Processor)
**Returns**: <code>*</code> - The image processor of the processor, if it exists.
* * *
<a id="module_processors.Processor+tokenizer" class="group"></a>
### `processor.tokenizer` ⇒ <code>PreTrainedTokenizer</code> | <code>undefined</code>
**Kind**: instance property of [<code>Processor</code>](#module_processors.Processor)
**Returns**: <code>PreTrainedTokenizer</code> | <code>undefined</code> - The tokenizer of the processor, if it exists.
* * *
<a id="module_processors.Processor+feature_extractor" class="group"></a>
### `processor.feature_extractor` ⇒ <code>*</code>
**Kind**: instance property of [<code>Processor</code>](#module_processors.Processor)
**Returns**: <code>*</code> - The feature extractor of the processor, if it exists.
* * *
<a id="module_processors.Processor+apply_chat_template" class="group"></a>
### `processor.apply_chat_template(messages, options)` ⇒ <code>*</code>
**Kind**: instance method of [<code>Processor</code>](#module_processors.Processor)
<table>
<thead>
<tr>
<th>Param</th><th>Type</th>
</tr>
</thead>
<tbody>
<tr>
<td>messages</td><td><code>*</code></td>
</tr><tr>
<td>options</td><td><code>*</code></td>
</tr> </tbody>
</table>
* * *
<a id="module_processors.Processor+batch_decode" class="group"></a>
### `processor.batch_decode(...args)` ⇒ <code>*</code>
**Kind**: instance method of [<code>Processor</code>](#module_processors.Processor)
<table>
<thead>
<tr>
<th>Param</th><th>Type</th>
</tr>
</thead>
<tbody>
<tr>
<td>...args</td><td><code>*</code></td>
</tr> </tbody>
</table>
* * *
<a id="module_processors.Processor+decode" class="group"></a>
### `processor.decode(...args)` ⇒ <code>*</code>
**Kind**: instance method of [<code>Processor</code>](#module_processors.Processor)
<table>
<thead>
<tr>
<th>Param</th><th>Type</th>
</tr>
</thead>
<tbody>
<tr>
<td>...args</td><td><code>*</code></td>
</tr> </tbody>
</table>
* * *
<a id="module_processors.Processor+_call" class="group"></a>
### `processor._call(input, ...args)` ⇒ <code>Promise.&lt;any&gt;</code>
Calls the feature_extractor function with the given input.
**Kind**: instance method of [<code>Processor</code>](#module_processors.Processor)
**Returns**: <code>Promise.&lt;any&gt;</code> - A Promise that resolves with the extracted features.
<table>
<thead>
<tr>
<th>Param</th><th>Type</th><th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>input</td><td><code>any</code></td><td><p>The input to extract features from.</p>
</td>
</tr><tr>
<td>...args</td><td><code>any</code></td><td><p>Additional arguments.</p>
</td>
</tr> </tbody>
</table>
* * *
<a id="module_processors.Processor.from_pretrained" class="group"></a>
### `Processor.from_pretrained(pretrained_model_name_or_path, options)` ⇒ <code>Promise.&lt;Processor&gt;</code>
Instantiate one of the processor classes of the library from a pretrained model.
The processor class to instantiate is selected based on the `image_processor_type` (or `feature_extractor_type`; legacy)
property of the config object (either passed as an argument or loaded from `pretrained_model_name_or_path` if possible)
**Kind**: static method of [<code>Processor</code>](#module_processors.Processor)
**Returns**: <code>Promise.&lt;Processor&gt;</code> - A new instance of the Processor class.
<table>
<thead>
<tr>
<th>Param</th><th>Type</th><th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>pretrained_model_name_or_path</td><td><code>string</code></td><td><p>The name or path of the pretrained model. Can be either:</p>
<ul>
<li>A string, the <em>model id</em> of a pretrained processor hosted inside a model repo on huggingface.co.
Valid model ids can be located at the root-level, like <code>bert-base-uncased</code>, or namespaced under a
user or organization name, like <code>dbmdz/bert-base-german-cased</code>.</li>
<li>A path to a <em>directory</em> containing processor files, e.g., <code>./my_model_directory/</code>.</li>
</ul>
</td>
</tr><tr>
<td>options</td><td><code><a href="#PretrainedProcessorOptions">PretrainedProcessorOptions</a></code></td><td><p>Additional options for loading the processor.</p>
</td>
</tr> </tbody>
</table>
* * *
<a id="module_processors..PreTrainedTokenizer" class="group"></a>
## `processors~PreTrainedTokenizer` : <code>Object</code>
Additional processor-specific properties.
**Kind**: inner typedef of [<code>processors</code>](#module_processors)
* * *
<EditOnGithub source="https://github.com/huggingface/transformers.js/blob/main/docs/source/api/processors.md" />

Xet Storage Details

Size:
8.78 kB
·
Xet hash:
06e29726a48d18cf544e9c4858c288a00797e4e4e4b93e1c755b8e85b67c4b9e

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.