click>=8.0
httpx>=0.25.0
jsonschema>=4.0
pydantic>=2.0
pydantic-settings>=2.0
python-dotenv>=0.19.0
python-dateutil>=2.9.0
pyyaml>=6.0
requests>=2.28

[airllm]
airllm>=2.8.0

[all]
prompture[anthropic,google,groq,openai,pandas,sandbox,toon]

[anthropic]
anthropic>=0.8.0

[bedrock]
boto3>=1.34.0

[dev]
pytest>=7.0
pytest-asyncio>=0.23.0
ruff>=0.8.0
prompture[all]

[google]
google-genai>=1.0.0

[groq]
groq>=0.4.0

[ingest]
pdfplumber>=0.10.0
pymupdf>=1.23.0
python-docx>=0.8.11
beautifulsoup4>=4.12.0
lxml>=4.9.0
openpyxl>=3.1.0

[openai]
openai>=1.55.0

[pandas]
pandas>=1.3.0

[rag]
prompture[rag-docx,rag-epub,rag-html,rag-hybrid,rag-pdf,rag-semantic,rag-token,rag-vs-chroma,rag-vs-faiss,rag-vs-pgvector,rag-vs-pinecone,rag-vs-qdrant,rag-vs-weaviate,rag-xlsx]

[rag-docx]
python-docx>=1.1.0

[rag-epub]
ebooklib>=0.18
beautifulsoup4>=4.12.0

[rag-html]
beautifulsoup4>=4.12.0
markdownify>=0.11.0
lxml>=5.0.0

[rag-hybrid]
rank-bm25>=0.2.2

[rag-pdf]
pypdf>=4.0.0

[rag-semantic]
numpy>=1.24.0

[rag-token]
tiktoken>=0.5.0

[rag-vs-chroma]
chromadb>=0.4.0

[rag-vs-faiss]
faiss-cpu>=1.7.0

[rag-vs-pgvector]
psycopg2-binary>=2.9.0
pgvector>=0.2.0

[rag-vs-pinecone]
pinecone-client>=3.0.0

[rag-vs-qdrant]
qdrant-client>=1.7.0

[rag-vs-weaviate]
weaviate-client>=4.4.0

[rag-xlsx]
openpyxl>=3.1.0

[redis]
redis>=4.0

[sandbox]
tukuy>=0.0.30

[scaffold]
jinja2>=3.0

[serve]
fastapi>=0.100
uvicorn[standard]>=0.20
sse-starlette>=1.6
python-multipart>=0.0.9

[test]
pytest>=7.0
pytest-asyncio>=0.23.0
prompture[all]

[toon]
python-toon>=0.1.0
tukuy==0.0.30
