40 lines
1.1 KiB
Nix
40 lines
1.1 KiB
Nix
|
|
{
|
||
|
|
buildNpmPackage,
|
||
|
|
fetchFromGitHub,
|
||
|
|
lib,
|
||
|
|
}:
|
||
|
|
|
||
|
|
buildNpmPackage (finalAttrs: {
|
||
|
|
pname = "promptfoo";
|
||
|
|
version = "0.118.11";
|
||
|
|
|
||
|
|
src = fetchFromGitHub {
|
||
|
|
owner = "promptfoo";
|
||
|
|
repo = "promptfoo";
|
||
|
|
tag = finalAttrs.version;
|
||
|
|
hash = "sha256-py85AvOnge5KAOwsCUVCgwVhbNMn6kqNpQ5w6KA60LM=";
|
||
|
|
};
|
||
|
|
|
||
|
|
npmDepsHash = "sha256-J/wVq10sgLFZiPuiXie3oi2I9uCycyRP/19AQdGLmF4=";
|
||
|
|
|
||
|
|
# don't fetch playwright binary
|
||
|
|
env.PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD = "1";
|
||
|
|
|
||
|
|
# cleanup dangling symlinks for workspaces
|
||
|
|
preFixup = ''
|
||
|
|
rm -rf $out/lib/node_modules/promptfoo/node_modules/app $out/lib/node_modules/promptfoo/node_modules/promptfoo-docs
|
||
|
|
'';
|
||
|
|
|
||
|
|
meta = {
|
||
|
|
description = "Test your prompts, models, RAGs. Evaluate and compare LLM outputs, catch regressions, and improve prompt quality";
|
||
|
|
mainProgram = "promptfoo";
|
||
|
|
homepage = "https://www.promptfoo.dev/";
|
||
|
|
changelog = "https://github.com/promptfoo/promptfoo/releases/tag/${finalAttrs.version}";
|
||
|
|
license = lib.licenses.mit;
|
||
|
|
maintainers = with lib.maintainers; [
|
||
|
|
nathanielbrough
|
||
|
|
jk
|
||
|
|
];
|
||
|
|
};
|
||
|
|
})
|