# Copyright 2023-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools PYTHON_COMPAT=( python3_{10..12} ) DISTUTILS_SINGLE_IMPL=1 inherit distutils-r1 DESCRIPTION="State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow" HOMEPAGE=" https://pypi.org/project/transformers/ https://huggingface.co/ " SRC_URI="https://github.com/huggingface/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64" RESTRICT="test" # Need some modules, not yet packaged RDEPEND=" =sci-libs/tokenizers-0.20*[${PYTHON_SINGLE_USEDEP}] $(python_gen_cond_dep ' dev-python/filelock[${PYTHON_USEDEP}] dev-python/numpy[${PYTHON_USEDEP}] dev-python/packaging[${PYTHON_USEDEP}] dev-python/pyyaml[${PYTHON_USEDEP}] dev-python/regex[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] dev-python/tqdm[${PYTHON_USEDEP}] sci-libs/huggingface_hub[${PYTHON_USEDEP}] >=sci-libs/safetensors-0.4.1[${PYTHON_USEDEP}] ') " BDEPEND=" $(python_gen_cond_dep ' dev-python/parameterized[${PYTHON_USEDEP}] dev-python/timeout-decorator[${PYTHON_USEDEP}] ') " distutils_enable_tests pytest src_test() { local EPYTEST_IGNORE=( tests/deepspeed/test_deepspeed.py tests/deepspeed/test_model_zoo.py tests/fsdp/test_fsdp.py tests/models/bartpho/test_tokenization_bartpho.py tests/models/big_bird/test_modeling_big_bird.py tests/models/cpm/test_tokenization_cpm.py tests/models/layoutxlm/test_processor_layoutxlm.py tests/models/layoutxlm/test_tokenization_layoutxlm.py tests/models/mluke/test_tokenization_mluke.py tests/models/nllb/test_tokenization_nllb.py tests/models/qwen2_audio/test_modeling_qwen2_audio.py tests/models/seamless_m4t/test_processor_seamless_m4t.py tests/models/speech_to_text/test_processor_speech_to_text.py tests/models/speech_to_text/test_tokenization_speech_to_text.py tests/models/speecht5/test_processor_speecht5.py tests/models/speecht5/test_tokenization_speecht5.py tests/repo_utils/test_check_docstrings.py tests/repo_utils/test_tests_fetcher.py tests/trainer/test_trainer.py tests/trainer/test_trainer_callback.py tests/utils/test_file_utils.py tests/models/audio_spectrogram_transformer/test_feature_extraction_audio_spectrogram_transformer.py tests/models/beit/test_image_processing_beit.py tests/models/clap/test_feature_extraction_clap.py tests/models/clip/test_image_processing_clip.py tests/models/clvp/test_feature_extraction_clvp.py tests/models/conditional_detr/test_image_processing_conditional_detr.py tests/models/dac/test_feature_extraction_dac.py tests/models/deformable_detr/test_image_processing_deformable_detr.py tests/models/encodec/test_feature_extraction_encodec.py tests/models/grounding_dino/test_image_processing_grounding_dino.py tests/models/idefics/test_image_processing_idefics.py tests/models/idefics2/test_image_processing_idefics2.py tests/models/llava_next/test_image_processing_llava_next.py tests/models/llava_next_video/test_image_processing_llava_next_video.py tests/models/llava_onevision/test_image_processing_llava_onevision.py tests/models/markuplm/test_feature_extraction_markuplm.py tests/models/mask2former/test_image_processing_mask2former.py tests/models/maskformer/test_image_processing_maskformer.py tests/models/musicgen_melody/test_feature_extraction_musicgen_melody.py tests/models/oneformer/test_image_processing_oneformer.py tests/models/oneformer/test_processor_oneformer.py tests/models/pix2struct/test_image_processing_pix2struct.py tests/models/pixtral/test_image_processing_pixtral.py tests/models/pop2piano/test_feature_extraction_pop2piano.py tests/models/qwen2_vl/test_image_processing_qwen2_vl.py tests/models/seamless_m4t/test_feature_extraction_seamless_m4t.py tests/models/segformer/test_image_processing_segformer.py tests/models/seggpt/test_image_processing_seggpt.py tests/models/speech_to_text/test_feature_extraction_speech_to_text.py tests/models/speecht5/test_feature_extraction_speecht5.py tests/models/superpoint/test_image_processing_superpoint.py tests/models/univnet/test_feature_extraction_univnet.py tests/models/wav2vec2/test_feature_extraction_wav2vec2.py tests/models/whisper/test_feature_extraction_whisper.py tests/models/yolos/test_image_processing_yolos.py ) local EPYTEST_DESELECT=( tests/repo_utils/test_check_copies.py::CopyCheckTester::test_is_copy_consistent tests/repo_utils/test_check_copies.py::CopyCheckTester::test_is_copy_consistent_with_ignored_match tests/repo_utils/test_check_copies.py::CopyCheckTester::test_is_copy_consistent_with_ignored_no_match ) EPYTEST_FLAGS="--dist=loadfile -s ./tests/" distutils-r1_src_test }