|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import re |
|
|
import shutil |
|
|
from pathlib import Path |
|
|
|
|
|
from setuptools import find_packages, setup |
|
|
|
|
|
|
|
|
|
|
|
stale_egg_info = Path(__file__).parent / "open_r1.egg-info" |
|
|
if stale_egg_info.exists(): |
|
|
print( |
|
|
( |
|
|
"Warning: {} exists.\n\n" |
|
|
"If you recently updated open_r1, this is expected,\n" |
|
|
"but it may prevent open_r1 from installing in editable mode.\n\n" |
|
|
"This directory is automatically generated by Python's packaging tools.\n" |
|
|
"I will remove it now.\n\n" |
|
|
"See https://github.com/pypa/pip/issues/5466 for details.\n" |
|
|
).format(stale_egg_info) |
|
|
) |
|
|
shutil.rmtree(stale_egg_info) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_deps = [ |
|
|
"accelerate>=1.2.1", |
|
|
"bitsandbytes>=0.43.0", |
|
|
"black>=24.4.2", |
|
|
"datasets>=3.2.0", |
|
|
"deepspeed==0.15.4", |
|
|
"distilabel[vllm,ray,openai]>=1.5.2", |
|
|
"einops>=0.8.0", |
|
|
"flake8>=6.0.0", |
|
|
"hf_transfer>=0.1.4", |
|
|
"huggingface-hub[cli]>=0.19.2,<1.0", |
|
|
"isort>=5.12.0", |
|
|
"liger_kernel==0.5.2", |
|
|
"lighteval @ git+https://github.com/huggingface/lighteval.git@4f381b352c0e467b5870a97d41cb66b487a2c503#egg=lighteval[math]", |
|
|
"math-verify", |
|
|
"packaging>=23.0", |
|
|
"parameterized>=0.9.0", |
|
|
"pytest", |
|
|
"safetensors>=0.3.3", |
|
|
"sentencepiece>=0.1.99", |
|
|
"torch>=2.5.1", |
|
|
"transformers @ git+https://github.com/huggingface/transformers.git@336dc69d63d56f232a183a3e7f52790429b871ef", |
|
|
"trl==0.14.0", |
|
|
"vllm==0.6.6.post1", |
|
|
"wandb>=0.19.1", |
|
|
"pillow", |
|
|
] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
deps = {b: a for a, b in (re.findall(r"^(([^!=<>~ \[\]]+)(?:\[[^\]]+\])?(?:[!=<>~ ].*)?$)", x)[0] for x in _deps)} |
|
|
|
|
|
|
|
|
def deps_list(*pkgs): |
|
|
return [deps[pkg] for pkg in pkgs] |
|
|
|
|
|
|
|
|
extras = {} |
|
|
extras["tests"] = deps_list("pytest", "parameterized") |
|
|
extras["torch"] = deps_list("torch") |
|
|
extras["quality"] = deps_list("black", "isort", "flake8") |
|
|
extras["eval"] = deps_list("lighteval", "math-verify") |
|
|
extras["dev"] = extras["quality"] + extras["tests"] + extras["eval"] |
|
|
|
|
|
|
|
|
install_requires = [ |
|
|
deps["accelerate"], |
|
|
deps["bitsandbytes"], |
|
|
deps["einops"], |
|
|
deps["datasets"], |
|
|
deps["deepspeed"], |
|
|
deps["hf_transfer"], |
|
|
deps["huggingface-hub"], |
|
|
deps["liger_kernel"], |
|
|
deps["packaging"], |
|
|
deps["safetensors"], |
|
|
deps["sentencepiece"], |
|
|
deps["transformers"], |
|
|
deps["trl"], |
|
|
] |
|
|
|
|
|
setup( |
|
|
name="r1-v", |
|
|
version="0.1.0", |
|
|
author="The r1-v team and the Hugging Face team (past and future)", |
|
|
description="R1-V", |
|
|
license="Apache", |
|
|
url="https://github.com/Deep-Agent/R1-V", |
|
|
package_dir={"": "src"}, |
|
|
packages=find_packages("src"), |
|
|
zip_safe=False, |
|
|
extras_require=extras, |
|
|
python_requires=">=3.10.9", |
|
|
install_requires=install_requires, |
|
|
classifiers=[ |
|
|
"Development Status :: 3 - Alpha", |
|
|
"Intended Audience :: Developers", |
|
|
"Intended Audience :: Education", |
|
|
"Intended Audience :: Science/Research", |
|
|
"License :: OSI Approved :: Apache Software License", |
|
|
"Operating System :: OS Independent", |
|
|
"Programming Language :: Python :: 3", |
|
|
"Programming Language :: Python :: 3.10", |
|
|
"Topic :: Scientific/Engineering :: Artificial Intelligence", |
|
|
], |
|
|
) |
|
|
|