utils/hub
Utility functions to interact with the Hugging Face Hub (https://huggingface.co/models)
- utils/hub
- static
.getFile(urlOrPath)
βPromise.<(FileResponse|Response)>
.getModelFile(path_or_repo_id, filename, [fatal], [options])
βPromise.<Uint8Array>
.getModelJSON(modelPath, fileName, [fatal], [options])
βPromise.<Object>
- inner
- ~FileResponse
new FileResponse(filePath)
.updateContentType()
βvoid
.clone()
βFileResponse
.arrayBuffer()
βPromise.<ArrayBuffer>
.blob()
βPromise.<Blob>
.text()
βPromise.<string>
.json()
βPromise.<Object>
- ~FileCache
new FileCache(path)
.match(request)
βPromise.<(FileResponse|undefined)>
.put(request, response)
βPromise.<void>
~CONTENT_TYPE_MAP
~isValidUrl(string, [protocols], [validHosts])
βboolean
~handleError(status, remoteURL, fatal)
βnull
~tryCache(cache, ...names)
βPromise.<(FileResponse|Response|undefined)>
~readResponse(response, progress_callback)
βPromise.<Uint8Array>
~pathJoin(...parts)
βstring
~PretrainedOptions
:Object
~ModelSpecificPretrainedOptions
:Object
~PretrainedModelOptions
:*
- ~FileResponse
- static
utils/hub.getFile(urlOrPath) β <code> Promise. < (FileResponse|Response) > </code>
Helper function to get a file, using either the Fetch API or FileSystem API.
Kind: static method of utils/hub
Returns: Promise.<(FileResponse|Response)>
- A promise that resolves to a FileResponse object (if the file is retrieved using the FileSystem API), or a Response object (if the file is retrieved using the Fetch API).
Param | Type | Description |
---|---|---|
urlOrPath | URL | string | The URL/path of the file to get. |
utils/hub.getModelFile(path_or_repo_id, filename, [fatal], [options]) β <code> Promise. < Uint8Array > </code>
Retrieves a file from either a remote URL using the Fetch API or from the local file system using the FileSystem API.
If the filesystem is available and env.useCache = true
, the file will be downloaded and cached.
Kind: static method of utils/hub
Returns: Promise.<Uint8Array>
- A Promise that resolves with the file content as a buffer.
Throws:
- Will throw an error if the file is not found and
fatal
is true.
Param | Type | Default | Description |
---|---|---|---|
path_or_repo_id | string | This can be either:
| |
filename | string | The name of the file to locate in | |
[fatal] | boolean | true | Whether to throw an error if the file is not found. |
[options] | PretrainedOptions | An object containing optional parameters. |
.getModelFile(path_or_repo_id, filename, [fatal], [options])
βPromise.<Uint8Array>
getModelFile~cacheKey : <code> string </code>
Kind: inner property of getModelFile
getModelFile~response : <code> Response </code> | <code> FileResponse </code> | <code> undefined </code>
Kind: inner property of getModelFile
getModelFile~buffer : <code> Uint8Array </code>
Kind: inner property of getModelFile
utils/hub.getModelJSON(modelPath, fileName, [fatal], [options]) β <code> Promise. < Object > </code>
Fetches a JSON file from a given path and file name.
Kind: static method of utils/hub
Returns: Promise.<Object>
- The JSON data parsed into a JavaScript object.
Throws:
- Will throw an error if the file is not found and
fatal
is true.
Param | Type | Default | Description |
---|---|---|---|
modelPath | string | The path to the directory containing the file. | |
fileName | string | The name of the file to fetch. | |
[fatal] | boolean | true | Whether to throw an error if the file is not found. |
[options] | PretrainedOptions | An object containing optional parameters. |
utils/hub~FileResponse
Kind: inner class of utils/hub
- ~FileResponse
new FileResponse(filePath)
.updateContentType()
βvoid
.clone()
βFileResponse
.arrayBuffer()
βPromise.<ArrayBuffer>
.blob()
βPromise.<Blob>
.text()
βPromise.<string>
.json()
βPromise.<Object>
new FileResponse(filePath)
Creates a new FileResponse
object.
Param | Type |
---|---|
filePath | string | URL |
fileResponse.updateContentType() β <code> void </code>
Updates the βcontent-typeβ header property of the response based on the extension of the file specified by the filePath property of the current object.
Kind: instance method of FileResponse
fileResponse.clone() β <code> FileResponse </code>
Clone the current FileResponse object.
Kind: instance method of FileResponse
Returns: FileResponse
- A new FileResponse object with the same properties as the current object.
fileResponse.arrayBuffer() β <code> Promise. < ArrayBuffer > </code>
Reads the contents of the file specified by the filePath property and returns a Promise that resolves with an ArrayBuffer containing the fileβs contents.
Kind: instance method of FileResponse
Returns: Promise.<ArrayBuffer>
- A Promise that resolves with an ArrayBuffer containing the fileβs contents.
Throws:
Error
If the file cannot be read.
fileResponse.blob() β <code> Promise. < Blob > </code>
Reads the contents of the file specified by the filePath property and returns a Promise that resolves with a Blob containing the fileβs contents.
Kind: instance method of FileResponse
Returns: Promise.<Blob>
- A Promise that resolves with a Blob containing the fileβs contents.
Throws:
Error
If the file cannot be read.
fileResponse.text() β <code> Promise. < string > </code>
Reads the contents of the file specified by the filePath property and returns a Promise that resolves with a string containing the fileβs contents.
Kind: instance method of FileResponse
Returns: Promise.<string>
- A Promise that resolves with a string containing the fileβs contents.
Throws:
Error
If the file cannot be read.
fileResponse.json() β <code> Promise. < Object > </code>
Reads the contents of the file specified by the filePath property and returns a Promise that resolves with a parsed JavaScript object containing the fileβs contents.
Kind: instance method of FileResponse
Returns: Promise.<Object>
- A Promise that resolves with a parsed JavaScript object containing the fileβs contents.
Throws:
Error
If the file cannot be read.
utils/hub~FileCache
Kind: inner class of utils/hub
- ~FileCache
new FileCache(path)
.match(request)
βPromise.<(FileResponse|undefined)>
.put(request, response)
βPromise.<void>
new FileCache(path)
Instantiate a FileCache
object.
Param | Type |
---|---|
path | string |
fileCache.match(request) β <code> Promise. < (FileResponse|undefined) > </code>
Checks whether the given request is in the cache.
Kind: instance method of FileCache
Param | Type |
---|---|
request | string |
fileCache.put(request, response) β <code> Promise. < void > </code>
Adds the given response to the cache.
Kind: instance method of FileCache
Param | Type |
---|---|
request | string |
response | Response | FileResponse |
utils/hub~CONTENT_TYPE_MAP
Mapping from file extensions to MIME types.
Kind: inner constant of utils/hub
utils/hub~isValidUrl(string, [protocols], [validHosts]) β <code> boolean </code>
Determines whether the given string is a valid URL.
Kind: inner method of utils/hub
Returns: boolean
- True if the string is a valid URL, false otherwise.
Param | Type | Default | Description |
---|---|---|---|
string | string | URL | The string to test for validity as an URL. | |
[protocols] | Array.<string> |
| A list of valid protocols. If specified, the protocol must be in this list. |
[validHosts] | Array.<string> |
| A list of valid hostnames. If specified, the URL's hostname must be in this list. |
utils/hub~handleError(status, remoteURL, fatal) β <code> null </code>
Helper method to handle fatal errors that occur while trying to load a file from the Hugging Face Hub.
Kind: inner method of utils/hub
Returns: null
- Returns null
if fatal = true
.
Throws:
Error
If `fatal = false`.
Param | Type | Description |
---|---|---|
status | number | The HTTP status code of the error. |
remoteURL | string | The URL of the file that could not be loaded. |
fatal | boolean | Whether to raise an error if the file could not be loaded. |
utils/hub~tryCache(cache, ...names) β <code> Promise. < (FileResponse|Response|undefined) > </code>
Kind: inner method of utils/hub
Returns: Promise.<(FileResponse|Response|undefined)>
- The item from the cache, or undefined if not found.
Param | Type | Description |
---|---|---|
cache | FileCache | Cache | The cache to search |
...names | Array.<string> | The names of the item to search for |
utils/hub~readResponse(response, progress_callback) β <code> Promise. < Uint8Array > </code>
Read and track progress when reading a Response object
Kind: inner method of utils/hub
Returns: Promise.<Uint8Array>
- A Promise that resolves with the Uint8Array buffer
Param | Type | Description |
---|---|---|
response | any | The Response object to read |
progress_callback | function | The function to call with progress updates |
utils/hub~pathJoin(...parts) β <code> string </code>
Joins multiple parts of a path into a single path, while handling leading and trailing slashes.
Kind: inner method of utils/hub
Returns: string
- A string representing the joined path.
Param | Type | Description |
---|---|---|
...parts | string | Multiple parts of a path. |
utils/hub~PretrainedOptions : <code> Object </code>
Options for loading a pretrained model.
Kind: inner typedef of utils/hub
Properties
Name | Type | Default | Description |
---|---|---|---|
[progress_callback] | function |
| If specified, this function will be called during model construction, to provide the user with progress updates. |
[config] | * |
| Configuration for the model to use instead of an automatically loaded configuration. Configuration can be automatically loaded when:
|
[cache_dir] | string | null | Path to a directory in which a downloaded pretrained model configuration should be cached if the standard cache should not be used. |
[local_files_only] | boolean | false | Whether or not to only look at local files (e.g., not try downloading the model). |
[revision] | string | "'main'" | The specific model version to use. It can be a branch name, a tag name, or a commit id,
since we use a git-based system for storing models and other artifacts on huggingface.co, so |
utils/hub~ModelSpecificPretrainedOptions : <code> Object </code>
Options for loading a pretrained model.
Kind: inner typedef of utils/hub
Properties
Name | Type | Default | Description |
---|---|---|---|
[subfolder] | string | "'onnx'" | In case the relevant files are located inside a subfolder of the model repo on huggingface.co, you can specify the folder name here. |
[model_file_name] | string | null | If specified, load the model with this name (excluding the .onnx suffix). Currently only valid for encoder- or decoder-only models. |
[device] | * |
| The device to run the model on. If not specified, the device will be chosen from the environment settings. |
[dtype] | * |
| The data type to use for the model. If not specified, the data type will be chosen from the environment settings. |
[use_external_data_format] | boolean | Record<string, boolean> | false | Whether to load the model using the external data format (used for models >= 2GB in size). |
[session_options] | * | (Optional) User-specified session options passed to the runtime. If not provided, suitable defaults will be chosen. |
utils/hub~PretrainedModelOptions : <code> * </code>
Options for loading a pretrained model.
Kind: inner typedef of utils/hub
< > Update on GitHub