transformers.js/tests/hub.test.js

36 lines
1.3 KiB
JavaScript

import { AutoModel, PreTrainedModel } from '../src/transformers.js';
import { MAX_TEST_EXECUTION_TIME } from './init.js';
// TODO: Set cache folder to a temp directory
describe('Hub', () => {
describe('Loading models', () => {
it('should load a model from the local cache', async () => {
// 1. Local model exists (doesn't matter about status of remote file since local is tried first)
let model = await AutoModel.from_pretrained('t5-small');
expect(model).toBeInstanceOf(PreTrainedModel);
}, MAX_TEST_EXECUTION_TIME);
it('should load a model from the remote cache', async () => {
// 2. Local model doesn't exist, remote file exists
// This tests that fallback functionality is working
let model = await AutoModel.from_pretrained('Xenova/t5-small');
expect(model).toBeInstanceOf(PreTrainedModel);
}, MAX_TEST_EXECUTION_TIME);
it('should fail to load a model', async () => {
// 3. Local model doesn't exist, remote file doesn't exist
// This tests that error handling is working.
await expect(
AutoModel.from_pretrained('Xenova/this-model-does-not-exist')
).rejects
.toBeInstanceOf(Error);
}, MAX_TEST_EXECUTION_TIME);
});
});