Files
nixpkgs/pkgs/development/python-modules/heretic-llm/default.nix
T
Fabian Affolter 48029ea577 python3Packages.heretic-llm: init at 1.2.0
Tool to remove censorship removal for language models

https://github.com/p-e-w/heretic
2026-03-06 03:09:43 +01:00

91 lines
1.5 KiB
Nix

{
lib,
accelerate,
bitsandbytes,
buildPythonPackage,
datasets,
fetchFromGitHub,
# geom-median,
hf-transfer,
huggingface-hub,
imageio,
kernels,
matplotlib,
numpy,
optuna,
# pacmap,
peft,
psutil,
pydantic-settings,
questionary,
rich,
scikit-learn,
transformers,
uv-build,
}:
buildPythonPackage (finalAttrs: {
pname = "heretic-llm";
version = "1.2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "p-e-w";
repo = "heretic";
tag = "v${finalAttrs.version}";
hash = "sha256-KmqbOAOII1SP7wpdvGxtzQJt5NmlnF/o99NuZ21vO0s=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "uv_build>=0.8.11,<0.9.0" "uv_build"
'';
pythonRelaxDeps = [
"huggingface-hub"
"transformers"
];
build-system = [ uv-build ];
dependencies = [
accelerate
bitsandbytes
datasets
hf-transfer
huggingface-hub
kernels
optuna
peft
psutil
pydantic-settings
questionary
rich
transformers
];
optional-dependencies = {
research = [
# geom-median
imageio
matplotlib
numpy
# pacmap
scikit-learn
];
};
pythonImportsCheck = [ "heretic" ];
meta = {
description = "Tool to remove censorship removal for language models";
homepage = "https://github.com/p-e-w/heretic";
changelog = "https://github.com/p-e-w/heretic/releases/tag/v${finalAttrs.src.tag}";
license = with lib.licenses; [
agpl3Only
agpl3Plus
];
maintainers = with lib.maintainers; [ fab ];
};
})