1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 pydantic, 6 interegular, 7 pyyaml, 8 poetry-core, 9}: 10 11buildPythonPackage rec { 12 pname = "lm-format-enforcer"; 13 version = "0.11.3"; 14 pyproject = true; 15 16 src = fetchFromGitHub { 17 owner = "noamgat"; 18 repo = "lm-format-enforcer"; 19 tag = "v${version}"; 20 hash = "sha256-aUZo7Nlk5A9SRyQFFGhy3LAJO29ygRFwNC4WbRuXvYE="; 21 }; 22 23 build-system = [ poetry-core ]; 24 25 dependencies = [ 26 interegular 27 pydantic 28 pyyaml 29 ]; 30 31 doCheck = false; # most tests require internet access 32 33 pythonImportsCheck = [ "lmformatenforcer" ]; 34 35 meta = with lib; { 36 description = "Enforce the output format (JSON Schema, Regex etc) of a language model"; 37 changelog = "https://github.com/noamgat/lm-format-enforcer/releases/tag/${src.tag}"; 38 homepage = "https://github.com/noamgat/lm-format-enforcer"; 39 license = licenses.mit; 40 maintainers = with maintainers; [ cfhammill ]; 41 }; 42}