# L3.0 依赖 — 1B 参数训练 + LoRA + DPO
# ============================================================

# Core
numpy>=1.26.0
scipy>=1.11.0
pandas>=2.0.0
tqdm>=4.66.0
pyyaml>=6.0.1
regex>=2023.10.3
packaging>=23.2
psutil>=5.9.0
requests>=2.31.0
rich>=13.7.0
colorama>=0.4.6
typing_extensions>=4.8.0

# Dataset / Data Processing
datasets>=2.16.0
huggingface_hub>=0.20.0
pyarrow>=14.0.0
dill>=0.3.7
multiprocess>=0.70.15
xxhash>=3.4.1
fsspec>=2023.10.0
aiohttp>=3.9.0

# Tokenizer — SentencePiece (new primary) + BPE fallback
sentencepiece>=0.2.0
tokenizers>=0.15.0
tiktoken>=0.5.2

# Model / Training
einops>=0.7.0
safetensors>=0.4.2
accelerate>=0.26.0
transformers>=4.36.0

# Flash Attention (Linux x86_64 CUDA only, optional)
# flash-attn>=2.5.0

# FSDP / DeepSpeed (multi-GPU, optional)
# deepspeed>=0.14.0

# LoRA / QLoRA
# peft>=0.10.0
# bitsandbytes>=0.43.0

# Logging / Visualization
tensorboard>=2.15.0
tensorboardX>=2.6.2
matplotlib>=3.8.0
seaborn>=0.13.0
plotly>=5.18.0

# Web / API
fastapi>=0.108.0
uvicorn>=0.25.0
starlette>=0.32.0
jinja2>=3.1.2
python-multipart>=0.0.6
gradio>=4.14.0

# Config / Validation
pydantic>=2.5.0
omegaconf>=2.3.0

# Experiment Tracking
wandb>=0.16.0

# Evaluation
scikit-learn>=1.3.0
evaluate>=0.4.1

# File / Checkpoint
h5py>=3.10.0
joblib>=1.3.0

# Dev / Debug
ipython>=8.18.0
jupyter>=1.0.0
notebook>=7.0.0

# Speed
ninja>=1.11.1
