2024-01-02 11:29:13 +00:00
|
|
|
{ lib
|
|
|
|
, stdenv
|
|
|
|
, buildPythonPackage
|
|
|
|
, braceexpand
|
|
|
|
, ftfy
|
|
|
|
, huggingface-hub
|
|
|
|
, pandas
|
|
|
|
, protobuf
|
|
|
|
, pytestCheckHook
|
|
|
|
, regex
|
|
|
|
, sentencepiece
|
|
|
|
, timm
|
|
|
|
, torch
|
|
|
|
, torchvision
|
|
|
|
, tqdm
|
|
|
|
, transformers
|
|
|
|
, setuptools
|
|
|
|
, webdataset
|
|
|
|
, wheel
|
|
|
|
, fetchFromGitHub
|
|
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
|
|
pname = "open-clip-torch";
|
2024-01-13 08:15:51 +00:00
|
|
|
version = "2.24.0";
|
2024-01-02 11:29:13 +00:00
|
|
|
pyproject = true;
|
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "mlfoundations";
|
|
|
|
repo = "open_clip";
|
2024-01-13 08:15:51 +00:00
|
|
|
rev = "refs/tags/v${version}";
|
|
|
|
hash = "sha256-ugbXnXiOY9FrNvr8ZxnAgZO/SLCVoXbRgupi8cUwflU=";
|
2024-01-02 11:29:13 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
nativeBuildInputs = [
|
|
|
|
setuptools
|
|
|
|
wheel
|
|
|
|
];
|
|
|
|
|
|
|
|
propagatedBuildInputs = [
|
|
|
|
ftfy
|
|
|
|
huggingface-hub
|
|
|
|
protobuf
|
|
|
|
regex
|
|
|
|
sentencepiece
|
|
|
|
timm
|
|
|
|
torch
|
|
|
|
torchvision
|
|
|
|
tqdm
|
|
|
|
];
|
|
|
|
|
|
|
|
nativeCheckInputs = [
|
|
|
|
pytestCheckHook
|
|
|
|
braceexpand
|
|
|
|
pandas
|
|
|
|
transformers
|
|
|
|
webdataset
|
|
|
|
];
|
|
|
|
|
|
|
|
pythonImportsCheck = [ "open_clip" ];
|
|
|
|
|
|
|
|
disabledTestPaths = lib.optionals (stdenv.isAarch64 || stdenv.isDarwin) [
|
|
|
|
"tests/test_wds.py"
|
|
|
|
];
|
|
|
|
|
|
|
|
disabledTests = [
|
|
|
|
# requires network
|
|
|
|
"test_download_pretrained_from_hfh"
|
|
|
|
"test_inference_simple"
|
|
|
|
"test_inference_with_data"
|
|
|
|
"test_pretrained_text_encoder"
|
|
|
|
"test_training_mt5"
|
|
|
|
] ++ lib.optionals (stdenv.isAarch64 && stdenv.isLinux) [
|
|
|
|
"test_training"
|
|
|
|
"test_training_coca"
|
|
|
|
"test_training_unfreezing_vit"
|
|
|
|
"test_training_clip_with_jit"
|
|
|
|
];
|
|
|
|
|
|
|
|
meta = with lib; {
|
|
|
|
description = "An open source implementation of CLIP";
|
|
|
|
homepage = "https://github.com/mlfoundations/open_clip";
|
|
|
|
license = licenses.asl20;
|
|
|
|
maintainers = with maintainers; [ iynaix ];
|
|
|
|
mainProgram = "open-clip";
|
|
|
|
};
|
|
|
|
}
|