-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.py
More file actions
101 lines (92 loc) · 3.18 KB
/
Copy pathsetup.py
File metadata and controls
101 lines (92 loc) · 3.18 KB
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#!/usr/bin/env python3
"""
Setup configuration for unstructuredDataHandler.
Installation:
pip install . # Basic installation
pip install ".[document-processing]" # With document processing
pip install ".[ai-processing]" # With AI enhancements
pip install ".[all]" # All features
"""
from pathlib import Path
from setuptools import find_packages
from setuptools import setup
# Read README for long description
this_directory = Path(__file__).parent
long_description = (this_directory / "README.md").read_text(encoding="utf-8")
# Base requirements
base_requirements = [
"PyYAML>=6.0",
"requests>=2.28.0",
]
# Document processing requirements (Phase 1)
document_processing_requirements = [
"docling>=1.0.0",
"docling-core>=1.0.0",
"PyPDF2>=3.0.0",
"pdfplumber>=0.9.0",
"python-docx>=0.8.11",
"python-pptx>=0.6.21",
"beautifulsoup4>=4.12.0",
"lxml>=4.9.0",
"Pillow>=9.0.0",
"markdown>=3.4.0",
"chardet>=5.0.0",
]
# AI processing requirements (Phase 2)
ai_processing_requirements = [
"torch>=2.0.0",
"transformers>=4.30.0",
"sentence-transformers>=2.2.0",
"easyocr>=1.7.0",
"layoutparser>=0.3.4",
"numpy>=1.21.0",
"scikit-learn>=1.0.0",
]
# Development requirements
dev_requirements = [
"pytest>=7.0.0",
"pytest-cov>=4.0.0",
"black>=22.0.0",
"isort>=5.10.0",
"flake8>=5.0.0",
"mypy>=1.0.0",
"pre-commit>=2.20.0",
]
setup(
name="unstructuredDataHandler",
version="0.1.0",
description="AI/ML capabilities for software development workflows",
long_description=long_description,
long_description_content_type="text/markdown",
author="SoftwareDevLabs",
author_email="contact@softwaredevlabs.com",
url="https://github.com/SoftwareDevLabs/unstructuredDataHandler",
packages=find_packages(where="src"),
package_dir={"": "src"},
python_requires=">=3.10",
install_requires=base_requirements,
extras_require={
"document-processing": document_processing_requirements,
"ai-processing": document_processing_requirements + ai_processing_requirements,
"dev": dev_requirements,
"all": document_processing_requirements + ai_processing_requirements + dev_requirements,
},
classifiers=[
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
],
keywords="ai ml document-processing nlp pdf extraction requirements",
project_urls={
"Bug Reports": "https://github.com/SoftwareDevLabs/unstructuredDataHandler/issues",
"Source": "https://github.com/SoftwareDevLabs/unstructuredDataHandler",
"Documentation": "https://github.com/SoftwareDevLabs/unstructuredDataHandler/blob/main/README.md",
},
)