UNPKG

transformers-fork

Version:

State-of-the-art Machine Learning for the web. Run 🤗 Transformers directly in your browser, with no need for a server!

30 lines (22 loc) • 1.29 kB
import { GITHUB_ISSUE_URL, IMAGE_PROCESSOR_NAME } from '../../utils/constants.js'; import { getModelJSON } from '../../utils/hub.js'; import { ImageProcessor } from '../../base/image_processors_utils.js'; import * as AllImageProcessors from '../image_processors.js'; export class AutoImageProcessor { /** @type {typeof ImageProcessor.from_pretrained} */ static async from_pretrained(pretrained_model_name_or_path, options={}) { const preprocessorConfig = await getModelJSON(pretrained_model_name_or_path, IMAGE_PROCESSOR_NAME, true, options); // Determine image processor class const key = preprocessorConfig.image_processor_type ?? preprocessorConfig.feature_extractor_type; let image_processor_class = AllImageProcessors[key]; if (!image_processor_class) { if (key !== undefined) { // Only log a warning if the class is not found and the key is set. console.warn(`Image processor type '${key}' not found, assuming base ImageProcessor. Please report this at ${GITHUB_ISSUE_URL}.`) } image_processor_class = ImageProcessor; } // Instantiate image processor return new image_processor_class(preprocessorConfig); } }