pydantic>=2.0
python-dotenv>=1.0.0

[all]
geoffrey-llm[blog,dev,dl,finetune,geocode,ml,retrieval]

[blog]
httpx>=0.25.0

[cloud]
boto3>=1.34
alibabacloud-ecs20140526>=4.0
alibabacloud-vpc20160428>=2.0
alibabacloud-rds20140815>=2.0
alibabacloud-credentials>=0.3
alibabacloud-tea-openapi>=0.3
oss2>=2.18
tencentcloud-sdk-python-common>=3.0
tencentcloud-sdk-python-cvm>=3.0
tencentcloud-sdk-python-vpc>=3.0
tencentcloud-sdk-python-cdb>=3.0
cos-python-sdk-v5>=1.9
huaweicloudsdkecs>=3.1
huaweicloudsdkvpc>=3.1
huaweicloudsdkrds>=3.1
esdk-obs-python>=3.24

[cloud-alibaba]
alibabacloud-ecs20140526>=4.0
alibabacloud-vpc20160428>=2.0
alibabacloud-rds20140815>=2.0
alibabacloud-credentials>=0.3
alibabacloud-tea-openapi>=0.3
oss2>=2.18

[cloud-aws]
boto3>=1.34

[cloud-huawei]
huaweicloudsdkecs>=3.1
huaweicloudsdkvpc>=3.1
huaweicloudsdkrds>=3.1
esdk-obs-python>=3.24

[cloud-tencent]
tencentcloud-sdk-python-common>=3.0
tencentcloud-sdk-python-cvm>=3.0
tencentcloud-sdk-python-vpc>=3.0
tencentcloud-sdk-python-cdb>=3.0
cos-python-sdk-v5>=1.9

[dev]
pytest>=7.0
black>=23.0
ruff>=0.1.0

[dl]
torch>=2.0
numpy>=1.24

[finetune]
torch>=2.0
transformers>=4.40
peft>=0.10
datasets>=2.14

[geocode]
rich>=13.0.0
prompt-toolkit>=3.0.0
httpx>=0.25.0
pyyaml>=6.0
requests>=2.31.0

[ml]
scikit-learn>=1.3
numpy>=1.24
pandas>=2.0
joblib>=1.3

[retrieval]
httpx>=0.25.0
