Spaces:
Running
Running
File size: 1,997 Bytes
6bd37dd 31371a9 6bd37dd 31371a9 6bd37dd 31371a9 |
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 68 69 70 |
---
title: Menu Text Detection
emoji: π
colorFrom: red
colorTo: red
sdk: gradio
python_version: 3.11
short_description: Extract structured menu information from images into JSON...
tags:
- donut
- fine-tuning
- image-to-text
- transformer
license: mit
---
# Menu Text Detection System
Extract structured menu information from images into JSON using a fine-tuned E2E model or LLM.
[](https://huggingface.co/spaces/ryanlinjui/menu-text-detection)
[](https://huggingface.co/collections/ryanlinjui/menu-text-detection-670ccf527626bb004bbfb39b)
https://github.com/user-attachments/assets/80e5d54c-f2c8-4593-ad9b-499e5b71d8f6
## π Features
### Overview
Currently supports the following information from menu images:
- **Restaurant Name**
- **Business Hours**
- **Address**
- **Phone Number**
- **Dish Information**
- Name
- Price
> For the JSON schema, see [tools directory](./tools).
### Supported Methods to Extract Menu Information
#### Fine-tuned E2E model and Training metrics
- [**Donut (Document Parsing Task)**](https://huggingface.co/ryanlinjui/donut-base-finetuned-menu) - Base model by [Clova AI (ECCV β22)](https://github.com/clovaai/donut)
#### LLM Function Calling
- Google Gemini API
- OpenAI GPT API
## π» Training / Fine-Tuning
### Setup
Use [uv](https://github.com/astral-sh/uv) to set up the development environment:
```bash
uv sync
```
> or use `pip install -r requirements.txt` if it has any problems
### Training Script (Datasets collecting, Fine-Tuning)
Please refer [`train.ipynb`](./train.ipynb). Use Jupyter Notebook for training:
```bash
uv run jupyter-notebook
```
> For VSCode users, please install Jupyter extension, then select `.venv/bin/python` as your kernel.
### Run Demo Locally
```bash
uv run python app.py
``` |