fastapi
uvicorn
python-multipart
fastmcp
python-jose[cryptography]
passlib[bcrypt]
python-dotenv
nest-asyncio
wikipedia
cmislib
python-alfresco-api>=1.1.5
docling
llama-parse
neo4j
numpy
rapidfuzz
spacy
openai
ollama
pydantic
pydantic-settings
# LlamaIndex core and integrations
llama-index-core
llama-index-llms-openai
llama-index-llms-ollama
llama-index-llms-google-genai
llama-index-llms-azure-openai
llama-index-llms-anthropic
# llama-index-llms-vertex removed - use google-genai package for Vertex AI
llama-index-llms-bedrock-converse
llama-index-llms-groq
llama-index-llms-fireworks
llama-index-embeddings-openai
llama-index-embeddings-ollama
llama-index-embeddings-google-genai
llama-index-embeddings-azure-openai
# llama-index-embeddings-vertex removed - use google-genai package for Vertex AI
llama-index-embeddings-bedrock
llama-index-embeddings-fireworks
llama-index-vector-stores-neo4jvector
llama-index-vector-stores-qdrant
llama-index-vector-stores-elasticsearch
llama-index-vector-stores-opensearch
llama-index-vector-stores-chroma
llama-index-vector-stores-milvus
llama-index-vector-stores-weaviate
llama-index-vector-stores-pinecone
llama-index-vector-stores-postgres
llama-index-vector-stores-lancedb
llama-index-graph-stores-neo4j
llama-index-graph-stores-kuzu
llama-index-graph-stores-falkordb
llama-index-graph-stores-memgraph
llama-index-graph-stores-nebula
llama-index-graph-stores-neptune
llama-index-retrievers-bm25

# ArcadeDB graph database dependencies
arcadedb-python>=0.4.0
llama-index-graph-stores-arcadedb>=0.4.1
# arcadedb-embedded>=26.2.1  # Uncomment to enable embedded ArcadeDB mode (no separate server required)

# Kuzu graph database dependencies
kuzu

# Search / Vector database dependencies
elasticsearch
opensearch-py

# Vector database client libraries
qdrant-client
chromadb
pymilvus
weaviate-client
pinecone-client
psycopg2-binary
lancedb

pinecone

# Data Source LlamaIndex Reader dependencies
llama-index-readers-web
llama-index-readers-wikipedia
wikipedia 
llama-index-readers-youtube-transcript
youtube_transcript_api
llama-index-readers-s3  # S3Reader with PassthroughExtractor for download + DocumentProcessor for parsing
llama-index-readers-gcs  # GCSReader with PassthroughExtractor (implemented)
llama-index-readers-google  # GoogleDriveReader with PassthroughExtractor (implemented)
llama-index-readers-azstorage-blob  # AzStorageBlobReader with PassthroughExtractor (implemented)
llama-index-readers-microsoft-onedrive  # OneDriveReader with PassthroughExtractor (TODO: implement like S3)
llama-index-readers-microsoft-sharepoint  # SharePointReader with PassthroughExtractor (TODO: implement like S3)
llama-index-readers-box  # BoxReader with PassthroughExtractor (implemented with CCGConfig)
llama-index-readers-file  # File readers for SimpleDirectoryReader (prevents warnings)
box-sdk-gen  # Box SDK for CCG authentication (required by llama-index-readers-box)
# llama-index-readers-docling  # Not used: Using DocumentProcessor with Docling/LlamaParse instead
s3fs  # S3 filesystem interface (used by S3Reader)
boto3  # AWS SDK (used by S3Reader for file counting)
# Cloud SDK dependencies (used by readers for authentication and file access)
google-cloud-storage  # GCS SDK (used by GCSReader)
google-api-python-client  # Google Drive API (used by GoogleDriveReader)
google-auth-httplib2
google-auth-oauthlib
azure-storage-blob  # Azure SDK (used by AzStorageBlobReader)

# Observability dependencies (OPTIONAL - Install via pyproject.toml extras)
# 
# Use optional installation instead of including in requirements.txt:
#   uv pip install -e ".[observability]"       # OpenInference only (lightweight)
#   uv pip install -e ".[observability-dual]"  # OpenInference + OpenLIT (complete dashboard)
#
# Note: OpenLIT requires OpenAI 1.x (will downgrade from 2.x)
#
# # OpenInference - Trace-focused
# openinference-instrumentation-llama-index
# opentelemetry-exporter-otlp
# opentelemetry-sdk
# opentelemetry-api
#
# # OpenLIT - Token/cost metrics (requires OpenAI 1.x)
# openlit

# Incremental Updates dependencies
asyncpg>=0.29.0  # PostgreSQL async driver for state management
watchdog>=4.0.0  # Filesystem change detection (MIT license)
# boto3 already included above for S3Reader

# Additional auto-sync dependencies for new detectors
google-cloud-pubsub>=2.18.0  # GCS Pub/Sub notifications (Apache 2.0)
azure-storage-blob-changefeed>=12.0.0b5  # Azure Blob change feed (beta, MIT license)
# box-sdk-gen already included above for BoxReader
msgraph-sdk  # Microsoft Graph SDK for OneDrive/SharePoint (MIT license)
azure-identity  # Azure AD authentication for Microsoft Graph (MIT license)


