Skip to content

[Question]How to use local TITAN in TRIDENT? #118

@wenjiezhang79

Description

@wenjiezhang79

What's your question?

Thank you very much for developing Trident—it’s fantastic. I carefully read through issue #96 and your Q&A there. I’m experiencing the exact same problem, but no matter what I try I keep getting errors. I’d like to know what I should do. Below I’ll provide my error message and directory structure.
I downloaded all of the Titan model files from Hugging Face into ./GC_PDL1/Model/titan. Then, in
trident/patch_encoder_models/local_ckpts.json (line 21) I changed the path to "./GC_PDL1/Model/titan/conch_v15"
Additionally, in trident/slide_encoder_models/load.py (line 428) I modified the code to: "model = AutoModel.from_pretrained('./GC_PDL1/Model/titan', trust_remote_code=True)``
python run_batch_of_slides.py --task feat --wsi_dir ./wsis --job_dir ./trident_processed --slide_encoder titan --mag 20 --patch_size 512
However, I still keep encountering errors.
[PROCESSOR] Found 72 valid slides in /baksv/DPH/DPYY_zhangwj/GC_PDL1/Data/IHC_2.
Traceback (most recent call last):
File "/baksv/DPH/DPYY_zhangwj/GC_PDL1/Code/run_batch_of_slides.py", line 278, in
main()
File "/baksv/DPH/DPYY_zhangwj/GC_PDL1/Code/run_batch_of_slides.py", line 274, in main
run_task(processor, args)
File "/baksv/DPH/DPYY_zhangwj/GC_PDL1/Code/run_batch_of_slides.py", line 201, in run_task
encoder = encoder_factory(args.slide_encoder)
File "/baksv/DPH/DPYY_zhangwj/trident/trident/slide_encoder_models/load.py", line 49, in encoder_factory
return enc(pretrained=pretrained, freeze=freeze, **kwargs)
File "/baksv/DPH/DPYY_zhangwj/trident/trident/slide_encoder_models/load.py", line 422, in init
super().init(**build_kwargs)
File "/baksv/DPH/DPYY_zhangwj/trident/trident/slide_encoder_models/load.py", line 74, in init
self.model, self.precision, self.embedding_dim = self._build(**build_kwargs)
File "/baksv/DPH/DPYY_zhangwj/trident/trident/slide_encoder_models/load.py", line 428, in _build
model = AutoModel.from_pretrained('/baksv/DPH/DPYY_zhangwj/GC_PDL1/Model/titan', trust_remote_code=True)
File "/baksv/DPH/DPYY_zhangwj/anaconda3/envs/trident/lib/python3.10/site-packages/transformers/models/auto/auto_factory.py", line 444, in from_pretrained
return model_class.from_pretrained(pretrained_model_name_or_path, *model_args, config=config, **kwargs)
File "/baksv/DPH/DPYY_zhangwj/anaconda3/envs/trident/lib/python3.10/site-packages/transformers/modeling_utils.py", line 1493, in from_pretrained
model = cls(config, *model_args, **model_kwargs)
File "/public/home/DPYY_zhangwj/.cache/huggingface/modules/transformers_modules/local/modeling_titan.py", line 17, in init
self.text_encoder = build_text_tower(config.text_config)
File "/public/home/DPYY_zhangwj/.cache/huggingface/modules/transformers_modules/local/text_transformer.py", line 500, in build_text_tower
text = TextTransformer(
File "/public/home/DPYY_zhangwj/.cache/huggingface/modules/transformers_modules/local/text_transformer.py", line 410, in init
self.tokenizer = Conch_Tokenizer(context_length=context_length)
File "/public/home/DPYY_zhangwj/.cache/huggingface/modules/transformers_modules/local/conch_tokenizer.py", line 17, in init
self.tokenizer = PreTrainedTokenizerFast.from_pretrained("MahmoodLab/TITAN")
File "/baksv/DPH/DPYY_zhangwj/anaconda3/envs/trident/lib/python3.10/site-packages/transformers/tokenization_utils_base.py", line 1763, in from_pretrained
raise err
File "/baksv/DPH/DPYY_zhangwj/anaconda3/envs/trident/lib/python3.10/site-packages/transformers/tokenization_utils_base.py", line 1724, in from_pretrained
resolved_vocab_files[file_id] = cached_path(
File "/baksv/DPH/DPYY_zhangwj/anaconda3/envs/trident/lib/python3.10/site-packages/transformers/file_utils.py", line 1921, in cached_path
output_path = get_from_cache(
File "/baksv/DPH/DPYY_zhangwj/anaconda3/envs/trident/lib/python3.10/site-packages/transformers/file_utils.py", line 2125, in get_from_cache
_raise_for_status(r)
File "/baksv/DPH/DPYY_zhangwj/anaconda3/envs/trident/lib/python3.10/site-packages/transformers/file_utils.py", line 2052, in _raise_for_status
request.raise_for_status()
File "/baksv/DPH/DPYY_zhangwj/anaconda3/envs/trident/lib/python3.10/site-packages/requests/models.py", line 1026, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 401 Client Error: Unauthorized for url: https://hf-mirror.com/MahmoodLab/TITAN/resolve/main/tokenizer.json

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions