diff --git a/compute/core/src/pdf-layout/ensureModel.ts b/compute/core/src/pdf-layout/ensureModel.ts index fbd1d5f..fcb15b2 100644 --- a/compute/core/src/pdf-layout/ensureModel.ts +++ b/compute/core/src/pdf-layout/ensureModel.ts @@ -1,4 +1,5 @@ import path from 'path'; +import { fileURLToPath } from 'url'; import { createHash } from 'crypto'; import { access, mkdir, rename, writeFile, readFile, unlink, copyFile } from 'fs/promises'; import { DOCSTORE_DIR } from '../runtime/docstore'; @@ -6,13 +7,14 @@ import manifest from './model/manifest.json'; const DEFAULT_MODEL_BASE_URL = 'https://huggingface.co/Bei0001/PP-DocLayoutV3-ONNX/resolve/main'; const PDF_LAYOUT_MODEL_BASE_URL_ENV = 'PDF_LAYOUT_MODEL_BASE_URL'; +const MODULE_DIR = path.dirname(fileURLToPath(import.meta.url)); const MODEL_DIR = path.join(DOCSTORE_DIR, 'model'); export const MODEL_PATH = path.join(MODEL_DIR, 'PP-DocLayoutV3.onnx'); export const MODEL_DATA_PATH = path.join(MODEL_DIR, 'PP-DocLayoutV3.onnx.data'); export const MODEL_CONFIG_PATH = path.join(MODEL_DIR, 'pp-doclayoutv3.config.json'); export const MODEL_PREPROCESSOR_PATH = path.join(MODEL_DIR, 'pp-doclayoutv3.preprocessor_config.json'); const LICENSE_PATH = path.join(MODEL_DIR, 'pp-doclayoutv3.LICENSE.txt'); -const STATIC_LICENSE_PATH = path.join(process.cwd(), 'compute/core/src/pdf-layout/model/LICENSE.txt'); +const STATIC_LICENSE_PATH = path.join(MODULE_DIR, 'model', 'LICENSE.txt'); let inflight: Promise | null = null;