{"data":{"slug":"vlm-run-vlmrun-hub","name":"vlmrun-hub","tagline":"A hub for various industry-specific schemas to be used with VLMs.","github_url":"https://github.com/vlm-run/vlmrun-hub","owner":"vlm-run","repo":"vlmrun-hub","owner_avatar_url":"https://avatars.githubusercontent.com/u/188105732?v=4","primary_language":"Python","stars":551,"forks":24,"topics":["ai","computer-vision","etl","genai","json","multimodal","pydantic","pydantic-models","vlm","vlm-ocr"],"archived":false,"github_pushed_at":"2025-12-15T22:41:40+00:00","maintenance_label":"Slowing","url":"https://www.graphcanon.com/tools/vlm-run-vlmrun-hub","markdown_url":"https://www.graphcanon.com/tools/vlm-run-vlmrun-hub.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/vlm-run-vlmrun-hub","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=vlm-run-vlmrun-hub","description":"A hub for various industry-specific schemas to be used with VLMs.","homepage_url":"https://docs.vlm.run/hub","license":"Apache-2.0","open_issues":8,"watchers":2,"ai_summary":null,"readme_excerpt":"### 🚀 Getting Started\n\nLet's say we want to extract invoice metadata from an [invoice image](https://storage.googleapis.com/vlm-data-public-prod/hub/examples/document.invoice/invoice_1.jpg). You can readily use our [`Invoice`](vlmrun/hub/schemas/document/invoice.py) schema we have defined under `vlmrun.hub.schemas.document.invoice` and use it with any VLM of your choosing.\n\nFor a comprehensive walkthrough of available schemas and their usage, check out our [Schema Showcase Notebook](https://github.com/vlm-run/vlmrun-cookbook/blob/main/notebooks/01_schema_showcase.ipynb).\n\n---\n\n### 💾 Installation\n\n```python\npip install vlmrun-hub\n```\n\n#### With [VLM Run Python SDK](https://github.com/vlm-run/vlmrun-python-sdk)\n\n```python\nimport os\nfrom PIL import Image\nfrom vlmrun.client import VLMRun\nfrom vlmrun.client.types import PredictionResponse\nfrom vlmrun.common.utils import download_image\n\nVLMRUN_BASE_URL = os.getenv(\"VLMRUN_BASE_URL\", \"https://api.vlm.run/v1\")\nVLMRUN_API_KEY = os.getenv(\"VLMRUN_API_KEY\", None)\n\nclient = VLMRun(base_url=VLMRUN_BASE_URL, api_key=VLMRUN_API_KEY)\n\nIMAGE_URL = \"https://storage.googleapis.com/vlm-data-public-prod/hub/examples/document.invoice/invoice_1.jpg\"\nimage: Image.Image = download_image(IMAGE_URL)\n\nresponse: PredictionResponse = client.image.generate(\n    images=[image],\n    domain=\"document.invoice\",\n)\n```\n\n#### With [Instructor](https://github.com/jxnl/instructor) / OpenAI\n\n```python\nimport instructor\nfrom openai import OpenAI\n\nfrom vlmrun.hub.schemas.document.invoice import Invoice\n\nIMAGE_URL = \"https://storage.googleapis.com/vlm-data-public-prod/hub/examples/document.invoice/invoice_1.jpg\"\n\nclient = instructor.from_openai(\n    OpenAI(), mode=instructor.Mode.MD_JSON\n)\nresponse = client.chat.completions.create(\n    model=\"gpt-4o-mini\",\n    messages=[\n        { \"role\": \"user\", \"content\": [\n            {\"type\": \"text\", \"text\": \"Extract the invoice in JSON.\"},\n            {\"type\": \"image_url\", \"image_url\": {\"url\": IMAGE_URL}, \"detail\": \"auto\"}\n        ]}\n    ],\n    response_model=Invoice,\n    temperature=0,\n)\n```\n\n<details>\n<summary>JSON Response:</summary>\n\n<table>\n<tr>\n<td style=\"width: 40%;\"> Image </td>\n<td> JSON Output 🔐 </td>\n</tr>\n\n<tr>\n<td style=\"width: 40%;\">\n<img src=\"https://storage.googleapis.com/vlm-data-public-prod/hub/examples/document.invoice/invoice_1.jpg\">\n</td>\n<td>\n\n```json\n{\n  \"invoice_id\": \"9999999\",\n  \"period_start\": null,\n  \"period_end\": null,\n  \"invoice_issue_date\": \"2023-11-11\",\n  \"invoice_due_date\": null,\n  \"order_id\": null,\n  \"customer_id\": null,\n  \"issuer\": \"Anytown, USA\",\n  \"issuer_address\": {\n    \"street\": \"123 Main Street\",\n    \"city\": \"Anytown\",\n    \"state\": \"USA\",\n    \"postal_code\": \"01234\",\n    \"country\": null\n  },\n  \"customer\": \"Fred Davis\",\n  \"customer_email\": \"email@invoice.com\",\n  \"customer_phone\": \"(800) 123-4567\",\n  \"customer_billing_address\": {\n    \"street\": \"1335 Martin Luther King Jr Ave\",\n    \"city\": \"Dunedin\",\n    \"state\": \"FL\",\n    \"postal_code\": \"34698\",\n    \"country\": null\n  },\n  \"customer_shipping_address\": {\n    \"street\": \"249 Windward Passage\",\n    \"city\": \"Clearwater\",\n    \"state\": \"FL\",\n    \"postal_code\": \"33767\",\n    \"country\": null\n  },\n  \"items\": [\n    {\n      \"description\": \"Service\",\n      \"quantity\": 1,\n      \"currency\": null,\n      \"unit_price\": 200.0,\n      \"total_price\": 200.0\n    },\n    {\n      \"description\": \"Parts AAA\",\n      \"quantity\": 1,\n      \"currency\": null,\n      \"unit_price\": 100.0,\n      \"total_price\": 100.0\n    },\n    {\n      \"description\": \"Parts BBB\",\n      \"quantity\": 2,\n      \"currency\": null,\n      \"unit_price\": 50.0,\n      \"total_price\": 100.0\n    }\n  ],\n  \"subtotal\": 400.0,\n  \"tax\": null,\n  \"total\": 400.0,\n  \"currency\": null,\n  \"notes\": \"\",\n  \"others\": null\n}\n```\n\n</td>\n</tr>\n</table>\n\n</details>\n\n#### With [OpenAI Structured Outputs API](https://platform.openai.com/docs/guides/structured-outputs)\n\n```python\nimport instructor\nfrom openai import OpenAI\n\nfrom vlmrun.hub.schemas.document.invoice import Invoice\n\nIMAGE_URL","github_created_at":"2024-11-11T20:07:48+00:00","created_at":"2026-07-11T12:29:01.277052+00:00","updated_at":"2026-07-11T12:29:05.140045+00:00","categories":[{"slug":"computer-vision","name":"Computer Vision","url":"https://www.graphcanon.com/categories/computer-vision","markdown_url":"https://www.graphcanon.com/categories/computer-vision.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/computer-vision"},{"slug":"llm-frameworks","name":"LLM Frameworks","url":"https://www.graphcanon.com/categories/llm-frameworks","markdown_url":"https://www.graphcanon.com/categories/llm-frameworks.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/llm-frameworks"},{"slug":"speech-audio","name":"Speech & Audio","url":"https://www.graphcanon.com/categories/speech-audio","markdown_url":"https://www.graphcanon.com/categories/speech-audio.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/speech-audio"}],"tags":[{"slug":"ai","name":"ai"},{"slug":"computer-vision","name":"computer-vision"},{"slug":"etl","name":"etl"},{"slug":"genai","name":"genai"},{"slug":"json","name":"json"},{"slug":"multimodal","name":"multimodal"},{"slug":"pydantic","name":"pydantic"},{"slug":"pydantic-models","name":"pydantic-models"}],"trust":{"provenance":{"is_fork":false,"github_id":886899801,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-07-11T12:29:02.034Z","maintenance":{"label":"Slowing","score":36,"methodology":"github_public_v1","releases_90d":0,"days_since_push":207,"last_release_at":null},"security_summary":{"status":"no_lockfile","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-07-11T12:29:03.038Z","medium_count":0,"scan_profile":"none","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-07-11T12:29:02.626Z"},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-07-11T12:29:02.626Z"},"license_spdx":{"value":"Apache-2.0","source":"github.license","observed_at":"2026-07-11T12:29:02.626Z"}}}}