1{ lib
2, fetchPypi
3, buildPythonPackage
4, pythonOlder
5, python-rapidjson
6, numpy
7 # optional dependencies
8, grpcio
9, packaging
10, aiohttp
11, geventhttpclient
12}:
13
14let
15 pname = "tritonclient";
16 version = "2.35.0";
17in
18buildPythonPackage {
19 inherit pname version;
20 format = "wheel";
21
22 disabled = pythonOlder "3.7";
23
24 src = fetchPypi {
25 inherit pname version;
26 python = "py3";
27 dist = "py3";
28 format = "wheel";
29 platform = "manylinux1_x86_64";
30 hash = "sha256-JXVr+DWkM2g7CiU9STMcZyQJieXgNbKXlX/jqf/oam8=";
31 };
32
33 propagatedBuildInputs = [
34 python-rapidjson
35 numpy
36 ];
37
38 doCheck = false;
39
40 pythonImportsCheck = [
41 "tritonclient"
42 ];
43
44 passthru = {
45 optional-dependencies = {
46 http = [
47 aiohttp
48 geventhttpclient
49 ];
50 grpc = [
51 grpcio
52 packaging
53 ];
54 };
55 };
56
57 meta = with lib; {
58 description = "Triton python client";
59 homepage = "https://github.com/triton-inference-server/client";
60 license = licenses.bsd3;
61 maintainers = with maintainers; [ happysalada ];
62 platforms = platforms.linux;
63 };
64}
65