setup.py (73 lines of code) (raw):

# Copyright 2023 The HuggingFace Team. All rights reserved. # Licensed under the MIT License. import re from setuptools import find_namespace_packages, setup # Ensure we match the version set in optimum/intel/version.py try: filepath = "optimum/amd/version.py" with open(filepath) as version_file: (__version__,) = re.findall('__version__ = "(.*)"', version_file.read()) except Exception as error: assert False, "Error: Could not open '%s' due %s\n" % (filepath, error) # ORT 1.16 is not compatible: https://github.com/Xilinx/Vitis-AI/issues/1343 INSTALL_REQUIRE = ["optimum", "transformers>=4.38", "onnx", "onnxruntime-extensions"] # TODO: unpin pytest once https://github.com/huggingface/transformers/pull/29154 is merged & released TESTS_REQUIRE = [ "pytest<=7.4.4", "parameterized", "evaluate", "timm", "scikit-learn", "onnxruntime", "torch==2.2.1", "torchvision==0.17.1", "opencv-python", "pytest-xdist", "diffusers", ] QUALITY_REQUIRE = ["black~=23.1", "ruff>=0.0.241,<=0.0.259"] EXTRAS_REQUIRE = { "quality": QUALITY_REQUIRE, "tests": TESTS_REQUIRE, "ryzenai": ["opencv-python", "timm"], "zentorch": ["torch==2.2.1"], "brevitas": [ "brevitas", "torch>=2.2", "datasets>=2.17", "onnx", "onnxruntime", "accelerate>=0.30", "onnx-tool", "optimum>=1.17", ], } setup( name="optimum-amd", version=__version__, description="Optimum Library is an extension of the Hugging Face Transformers library, providing a framework to " "integrate third-party libraries from Hardware Partners and interface with their specific " "functionality.", long_description=open("README.md", "r", encoding="utf-8").read(), long_description_content_type="text/markdown", classifiers=[ "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Science/Research", "Operating System :: OS Independent", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Topic :: Scientific/Engineering :: Artificial Intelligence", ], keywords="transformers, amd, ryzen, ipu, quantization, on-device, instinct", url="https://github.com/huggingface/optimum-amd", author="HuggingFace Inc. Special Ops Team", author_email="hardware@huggingface.co", license="MIT", packages=find_namespace_packages(include=["optimum*"]), entry_points={"console_scripts": ["amdrun=optimum.amd.cli:amdrun"]}, install_requires=INSTALL_REQUIRE, extras_require=EXTRAS_REQUIRE, package_data={"optimum": ["amd/ryzenai/configs/*.json"]}, include_package_data=True, zip_safe=False, )