1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
{
lib,
aiohttp,
anyio,
buildPythonPackage,
click,
dirty-equals,
distro,
fetchPypi,
fire,
hatch-fancy-pypi-readme,
hatchling,
httpx-aiohttp,
httpx,
nest-asyncio,
openai,
pandas,
prompt-toolkit,
pyaml,
pydantic,
pytest-asyncio,
pytest-xdist,
pytestCheckHook,
requests,
respx,
rich,
sniffio,
termcolor,
tqdm,
typing-extensions,
}:
buildPythonPackage (finalAttrs: {
pname = "llama-stack-client";
version = "0.4.2";
pyproject = true;
src = fetchPypi {
pname = "llama_stack_client";
inherit (finalAttrs) version;
hash = "sha256-Ene/VjUx2bxHbjBfLSvq2ZAJhtQmouMsmt9LakZIBMM=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "hatchling==1.26.3" "hatchling"
'';
build-system = [
hatch-fancy-pypi-readme
hatchling
];
dependencies = [
anyio
click
distro
fire
httpx
pandas
prompt-toolkit
pyaml
pydantic
requests
rich
sniffio
termcolor
tqdm
typing-extensions
];
optional-dependencies = {
aiohttp = [
aiohttp
httpx-aiohttp
];
};
nativeCheckInputs = [
dirty-equals
nest-asyncio
openai
pytest-asyncio
pytest-xdist
pytestCheckHook
respx
]
++ lib.flatten (builtins.attrValues finalAttrs.passthru.optional-dependencies);
pythonImportsCheck = [ "llama_stack_client" ];
disabledTestPaths = [
# Tests require network access
"tests/api_resources/"
"tests/test_client.py"
"tests/integration/test_agent_turn_step_events.py"
# AttributeError: 'Agent' object has no attribute '_session_last_response_id'
"tests/lib/agents/test_agent_responses.py::test_agent_tracks_multiple_sessions"
];
meta = {
description = "Library for the llama-stack-client API";
homepage = "https://github.com/llamastack/llama-stack-client-python";
changelog = "https://github.com/llamastack/llama-stack-client-python/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
};
})
|