1{ lib
2, callPackage
3, fetchPypi
4, buildPythonPackage
5, dataclasses
6, torch
7, pythonOlder
8, spacy
9, spacy-alignments
10, srsly
11, transformers
12}:
13
14buildPythonPackage rec {
15 pname = "spacy-transformers";
16 version = "1.1.8";
17 format = "setuptools";
18
19 disabled = pythonOlder "3.6";
20
21 src = fetchPypi {
22 inherit pname version;
23 hash = "sha256-e7YuBEq2yggW5G2pJ0Rjw9z3c1jqgRKCifYSfnzblVs=";
24 };
25
26 propagatedBuildInputs = [
27 torch
28 spacy
29 spacy-alignments
30 srsly
31 transformers
32 ] ++ lib.optionals (pythonOlder "3.7") [
33 dataclasses
34 ];
35
36 postPatch = ''
37 substituteInPlace setup.cfg \
38 --replace "transformers>=3.4.0,<4.22.0" "transformers>=3.4.0 # ,<4.22.0"
39 '';
40
41 # Test fails due to missing arguments for trfs2arrays().
42 doCheck = false;
43
44 pythonImportsCheck = [
45 "spacy_transformers"
46 ];
47
48 passthru.tests.annotation = callPackage ./annotation-test { };
49
50 meta = with lib; {
51 description = "spaCy pipelines for pretrained BERT, XLNet and GPT-2";
52 homepage = "https://github.com/explosion/spacy-transformers";
53 license = licenses.mit;
54 maintainers = with maintainers; [ ];
55 };
56}