This repository contains the source code and scripts needed to run the VeraPhys pipeline. It intentionally excludes result artifacts, response logs, prediction files, benchmark labels, model caches, and local credentials.
From this directory:
uv sync
source .venv/bin/activateAlternatively:
python -m venv .venv
source .venv/bin/activate
pip install -e .Configure endpoints either through environment variables or a local .env
copied from .env.example:
cp .env.example .env
# edit OPENAI_BASE_URL / MODEL / PADDLEOCR_VL_BASE_URL as neededThe main VLM and PaddleOCR-VL servers are expected to expose OpenAI-compatible
/v1/chat/completions APIs.
ARTIFACT_DIR=artifacts/veraphys_full \
REUSE_TESTMINI=/path/to/testmini_predictions.jsonl \
PARALLEL=64 \
SELECTOR_PARALLEL=32 \
bash scripts/seephyspro-currentbest-full.shImportant variables:
DATASET: defaults toKun-Xiang/SeePhysPro.MODEL: defaults toQwen/Qwen3.6-35B-A3B.BASE_URLorOPENAI_BASE_URL: main VLM endpoint.PADDLEOCR_VL_BASE_URL: PaddleOCR-VL endpoint.REUSE_TESTMINI: public test-mini prediction JSONL to append for the all-with-testmini package. This is not bundled here.
Main outputs:
${ARTIFACT_DIR}/predictions-seephyspro-test.jsonl${ARTIFACT_DIR}/submission-seephyspro-test.zip${ARTIFACT_DIR}/predictions-seephyspro-all-with-testmini.jsonl${ARTIFACT_DIR}/submission-seephyspro-all-with-testmini.zip
For an existing base prediction file:
BASE=/path/to/base_predictions.jsonl \
ARTIFACT_DIR=artifacts/ocrvl_layer \
PARALLEL=32 \
SELECTOR_PARALLEL=32 \
bash scripts/paddleocr-vl-enhance.shPostprocess predictions:
python -m track3_cli.postprocess_predictions \
--input raw_predictions.jsonl \
--output postprocessed_predictions.jsonlPackage a submission:
python -m track3_cli.package_submission \
--predictions predictions.jsonl \
--output submission.zip