File size: 2,242 Bytes
efb21f2 | 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 | [project]
name = "graph-rag"
version = "0.1.0"
description = "Agentic Graph RAG as a Service - Production-grade knowledge graph platform"
readme = "README.md"
requires-python = ">=3.12"
authors = [
{name = "Your Name", email = "your.email@example.com"}
]
keywords = ["graph", "rag", "llm", "knowledge-graph", "neo4j", "langgraph", "agents"]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Topic :: Software Development :: Libraries :: Python Modules",
"Programming Language :: Python :: 3.12",
]
dependencies = [
"fastapi[standard]>=0.129.0",
"uvicorn[standard]>=0.41.0",
"llama-index-core>=0.14.14",
"langgraph>=1.0.8",
"langchain-core>=1.2.13",
"neo4j>=5.28.0,<6.0.0",
"redis>=7.2.0",
"celery>=5.6.2",
"pydantic>=2.12.5",
"pydantic-settings>=2.13.0",
"python-multipart>=0.0.22",
"httpx>=0.28.1",
"llama-index-llms-openai>=0.6.18",
"llama-index-llms-anthropic>=0.10.8",
"llama-index-llms-gemini>=0.6.2",
"llama-index-embeddings-gemini>=0.1.0",
"llama-index-llms-ollama>=0.9.1",
"llama-index-embeddings-ollama>=0.8.6",
"llama-index-graph-stores-neo4j>=0.5.1",
"llama-parse>=0.6.10",
"opentelemetry-api>=1.39.1",
"opentelemetry-sdk>=1.39.1",
"opentelemetry-instrumentation-fastapi>=0.60b1",
"python-jose[cryptography]>=3.5.0",
"passlib[bcrypt]>=1.7.4",
"aiofiles>=25.1.0",
"pypdf>=6.7.1",
"python-magic-bin>=0.4.14",
"openpyxl>=3.1.2",
"python-pptx>=0.6.23",
"beautifulsoup4>=4.12.3",
"crawl4ai>=0.4.0",
"markdownify>=1.2.2",
"flower>=2.0.1",
"bcrypt>=4.0.0", # used directly in auth.py (not via passlib)
]
[project.optional-dependencies]
dev = [
"pytest>=9.0.2",
"pytest-asyncio>=1.3.0",
"black>=24.0.0",
"ruff>=0.1.0",
]
[project.scripts]
graph-rag = "graph_rag_service.main:main"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/graph_rag_service"]
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
[tool.black]
line-length = 100
target-version = ['py312']
[tool.ruff]
line-length = 100
target-version = "py312"
|