Hub

utils/hub

Utility functions to interact with the BOINC AI Hub (https://boincai.com/models)


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 </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 - 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:

  • a string, the model id of a model repo on boincai.com.

  • a path to a directory potentially containing the file.

filename

string

The name of the file to locate in path_or_repo.

[fatal]

boolean

true

Whether to throw an error if the file is not found.

[options]

PretrainedOptions

An object containing optional parameters.


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


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


new FileResponse(filePath)

Creates a new FileResponse object.

Param
Type

filePath

string | URL


fileResponse._CONTENT_TYPE_MAP

Mapping from file extensions to MIME types.

Kind: instance property of FileResponse


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


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~isValidHttpUrl(string, [validHosts]) ⇒ <code> boolean </code>

Determines whether the given string is a valid HTTP or HTTPS URL.

Kind: inner method of utils/hub Returns: boolean - True if the string is a valid HTTP or HTTPS URL, false otherwise.

Param
Type
Default
Description

string

string | URL

The string to test for validity as an HTTP or HTTPS URL.

[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 BOINC AI 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

[quantized]

boolean

true

Whether to load the 8-bit quantized version of the model (only applicable when loading model files).

[progress_callback]

function

If specified, this function will be called during model construction, to provide the user with progress updates.

[config]

Object

Configuration for the model to use instead of an automatically loaded configuration. Configuration can be automatically loaded when:

  • The model is a model provided by the library (loaded with the model id string of a pretrained model).

  • The model is loaded by supplying a local directory as pretrained_model_name_or_path and a configuration JSON file named config.json is found in the directory.

[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 boincai.com, so revision can be any identifier allowed by git. NOTE: This setting is ignored for local requests.

[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.

Last updated