deepseek-ai / deepseek-ai/DeepSeek-OCR
Problems when try run on M1
- Dominant language
- Python
- Stars
- 23.9k
- Forks
- 2.2k
- PR merge metrics
- No merged PRs in 30d
Description
Hi,
Im getting this error when try run on my M1:
```
python main.py
modeling_deepseekv2.py: 82.2kB [00:00, 63.3MB/s]
A new version of the following files was downloaded from https://huggingface.co/deepseek-ai/DeepSeek-OCR:
- modeling_deepseekv2.py
. Make sure to double-check they do not contain any added malicious code. To avoid downloading new versions of the code file, you can pin a revision.
A new version of the following files was downloaded from https://huggingface.co/deepseek-ai/DeepSeek-OCR:
- modeling_deepseekv2.py
- deepencoder.py
. Make sure to double-check they do not contain any added malicious code. To avoid downloading new versions of the code file, you can pin a revision.
Traceback (most recent call last):
File "/Users/paulo/Developer/workspaces/python/ocr/main.py", line 10, in
model = AutoModel.from_pretrained(
model_name,
...<2 lines>...
use_safetensors=True,
)
File "/Users/paulo/Developer/workspaces/python/ocr/.venv/lib/python3.13/site-packages/transformers/models/auto/auto_factory.py", line 549, in from_pretrained
config, kwargs = AutoConfig.from_pretrained(
~~~~~~~~~~~~~~~~~~~~~~~~~~^
pretrained_model_name_or_path,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<4 lines>...
**kwargs,
^^^^^^^^^
)
^
File "/Users/paulo/Developer/workspaces/python/ocr/.venv/lib/python3.13/site-packages/transformers/models/auto/configuration_auto.py", line 1346, in from_pretrained
config_class = get_class_from_dynamic_module(
class_ref, pretrained_model_name_or_path, code_revision=code_revision, **kwargs
)
File "/Users/paulo/Developer/workspaces/python/ocr/.venv/lib/python3.13/site-packages/transformers/dynamic_module_utils.py", line 616, in get_class_from_dynamic_module
return get_class_in_module(class_name, final_module, force_reload=force_download)
File "/Users/paulo/Developer/workspaces/python/ocr/.venv/lib/python3.13/site-packages/transformers/dynamic_module_utils.py", line 311, in get_class_in_module
module_spec.loader.exec_module(module)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^
File "", line 1026, in exec_module
File "", line 488, in _call_with_frames_removed
File "/Users/paulo/.cache/huggingface/modules/transformers_modules/deepseek_hyphen_ai/DeepSeek_hyphen_OCR/59512895521e669adb87064b37e5749fe9b9f5d2/modeling_deepseekocr.py", line 1, in
from .modeling_deepseekv2 import DeepseekV2Model, DeepseekV2ForCausalLM
File "/Users/paulo/.cache/huggingface/modules/transformers_modules/deepseek_hyphen_ai/DeepSeek_hyphen_OCR/59512895521e669adb87064b37e5749fe9b9f5d2/modeling_deepseekv2.py", line 37, in
from transformers.models.llama.modeling_llama import (
...<2 lines>...
)
ImportError: cannot import name 'LlamaFlashAttention2' from 'transformers.models.llama.modeling_llama' (/Users/paulo/Developer/workspaces/python/ocr/.venv/lib/python3.13/site-packages/transformers/models/llama/modeling_llama.py)
```
Deps:
```
torch
transformers
pillow
addict
matplotlib
torchvision
easydict
einops
```
Code:
```
import os
import torch
from transformers import AutoModel, AutoTokenizer
os.environ["CUDA_VISIBLE_DEVICES"] = "0"
model_name = "deepseek-ai/DeepSeek-OCR"
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
model = AutoModel.from_pretrained(
model_name,
_attn_implementation="flash_attention_2",
trust_remote_code=True,
use_safetensors=True,
)
model = model.eval().cuda().to(torch.bfloat16)
# prompt = "\nFree OCR. "
prompt = "\n<|grounding|>Convert the document to markdown. "
image_file = "image.png"
output_path = "out"
res = model.infer(
tokenizer,
prompt=prompt,
image_file=image_file,
output_path=output_path,
base_size=1024,
image_size=640,
crop_mode=True,
save_results=True,
test_compress=True,
)
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.