File size: 21,226 Bytes
9f51ad0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "38837f4a",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "282526cb378b487a8b6743dcdbaaf51d",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "NuExtract3-Q4_K_M.gguf:   0%|          | 0.00/2.71G [00:00<?, ?B/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "ename": "ValueError",
     "evalue": "Could not load model numind/NuExtract3-GGUF with any of the following classes: (<class 'transformers.models.auto.modeling_auto.AutoModelForImageTextToText'>, <class 'transformers.models.qwen3_5.modeling_qwen3_5.Qwen3_5ForConditionalGeneration'>). See the original errors:\n\nwhile loading with AutoModelForImageTextToText, an error is thrown:\nTraceback (most recent call last):\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\base.py\", line 240, in load_model\n    model = model_class.from_pretrained(model, **kwargs)\n            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\models\\auto\\auto_factory.py\", line 336, in from_pretrained\n    config, kwargs = AutoConfig.from_pretrained(\n                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\models\\auto\\configuration_auto.py\", line 376, in from_pretrained\n    config_dict, unused_kwargs = PreTrainedConfig.get_config_dict(pretrained_model_name_or_path, **kwargs)\n                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\configuration_utils.py\", line 721, in get_config_dict\n    config_dict, kwargs = cls._get_config_dict(pretrained_model_name_or_path, **kwargs)\n                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\configuration_utils.py\", line 807, in _get_config_dict\n    config_dict = load_gguf_checkpoint(resolved_config_file, return_tensors=False)[\"config\"]\n                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\modeling_gguf_pytorch_utils.py\", line 590, in load_gguf_checkpoint\n    if is_gguf_available() and is_torch_available():\n       ^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\utils\\import_utils.py\", line 1207, in is_gguf_available\n    return is_available and version.parse(gguf_version) >= version.parse(min_version)\n                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\packaging\\version.py\", line 56, in parse\n    return Version(version)\n           ^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\packaging\\version.py\", line 202, in __init__\n    raise InvalidVersion(f\"Invalid version: '{version}'\")\npackaging.version.InvalidVersion: Invalid version: 'N/A'\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\base.py\", line 256, in load_model\n    model = model_class.from_pretrained(model, **fp32_kwargs)\n            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\models\\auto\\auto_factory.py\", line 336, in from_pretrained\n    config, kwargs = AutoConfig.from_pretrained(\n                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\models\\auto\\configuration_auto.py\", line 376, in from_pretrained\n    config_dict, unused_kwargs = PreTrainedConfig.get_config_dict(pretrained_model_name_or_path, **kwargs)\n                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\configuration_utils.py\", line 721, in get_config_dict\n    config_dict, kwargs = cls._get_config_dict(pretrained_model_name_or_path, **kwargs)\n                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\configuration_utils.py\", line 807, in _get_config_dict\n    config_dict = load_gguf_checkpoint(resolved_config_file, return_tensors=False)[\"config\"]\n                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\modeling_gguf_pytorch_utils.py\", line 590, in load_gguf_checkpoint\n    if is_gguf_available() and is_torch_available():\n       ^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\utils\\import_utils.py\", line 1207, in is_gguf_available\n    return is_available and version.parse(gguf_version) >= version.parse(min_version)\n                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\packaging\\version.py\", line 56, in parse\n    return Version(version)\n           ^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\packaging\\version.py\", line 202, in __init__\n    raise InvalidVersion(f\"Invalid version: '{version}'\")\npackaging.version.InvalidVersion: Invalid version: 'N/A'\n\nwhile loading with Qwen3_5ForConditionalGeneration, an error is thrown:\nTraceback (most recent call last):\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\base.py\", line 240, in load_model\n    model = model_class.from_pretrained(model, **kwargs)\n            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\modeling_utils.py\", line 4281, in from_pretrained\n    raise ValueError(\"accelerate is required when loading a GGUF file `pip install accelerate`.\")\nValueError: accelerate is required when loading a GGUF file `pip install accelerate`.\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\base.py\", line 256, in load_model\n    model = model_class.from_pretrained(model, **fp32_kwargs)\n            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\modeling_utils.py\", line 4281, in from_pretrained\n    raise ValueError(\"accelerate is required when loading a GGUF file `pip install accelerate`.\")\nValueError: accelerate is required when loading a GGUF file `pip install accelerate`.\n\n\n",
     "output_type": "error",
     "traceback": [
      "\u001b[31m---------------------------------------------------------------------------\u001b[39m",
      "\u001b[31mValueError\u001b[39m                                Traceback (most recent call last)",
      "\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[3]\u001b[39m\u001b[32m, line 6\u001b[39m\n\u001b[32m      2\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m transformers \u001b[38;5;28;01mimport\u001b[39;00m AutoConfig, AutoProcessor, pipeline\n\u001b[32m      3\u001b[39m \n\u001b[32m      4\u001b[39m config = AutoConfig.from_pretrained(\u001b[33m\"numind/NuExtract3\"\u001b[39m)\n\u001b[32m      5\u001b[39m processor = AutoProcessor.from_pretrained(\u001b[33m\"numind/NuExtract3\"\u001b[39m)\n\u001b[32m----> \u001b[39m\u001b[32m6\u001b[39m pipe = pipeline(\u001b[33m\"image-text-to-text\"\u001b[39m, model=\u001b[33m\"numind/NuExtract3-GGUF\"\u001b[39m, config=config, processor=processor, device_map=\u001b[33m\"auto\"\u001b[39m, model_kwargs={\u001b[33m\"gguf_file\"\u001b[39m: \u001b[33m\"NuExtract3-Q4_K_M.gguf\"\u001b[39m})\n\u001b[32m      7\u001b[39m image = str(next((Path.cwd() / \u001b[33m\"data\"\u001b[39m / \u001b[33m\"samples\"\u001b[39m).glob(\u001b[33m\"*.png\"\u001b[39m)))\n\u001b[32m      8\u001b[39m messages = [{\"role\": \"user\", \"content\": [\n\u001b[32m      9\u001b[39m     {\u001b[33m\"type\"\u001b[39m: \u001b[33m\"image\"\u001b[39m, \u001b[33m\"url\"\u001b[39m: image},\n",
      "\u001b[36mFile \u001b[39m\u001b[32ms:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\__init__.py:1033\u001b[39m, in \u001b[36mpipeline\u001b[39m\u001b[34m(task, model, config, tokenizer, feature_extractor, image_processor, video_processor, processor, revision, use_fast, token, device, device_map, dtype, trust_remote_code, model_kwargs, pipeline_class, **kwargs)\u001b[39m\n\u001b[32m   1031\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(model, \u001b[38;5;28mstr\u001b[39m):\n\u001b[32m   1032\u001b[39m     model_classes = targeted_task[\u001b[33m\"\u001b[39m\u001b[33mpt\u001b[39m\u001b[33m\"\u001b[39m]\n\u001b[32m-> \u001b[39m\u001b[32m1033\u001b[39m     model = \u001b[30;43mload_model\u001b[39;49m\u001b[30;43m(\u001b[39;49m\n\u001b[32m   1034\u001b[39m \u001b[30;43m        \u001b[39;49m\u001b[30;43madapter_path\u001b[39;49m\u001b[30;43m \u001b[39;49m\u001b[30;43;01mif\u001b[39;49;00m\u001b[30;43m \u001b[39;49m\u001b[30;43madapter_path\u001b[39;49m\u001b[30;43m \u001b[39;49m\u001b[30;43;01mis\u001b[39;49;00m\u001b[30;43m \u001b[39;49m\u001b[30;43;01mnot\u001b[39;49;00m\u001b[30;43m \u001b[39;49m\u001b[30;43;01mNone\u001b[39;49;00m\u001b[30;43m \u001b[39;49m\u001b[30;43;01melse\u001b[39;49;00m\u001b[30;43m \u001b[39;49m\u001b[30;43mmodel\u001b[39;49m\u001b[30;43m,\u001b[39;49m\n\u001b[32m   1035\u001b[39m \u001b[30;43m        \u001b[39;49m\u001b[30;43mmodel_classes\u001b[39;49m\u001b[30;43m=\u001b[39;49m\u001b[30;43mmodel_classes\u001b[39;49m\u001b[30;43m,\u001b[39;49m\n\u001b[32m   1036\u001b[39m \u001b[30;43m        \u001b[39;49m\u001b[30;43mconfig\u001b[39;49m\u001b[30;43m=\u001b[39;49m\u001b[30;43mconfig\u001b[39;49m\u001b[30;43m,\u001b[39;49m\n\u001b[32m   1037\u001b[39m \u001b[30;43m        \u001b[39;49m\u001b[30;43mtask\u001b[39;49m\u001b[30;43m=\u001b[39;49m\u001b[30;43mtask\u001b[39;49m\u001b[30;43m,\u001b[39;49m\n\u001b[32m   1038\u001b[39m \u001b[30;43m        \u001b[39;49m\u001b[30;43m*\u001b[39;49m\u001b[30;43m*\u001b[39;49m\u001b[30;43mhub_kwargs\u001b[39;49m\u001b[30;43m,\u001b[39;49m\n\u001b[32m   1039\u001b[39m \u001b[30;43m        \u001b[39;49m\u001b[30;43m*\u001b[39;49m\u001b[30;43m*\u001b[39;49m\u001b[30;43mmodel_kwargs\u001b[39;49m\u001b[30;43m,\u001b[39;49m\n\u001b[32m   1040\u001b[39m \u001b[30;43m    \u001b[39;49m\u001b[30;43m)\u001b[39;49m\n\u001b[32m   1042\u001b[39m hub_kwargs[\u001b[33m\"\u001b[39m\u001b[33m_commit_hash\u001b[39m\u001b[33m\"\u001b[39m] = model.config._commit_hash\n\u001b[32m   1044\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m pipeline_class \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n",
      "\u001b[36mFile \u001b[39m\u001b[32ms:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\base.py:276\u001b[39m, in \u001b[36mload_model\u001b[39m\u001b[34m(model, config, model_classes, task, **model_kwargs)\u001b[39m\n\u001b[32m    274\u001b[39m         \u001b[38;5;28;01mfor\u001b[39;00m class_name, trace \u001b[38;5;129;01min\u001b[39;00m all_traceback.items():\n\u001b[32m    275\u001b[39m             error += \u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mwhile loading with \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mclass_name\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m, an error is thrown:\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;132;01m{\u001b[39;00mtrace\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[33m\"\u001b[39m\n\u001b[32m--> \u001b[39m\u001b[32m276\u001b[39m         \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[32m    277\u001b[39m             \u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mCould not load model \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mmodel\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m with any of the following classes: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mclass_tuple\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m. See the original errors:\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;132;01m{\u001b[39;00merror\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[33m\"\u001b[39m\n\u001b[32m    278\u001b[39m         )\n\u001b[32m    280\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m model\n",
      "\u001b[31mValueError\u001b[39m: Could not load model numind/NuExtract3-GGUF with any of the following classes: (<class 'transformers.models.auto.modeling_auto.AutoModelForImageTextToText'>, <class 'transformers.models.qwen3_5.modeling_qwen3_5.Qwen3_5ForConditionalGeneration'>). See the original errors:\n\nwhile loading with AutoModelForImageTextToText, an error is thrown:\nTraceback (most recent call last):\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\base.py\", line 240, in load_model\n    model = model_class.from_pretrained(model, **kwargs)\n            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\models\\auto\\auto_factory.py\", line 336, in from_pretrained\n    config, kwargs = AutoConfig.from_pretrained(\n                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\models\\auto\\configuration_auto.py\", line 376, in from_pretrained\n    config_dict, unused_kwargs = PreTrainedConfig.get_config_dict(pretrained_model_name_or_path, **kwargs)\n                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\configuration_utils.py\", line 721, in get_config_dict\n    config_dict, kwargs = cls._get_config_dict(pretrained_model_name_or_path, **kwargs)\n                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\configuration_utils.py\", line 807, in _get_config_dict\n    config_dict = load_gguf_checkpoint(resolved_config_file, return_tensors=False)[\"config\"]\n                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\modeling_gguf_pytorch_utils.py\", line 590, in load_gguf_checkpoint\n    if is_gguf_available() and is_torch_available():\n       ^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\utils\\import_utils.py\", line 1207, in is_gguf_available\n    return is_available and version.parse(gguf_version) >= version.parse(min_version)\n                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\packaging\\version.py\", line 56, in parse\n    return Version(version)\n           ^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\packaging\\version.py\", line 202, in __init__\n    raise InvalidVersion(f\"Invalid version: '{version}'\")\npackaging.version.InvalidVersion: Invalid version: 'N/A'\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\base.py\", line 256, in load_model\n    model = model_class.from_pretrained(model, **fp32_kwargs)\n            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\models\\auto\\auto_factory.py\", line 336, in from_pretrained\n    config, kwargs = AutoConfig.from_pretrained(\n                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\models\\auto\\configuration_auto.py\", line 376, in from_pretrained\n    config_dict, unused_kwargs = PreTrainedConfig.get_config_dict(pretrained_model_name_or_path, **kwargs)\n                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\configuration_utils.py\", line 721, in get_config_dict\n    config_dict, kwargs = cls._get_config_dict(pretrained_model_name_or_path, **kwargs)\n                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\configuration_utils.py\", line 807, in _get_config_dict\n    config_dict = load_gguf_checkpoint(resolved_config_file, return_tensors=False)[\"config\"]\n                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\modeling_gguf_pytorch_utils.py\", line 590, in load_gguf_checkpoint\n    if is_gguf_available() and is_torch_available():\n       ^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\utils\\import_utils.py\", line 1207, in is_gguf_available\n    return is_available and version.parse(gguf_version) >= version.parse(min_version)\n                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\packaging\\version.py\", line 56, in parse\n    return Version(version)\n           ^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\packaging\\version.py\", line 202, in __init__\n    raise InvalidVersion(f\"Invalid version: '{version}'\")\npackaging.version.InvalidVersion: Invalid version: 'N/A'\n\nwhile loading with Qwen3_5ForConditionalGeneration, an error is thrown:\nTraceback (most recent call last):\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\base.py\", line 240, in load_model\n    model = model_class.from_pretrained(model, **kwargs)\n            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\modeling_utils.py\", line 4281, in from_pretrained\n    raise ValueError(\"accelerate is required when loading a GGUF file `pip install accelerate`.\")\nValueError: accelerate is required when loading a GGUF file `pip install accelerate`.\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\pipelines\\base.py\", line 256, in load_model\n    model = model_class.from_pretrained(model, **fp32_kwargs)\n            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"s:\\Spaces\\Data-Extraction\\NuMarkApp\\.venv\\Lib\\site-packages\\transformers\\modeling_utils.py\", line 4281, in from_pretrained\n    raise ValueError(\"accelerate is required when loading a GGUF file `pip install accelerate`.\")\nValueError: accelerate is required when loading a GGUF file `pip install accelerate`.\n\n\n"
     ]
    }
   ],
   "source": [
    "from pathlib import Path\n",
    "from transformers import AutoConfig, AutoProcessor, pipeline\n",
    "\n",
    "config = AutoConfig.from_pretrained(\"numind/NuExtract3\")\n",
    "processor = AutoProcessor.from_pretrained(\"numind/NuExtract3\")\n",
    "pipe = pipeline(\"image-text-to-text\", model=\"numind/NuExtract3-GGUF\", config=config, processor=processor, device_map=\"auto\", model_kwargs={\"gguf_file\": \"NuExtract3-Q4_K_M.gguf\"})\n",
    "image = str(next((Path.cwd() / \"data\" / \"samples\").glob(\"*.png\")))\n",
    "messages = [{\"role\": \"user\", \"content\": [\n",
    "    {\"type\": \"image\", \"url\": image},\n",
    "    {\"type\": \"text\", \"text\": \"Extract all document content as structured JSON.\"},\n",
    "]}]\n",
    "pipe(text=messages, max_new_tokens=4096)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": ".venv",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "name": "python",
   "version": "3.12.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}