코드 실행 중 오류 발생
#9
by
SeCrEaT999
- opened
ai모델을 같은 경로에 다운로드 후 실행하였지만 계속 같은 오류가 납니다. 신기한게 다른 ai를 다운로드 후 실행해도 똑같은 오류가 나옵니다. 도움 주시면 감사하겠습니다.
from transformers import LlavaNextForConditionalGeneration,LlavaNextProcessor
import torch
model = LlavaNextForConditionalGeneration.from_pretrained(
'./bllossom3',
torch_dtype=torch.bfloat16,
device_map='auto'
)
processor = LlavaNextProcessor.from_pretrained('./bllossom3')
with torch.no_grad():
PROMPT=\
"""You are a versatile AI assistant named Bllava, capable of both understanding and generating text as well as interpreting and analyzing images. Your role is to kindly and effectively answer the user’s questions, whether they are about text or images, and provide appropriate and helpful responses to all types of queries.
당신은 텍스트를 이해하고 생성하는 것뿐만 아니라 이미지를 해석하고 분석할 수 있는 다재다능한 AI 어시스턴트 블라바입니다. 사용자의 질문이 텍스트에 관한 것이든 이미지에 관한 것이든 친절하고 효과적으로 답변하며, 모든 유형의 질의에 대해 적절하고 유용한 응답을 제공하는 것이 당신의 역할입니다."""
instruction = '자연어처리 15주 분량 커리큘럼을 짜줘'
messages = [
{'role': 'system', 'content': f"{PROMPT}"},
{'role': 'user', 'content': f"{instruction}"}
]
chat_messages = processor.tokenizer.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
return_tensors='pt',
)
bos_token = processor.tokenizer.bos_token_id
chat_messages = torch.cat([torch.tensor([[bos_token]]),chat_messages],dim=-1).to(model.device)
output = model.generate(
input_ids = chat_messages,
use_cache=False,
max_new_tokens=2048,
top_p=0.9,
temperature=0.6,
do_sample=True,
)
print(processor.tokenizer.decode(output[0]))
Loading checkpoint shards: 100%|███████████████████████████████████| 4/4 [00:00<00:00, 15.04it/s]
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:128009 for open-end generation.
The attention mask is not set and cannot be inferred from input because pad token is same as eos token. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Expanding inputs for image tokens in LLaVa-NeXT should be done in processing. Please add `patch_size` and `vision_feature_select_strategy` to the model's processing config or set directly with `processor.patch_size = {{patch_size}}` and processor.vision_feature_select_strategy = {{vision_feature_select_strategy}}`. Using processors without these attributes in the config is deprecated and will throw an error in v4.50.
Traceback (most recent call last):
File "C:\Users\hajun\OneDrive\UniFi Dream Machine pro\ai\luna\test2.py", line 36, in <module>
output = model.generate(
File "C:\Users\hajun\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\utils\_contextlib.py", line 116, in decorate_context
return func(*args, **kwargs)
File "C:\Users\hajun\AppData\Local\Programs\Python\Python310\lib\site-packages\transformers\generation\utils.py", line 2252, in generate
result = self._sample(
File "C:\Users\hajun\AppData\Local\Programs\Python\Python310\lib\site-packages\transformers\generation\utils.py", line 3251, in _sample
outputs = self(**model_inputs, return_dict=True)
File "C:\Users\hajun\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1553, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "C:\Users\hajun\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\nn\modules\module.py", line 1562, in _call_impl
return forward_call(*args, **kwargs)
File "C:\Users\hajun\AppData\Local\Programs\Python\Python310\lib\site-packages\transformers\models\llava_next\modeling_llava_next.py", line 874, in forward
inputs_embeds = inputs_embeds.to(image_features.dtype)
AttributeError: 'NoneType' object has no attribute 'dtype'
안녕하세요 서울과학기술대학교 MLP Lab
신동재 연구원입니다.
LLaVANext 모델의 경우 Transformer 깃허브 버전을 살펴보시면 많은 업데이트가 이루어지고 있는데, 아마 그 과정에서 기존 버전과 충돌되는 부분이 존재하는것 같습니다.
Bllossom-AICA 모델의 경우 현재 이러한 문제점은 발생하고 있지 않으니, Bllssom-AICA 모델을 사용하시는걸 권장드립니다.
감사합니다.