electblake commited on
Commit
74bbc85
·
1 Parent(s): 25c4ebd

refactor(app): rename to Image Data Extractor

Browse files

Update the Space card, Gradio title and heading, extraction button, and Python project metadata for the new Image Data Extractor identity.

Files changed (4) hide show
  1. README.md +3 -3
  2. app.py +3 -3
  3. pyproject.toml +1 -1
  4. uv.lock +45 -45
README.md CHANGED
@@ -1,5 +1,5 @@
1
  ---
2
- title: NuMark
3
  emoji: 🧾
4
  colorFrom: blue
5
  colorTo: indigo
@@ -13,9 +13,9 @@ models:
13
  short_description: Extract structured JSON from documents with NuExtract3.
14
  ---
15
 
16
- # NuMark
17
 
18
- NuMark is a Gradio app for extracting structured JSON from document images with [NuExtract3](https://huggingface.co/numind/NuExtract3).
19
 
20
  Upload a receipt, invoice, or other document image, optionally add accompanying text, and choose a JSON template for schema-guided structured extraction. You can also generate a grounded template from the uploaded image before running extraction.
21
 
 
1
  ---
2
+ title: Image Data Extractor
3
  emoji: 🧾
4
  colorFrom: blue
5
  colorTo: indigo
 
13
  short_description: Extract structured JSON from documents with NuExtract3.
14
  ---
15
 
16
+ # Image Data Extractor
17
 
18
+ Image Data Extractor is a Gradio app for extracting structured JSON from document images with [NuExtract3](https://huggingface.co/numind/NuExtract3).
19
 
20
  Upload a receipt, invoice, or other document image, optionally add accompanying text, and choose a JSON template for schema-guided structured extraction. You can also generate a grounded template from the uploaded image before running extraction.
21
 
app.py CHANGED
@@ -208,9 +208,9 @@ structured_json_templates = {
208
  default_structured_json_template = "Invoice with line items"
209
 
210
 
211
- with gr.Blocks(title="NuMarkApp") as demo:
212
  gr.Markdown(
213
- "# NuMarkApp\n"
214
  "Extract structured JSON from an image and optional text using "
215
  "[numind/NuExtract3](https://huggingface.co/numind/NuExtract3)."
216
  )
@@ -237,7 +237,7 @@ with gr.Blocks(title="NuMarkApp") as demo:
237
  lines=18,
238
  info="Used for structured extraction. Edit the example to match your document.",
239
  )
240
- run = gr.Button("Extract structured JSON", variant="primary")
241
  with gr.Column():
242
  structured_output = gr.JSON(
243
  label="Structured JSON",
 
208
  default_structured_json_template = "Invoice with line items"
209
 
210
 
211
+ with gr.Blocks(title="Image Data Extractor") as demo:
212
  gr.Markdown(
213
+ "# Image Data Extractor\n"
214
  "Extract structured JSON from an image and optional text using "
215
  "[numind/NuExtract3](https://huggingface.co/numind/NuExtract3)."
216
  )
 
237
  lines=18,
238
  info="Used for structured extraction. Edit the example to match your document.",
239
  )
240
+ run = gr.Button("Extract Image Data", variant="primary")
241
  with gr.Column():
242
  structured_output = gr.JSON(
243
  label="Structured JSON",
pyproject.toml CHANGED
@@ -1,5 +1,5 @@
1
  [project]
2
- name = "numarkapp"
3
  version = "0.1.0"
4
  description = "Add your description here"
5
  readme = "README.md"
 
1
  [project]
2
+ name = "image-data-extractor"
3
  version = "0.1.0"
4
  description = "Add your description here"
5
  readme = "README.md"
uv.lock CHANGED
@@ -469,6 +469,51 @@ wheels = [
469
  { url = "https://files.pythonhosted.org/packages/fc/34/3030de6f1370931b9dbb4dad48f6ab1015ab1d32447850b9fc94e60097be/idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2", size = 61538, upload-time = "2022-09-14T00:24:23.22Z" },
470
  ]
471
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
472
  [[package]]
473
  name = "ipykernel"
474
  version = "7.3.0"
@@ -711,51 +756,6 @@ wheels = [
711
  { url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl", hash = "sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762", size = 2068504, upload-time = "2025-12-08T17:02:38.159Z" },
712
  ]
713
 
714
- [[package]]
715
- name = "numarkapp"
716
- version = "0.1.0"
717
- source = { virtual = "." }
718
- dependencies = [
719
- { name = "gguf" },
720
- { name = "gradio" },
721
- { name = "huggingface-hub" },
722
- { name = "ipykernel" },
723
- { name = "ipython" },
724
- { name = "ipywidgets" },
725
- { name = "openai" },
726
- { name = "pillow" },
727
- { name = "spaces" },
728
- { name = "torch" },
729
- { name = "torchaudio" },
730
- { name = "torchvision" },
731
- { name = "transformers" },
732
- ]
733
-
734
- [package.dev-dependencies]
735
- dev = [
736
- { name = "ruff" },
737
- ]
738
-
739
- [package.metadata]
740
- requires-dist = [
741
- { name = "gguf", specifier = ">=0.19.0" },
742
- { name = "gradio" },
743
- { name = "huggingface-hub" },
744
- { name = "ipykernel", specifier = ">=7.3.0" },
745
- { name = "ipython", specifier = ">=9.15.0" },
746
- { name = "ipywidgets", specifier = ">=8.1.8" },
747
- { name = "openai", specifier = ">=2.46.0" },
748
- { name = "pillow", specifier = ">=12.3.0" },
749
- { name = "spaces", specifier = ">=0.51.0" },
750
- { name = "torch", specifier = "==2.11.0", index = "https://download.pytorch.org/whl/cu130" },
751
- { name = "torchaudio", specifier = "==2.11.0", index = "https://download.pytorch.org/whl/cu130" },
752
- { name = "torchvision", index = "https://download.pytorch.org/whl/cu130" },
753
- { name = "transformers", specifier = ">=5.5.4" },
754
- ]
755
-
756
- [package.metadata.requires-dev]
757
- dev = [{ name = "ruff", specifier = ">=0.15.22" }]
758
-
759
  [[package]]
760
  name = "numpy"
761
  version = "2.4.4"
 
469
  { url = "https://files.pythonhosted.org/packages/fc/34/3030de6f1370931b9dbb4dad48f6ab1015ab1d32447850b9fc94e60097be/idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2", size = 61538, upload-time = "2022-09-14T00:24:23.22Z" },
470
  ]
471
 
472
+ [[package]]
473
+ name = "image-data-extractor"
474
+ version = "0.1.0"
475
+ source = { virtual = "." }
476
+ dependencies = [
477
+ { name = "gguf" },
478
+ { name = "gradio" },
479
+ { name = "huggingface-hub" },
480
+ { name = "ipykernel" },
481
+ { name = "ipython" },
482
+ { name = "ipywidgets" },
483
+ { name = "openai" },
484
+ { name = "pillow" },
485
+ { name = "spaces" },
486
+ { name = "torch" },
487
+ { name = "torchaudio" },
488
+ { name = "torchvision" },
489
+ { name = "transformers" },
490
+ ]
491
+
492
+ [package.dev-dependencies]
493
+ dev = [
494
+ { name = "ruff" },
495
+ ]
496
+
497
+ [package.metadata]
498
+ requires-dist = [
499
+ { name = "gguf", specifier = ">=0.19.0" },
500
+ { name = "gradio" },
501
+ { name = "huggingface-hub" },
502
+ { name = "ipykernel", specifier = ">=7.3.0" },
503
+ { name = "ipython", specifier = ">=9.15.0" },
504
+ { name = "ipywidgets", specifier = ">=8.1.8" },
505
+ { name = "openai", specifier = ">=2.46.0" },
506
+ { name = "pillow", specifier = ">=12.3.0" },
507
+ { name = "spaces", specifier = ">=0.51.0" },
508
+ { name = "torch", specifier = "==2.11.0", index = "https://download.pytorch.org/whl/cu130" },
509
+ { name = "torchaudio", specifier = "==2.11.0", index = "https://download.pytorch.org/whl/cu130" },
510
+ { name = "torchvision", index = "https://download.pytorch.org/whl/cu130" },
511
+ { name = "transformers", specifier = ">=5.5.4" },
512
+ ]
513
+
514
+ [package.metadata.requires-dev]
515
+ dev = [{ name = "ruff", specifier = ">=0.15.22" }]
516
+
517
  [[package]]
518
  name = "ipykernel"
519
  version = "7.3.0"
 
756
  { url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl", hash = "sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762", size = 2068504, upload-time = "2025-12-08T17:02:38.159Z" },
757
  ]
758
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
759
  [[package]]
760
  name = "numpy"
761
  version = "2.4.4"