The Megalodon-OCR-Sync-0713 model is a fine-tuned version of Qwen2.5-VL-3B-Instruct, optimized for Document Retrieval, Content Extraction, and Analysis Recognition. Built on top of the Qwen2.5-VL architecture, this model enhances document comprehension capabilities with focused training on 200K image pairs from a mixture of captioning datasets, including 70K from Corvus-OCR-Caption-Mix dataset, and other document modular datasets from modular combination of opensource datasets best for doc OCR captioning, image reasoning, visual analysis, working on all category of images with variational dimension.
-
Context-Aware Multimodal Extraction and Linking for Documents: Advanced capability for understanding document context and establishing connections between multimodal elements within documents.
-
Enhanced Document Retrieval: Designed to efficiently locate and extract relevant information from complex document structures and layouts.
-
Superior Content Extraction: Optimized for precise extraction of structured and unstructured content from diverse document formats.
-
Analysis Recognition: Specialized in recognizing and interpreting analytical content, charts, tables, and visual data representations.
-
State-of-the-Art Performance Across Resolutions: Achieves competitive results on OCR and visual QA benchmarks such as DocVQA, MathVista, RealWorldQA, and MTVQA.
-
Video Understanding up to 20+ minutes: Supports detailed comprehension of long-duration videos for content summarization, Q&A, and multi-modal reasoning.
-
Visually-Grounded Device Interaction: Enables mobile/robotic device operation via visual inputs and text-based instructions using contextual understanding and decision-making logic.
1from transformers import Qwen2_5_VLForConditionalGeneration, AutoTokenizer, AutoProcessor
2from qwen_vl_utils import process_vision_info
3
4model = Qwen2_5_VLForConditionalGeneration.from_pretrained(
5 "prithivMLmods/Megalodon-OCR-Sync-0713", torch_dtype="auto", device_map="auto"
6)
7
8processor = AutoProcessor.from_pretrained("prithivMLmods/Megalodon-OCR-Sync-0713")
9
10messages = [
11 {
12 "role": "user",
13 "content": [
14 {
15 "type": "image",
16 "image": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg",
17 },
18 {"type": "text", "text": "Describe this image."},
19 ],
20 }
21]
22
23text = processor.apply_chat_template(
24 messages, tokenize=False, add_generation_prompt=True
25)
26image_inputs, video_inputs = process_vision_info(messages)
27inputs = processor(
28 text=[text],
29 images=image_inputs,
30 videos=video_inputs,
31 padding=True,
32 return_tensors="pt",
33)
34inputs = inputs.to("cuda")
35
36generated_ids = model.generate(**inputs, max_new_tokens=128)
37generated_ids_trimmed = [
38 out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
39]
40output_text = processor.batch_decode(
41 generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
42)
43print(output_text)