| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- {
- lib,
- stdenv,
- buildPythonPackage,
- poetry-core,
- mkShell,
- python3Packages,
- gguf-py,
- }@inputs:
- let
- llama-python-deps = with python3Packages; [
- numpy
- sentencepiece
- transformers
- protobuf
- torchWithoutCuda
- gguf-py
- tqdm
- # for scripts/compare-llama-bench.py
- gitpython
- tabulate
- # for examples/pydantic-models-to-grammar-examples.py
- docstring-parser
- pydantic
- ];
- llama-python-test-deps = with python3Packages; [
- # Server bench
- matplotlib
- # server tests
- openai
- pytest
- prometheus-client
- ];
- in
- buildPythonPackage ({
- pname = "llama-scripts";
- version = "0.0.0";
- pyproject = true;
- # NOTE: The files filtered out here are not visible in the build sandbox, neither
- # do they affect the output hash. They can be modified without triggering a rebuild.
- src = lib.cleanSourceWith {
- filter =
- name: type:
- let
- any = builtins.any (x: x);
- baseName = builtins.baseNameOf name;
- in
- any [
- (lib.hasSuffix ".py" name)
- (baseName == "README.md")
- (baseName == "pyproject.toml")
- ];
- src = lib.cleanSource ../../.;
- };
- nativeBuildInputs = [ poetry-core ];
- nativeCheckInputs = llama-python-test-deps;
- dependencies = llama-python-deps;
- })
|