Files
MTranServer/example/usage.ts
2026-01-01 17:08:25 +08:00

52 lines
1.6 KiB
TypeScript

import { MTran } from 'mtranserver';
async function main() {
console.log('--- MTranServer Library Usage Example ---');
// 1. Initialize MTran instance
// You can pass configuration options here.
const mtran = new MTran();
try {
// 2. Initialize (loads records, prepares environment)
console.log('Initializing MTran...');
await mtran.init();
const fromLang = 'en';
const toLang = 'zh';
const text = 'Hello world! This is a library test.';
// 3. (Optional) Ensure the model is downloaded.
// .translate() will error if the model is missing in offline mode,
// or attempt to download it if online (default).
// Calling downloadModel explicitly is good for pre-warming.
console.log(`Checking model for ${fromLang} -> ${toLang}...`);
await mtran.downloadModel(fromLang, toLang);
// 4. Perform Translation
console.log(`
Translating: "${text}"`);
const start = performance.now();
const result = await mtran.translate(fromLang, toLang, text);
const end = performance.now();
console.log(`Translation Result: "${result}"`);
console.log(`Time taken: ${(end - start).toFixed(2)}ms`);
// 5. Language Detection
console.log('\nDetecting language for: "Bonjour tout le monde"');
const detected = await mtran.detect("Bonjour tout le monde");
console.log(`Detected: ${detected}`);
} catch (error) {
console.error('An error occurred:', error);
} finally {
// 6. Cleanup
// Important: Stops background worker threads to allow process to exit cleanly
console.log('\nCleaning up...');
await mtran.close();
}
}
main();