Wrap TEINet as an mhctools pMHC:TCR binding predictor (pMHC_TCR_binding).
Upstream: https://github.com/jiangdada1221/TEINet — transfer-learning (pretrained TCR/epitope encoders) for TCR–epitope binding.
Pretrained weights: the two trained models (large/small) are on Google Drive; the encoder weights are in-repo (~35.8 MB each). Requires a manual Drive download step (scriptable with gdown).
Framework / deps: PyTorch (torch>=1.1) — reasonably modern.
License: GPL-3.0 — copyleft. Do not bundle/redistribute; use the "user brings their own clone" pattern (exactly like mhctools/tulip.py, which wraps GPLv3 TULIP out-of-process without contaminating the Apache-2.0 package).
Inputs / output: CDR3β + epitope → binding score; simple 2-column CSV interface (mhc_dependence="none").
Ease: Easy to run — one-line predict.py over a 2-column CSV — once the Drive weights are fetched.
Suggested wrapping approach: subprocess into the user's TEINet checkout (GPL boundary), auto-gdown the weights in a setup script (as scripts/setup_tulip_env.sh clones TULIP).
Note (unverified): the large/small ↔ large_dset.pth/teinet_data.pth mapping was inferred from training-set size, not stated upstream — confirm before wiring defaults.
Surfaced from a survey of TCREpitopeBenchmark for methods with public pretrained weights that run easily for inference.
https://claude.ai/code/session_01LZahFhBSCiehXTESCYQ7wG
Wrap TEINet as an
mhctoolspMHC:TCR binding predictor (pMHC_TCR_binding).Upstream: https://github.com/jiangdada1221/TEINet — transfer-learning (pretrained TCR/epitope encoders) for TCR–epitope binding.
Pretrained weights: the two trained models (large/small) are on Google Drive; the encoder weights are in-repo (~35.8 MB each). Requires a manual Drive download step (scriptable with
gdown).Framework / deps: PyTorch (
torch>=1.1) — reasonably modern.License: GPL-3.0 — copyleft. Do not bundle/redistribute; use the "user brings their own clone" pattern (exactly like
mhctools/tulip.py, which wraps GPLv3 TULIP out-of-process without contaminating the Apache-2.0 package).Inputs / output: CDR3β + epitope → binding score; simple 2-column CSV interface (
mhc_dependence="none").Ease: Easy to run — one-line
predict.pyover a 2-column CSV — once the Drive weights are fetched.Suggested wrapping approach: subprocess into the user's TEINet checkout (GPL boundary), auto-
gdownthe weights in a setup script (asscripts/setup_tulip_env.shclones TULIP).Note (unverified): the large/small ↔
large_dset.pth/teinet_data.pthmapping was inferred from training-set size, not stated upstream — confirm before wiring defaults.Surfaced from a survey of TCREpitopeBenchmark for methods with public pretrained weights that run easily for inference.
https://claude.ai/code/session_01LZahFhBSCiehXTESCYQ7wG