pyproject.toml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. [build-system]
  2. requires = ["setuptools>=61.0", "wheel"]
  3. build-backend = "setuptools.build_meta"
  4. [project]
  5. name = "mineru"
  6. dynamic = ["version"]
  7. license = {text = "AGPL-3.0"}
  8. description = "A practical tool for converting PDF to Markdown"
  9. readme = "README.md"
  10. requires-python = ">=3.10,<3.14"
  11. keywords = ["magic-pdf", "mineru", "MinerU", "convert", "pdf", "markdown"]
  12. classifiers = [
  13. "Programming Language :: Python :: 3.10",
  14. "Programming Language :: Python :: 3.11",
  15. "Programming Language :: Python :: 3.12",
  16. "Programming Language :: Python :: 3.13",
  17. ]
  18. dependencies = [
  19. "boto3>=1.28.43",
  20. "click>=8.1.7",
  21. "loguru>=0.7.2",
  22. "numpy>=1.21.6",
  23. "pdfminer.six==20250506",
  24. "tqdm>=4.67.1",
  25. "requests",
  26. "httpx",
  27. "pillow>=11.0.0",
  28. "pypdfium2>=4.30.0",
  29. "pypdf>=5.6.0",
  30. "reportlab",
  31. "pdftext>=0.6.2",
  32. "modelscope>=1.26.0",
  33. "huggingface-hub>=0.32.4",
  34. "json-repair>=0.46.2",
  35. ]
  36. [project.optional-dependencies]
  37. vlm = [
  38. "transformers>=4.51.1",
  39. "torch>=2.6.0",
  40. "accelerate>=1.5.1",
  41. "pydantic",
  42. ]
  43. sglang = [
  44. "sglang[all]==0.4.7",
  45. ]
  46. pipeline = [
  47. "matplotlib>=3.10,<4",
  48. "ultralytics>=8.3.48,<9",
  49. "doclayout_yolo==0.0.4",
  50. "dill>=0.3.8,<1",
  51. "rapid_table>=1.0.5,<2.0.0",
  52. "PyYAML>=6.0.2,<7",
  53. "ftfy>=6.3.1,<7",
  54. "openai>=1.70.0,<2",
  55. "shapely>=2.0.7,<3",
  56. "pyclipper>=1.3.0,<2",
  57. "omegaconf>=2.3.0,<3",
  58. "torch>=2.2.2,!=2.5.0,!=2.5.1,<3",
  59. "torchvision",
  60. "transformers>=4.49.0,!=4.51.0,<5.0.0",
  61. "fast-langdetect>=0.2.3,<0.3.0",
  62. ]
  63. core = [
  64. "mineru[vlm]",
  65. "mineru[pipeline]",
  66. ]
  67. all = [
  68. "mineru[core]",
  69. "mineru[sglang]",
  70. ]
  71. pipeline_old_linux = [
  72. "matplotlib>=3.10,<=3.10.1",
  73. "ultralytics>=8.3.48,<=8.3.104",
  74. "doclayout_yolo==0.0.4",
  75. "dill==0.3.8",
  76. "PyYAML==6.0.2",
  77. "ftfy==6.3.1",
  78. "openai==1.71.0",
  79. "shapely==2.1.0",
  80. "pyclipper==1.3.0.post6",
  81. "omegaconf==2.3.0",
  82. "albumentations==1.4.20",
  83. "rapid_table==1.0.3",
  84. "torch>=2.2.2,!=2.5.0,!=2.5.1,<3",
  85. "torchvision",
  86. "transformers>=4.49.0,!=4.51.0,<5.0.0",
  87. "fast-langdetect>=0.2.3,<0.3.0",
  88. ]
  89. [project.urls]
  90. Home = "https://mineru.net/"
  91. Repository = "https://github.com/opendatalab/MinerU"
  92. [project.scripts]
  93. mineru = "mineru.cli:client.main"
  94. mineru-sglang-server = "mineru.cli.vlm_sglang_server:main"
  95. mineru-models-download = "mineru.cli.models_download:download_models"
  96. [tool.setuptools.dynamic]
  97. version = {attr = "mineru.version.__version__"}
  98. [tool.setuptools.packages.find]
  99. include = ["mineru*"]
  100. namespaces = false
  101. [tool.setuptools.package-data]
  102. "mineru" = ["resources/**"]
  103. "mineru.model.ocr.paddleocr2pytorch.pytorchocr.utils" = ["resources/**"]
  104. [tool.setuptools]
  105. include-package-data = true
  106. zip-safe = false