apiprompting icon indicating copy to clipboard operation
apiprompting copied to clipboard

RuntimeError: stack expects a non-empty TensorList when try to use clip_api

Open Huangsz2021 opened this issue 11 months ago • 1 comments

Traceback (most recent call last): File "/mnt/data/hsz/transplant/llamafactory/data/mire/apiprompt.py", line 8, in masked_images = clip_api(images, queries, model_name="ViT-B-32") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/hsz/miniconda3/envs/clip_api/lib/python3.11/site-packages/apiprompting/api_clip/main.py", line 169, in clip_api image_pils, cls_masks, patch_masks = gen_mask(model, prs, preprocess, device, tokenizer, image_path_or_pil_images, questions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/hsz/miniconda3/envs/clip_api/lib/python3.11/site-packages/apiprompting/api_clip/main.py", line 92, in gen_mask attentions, mlps = prs.finalize(representation)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/hsz/miniconda3/envs/clip_api/lib/python3.11/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context return func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/home/hsz/miniconda3/envs/clip_api/lib/python3.11/site-packages/apiprompting/api_clip/hook.py", line 77, in finalize self.attentions = torch.stack(self.attentions, axis=1) # [b, 1, n, d] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ RuntimeError: stack expects a non-empty TensorList @yu-rp Sorry to bother you. Can you help fix this?

Huangsz2021 avatar Dec 26 '24 08:12 Huangsz2021

Hi @Huangsz2021 , Thank you for your issue.

I believe this might be due to the limited number of layers in the Base model. You may consider using earlier layers by adjusting the --layer_index parameter.

yu-rp avatar Jan 16 '25 06:01 yu-rp