{"_id":"@dynatrace-oss/dt-eval-lib","_rev":"11-f20d7afeaa9f21f6878e613f661feb5f","name":"@dynatrace-oss/dt-eval-lib","dist-tags":{"alpha1":"0.0.1-alpha1","alpha":"0.0.13-alpha","latest":"0.0.19-alpha"},"versions":{"0.0.1-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.1-alpha","license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.1-alpha","maintainers":[{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"},{"name":"krisdyna","email":"kristof.muhi@dynatrace.com"},{"name":"christian-kreuzberger-dtx","email":"christian.kreuzberger@dynatrace.com"},{"name":"stefan.wolfsteiner.dynatrace","email":"stefan.wolfsteiner@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"6a1578838c4873ab55dc8b484119ff40159375a2","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.1-alpha.tgz","fileCount":15,"integrity":"sha512-fLcqrPH7oTDDjiWdW4K2HXZ6Q43YbPMgZxJd31xHf417NInONlUV1JH2U1aUbe3289Mo/EmO48Lv+fnS+K416Q==","signatures":[{"sig":"MEYCIQDjf1AcL9FbFEpDHQn2pUW+iHjyleHzQO+eBUwQg48UzAIhAL6hBiF4ROUiJExr+dMTE1PxYpS1AiWBFVJw9ZMGfItJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123536},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"9906eaf6e99c2bab5769675554cf962d2c8c2b34","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","format:check":"biome format src tests"},"_npmUser":{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"10.9.2","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0"},"peerDependencies":{"openai":"^4.73.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.1-alpha_1776350526185_0.8056603727943197","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha1":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.1-alpha1","license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.1-alpha1","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"22736591ffc6076abbe750092c067face7d3209c","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.1-alpha1.tgz","fileCount":15,"integrity":"sha512-iln6XItXUXMneFppcuYKejyDA0+ySRravcC9XdViQwb/Pu6xR9pEk3o2og0RSiWgowxErdDEzzI1251Ruv6Z9g==","signatures":[{"sig":"MEUCIHAPE6Q4SVucfYv0cuPer3mFLMtBgmo7L1vNm3nFqGk6AiEAjiH5zV0b6pcIw+Gq4RDwaHlCRTKuCa5RO9DKd8sFtCQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123537},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"9906eaf6e99c2bab5769675554cf962d2c8c2b34","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","format:check":"biome format src tests"},"_npmUser":{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"10.9.2","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"22.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.21.0","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0"},"peerDependencies":{"openai":"^4.73.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.1-alpha1_1776352260080_0.9595850203630247","host":"s3://npm-registry-packages-npm-production"}},"0.0.11-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.11-alpha","keywords":["LLM","AI","evaluation","prompts","experimentation"],"license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.11-alpha","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"c59e69582e5fb01aa275ffc383b9beef6c89d2c5","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.11-alpha.tgz","fileCount":15,"integrity":"sha512-4TAHoI4wasKvoUeIGqrAkQH+81SxL2dRoIOXOneTzEthvK8BXQxNMVq2OlWsmfBRAb8dszTlORutWzZ8HjO9KA==","signatures":[{"sig":"MEUCIQCqKRru9FGQyptwQblyxqUqCjvWwuDSm8wal+7gILH1nwIgeuR5NCcnrevnXjxk2NpL2wZG4qzgqcoXCPE235Y4k3A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123634},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5d63f16651a7d6bc18ca71dd4e73a093df2bf859","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","format:check":"biome format src tests"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1e5f23d5-a697-45ba-a6a6-0a3205cd63a2"}},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"11.11.0","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.21.0","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0"},"peerDependencies":{"openai":"^4.73.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.11-alpha_1776419596638_0.5794212827772558","host":"s3://npm-registry-packages-npm-production"}},"0.0.12-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.12-alpha","keywords":["LLM","AI","evaluation","prompts","experimentation"],"license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.12-alpha","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"cf371310cb91a6f6f9d4f177d40c1f627baf486d","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.12-alpha.tgz","fileCount":19,"integrity":"sha512-MK75Ayy+/iR5c2/sqBTA4RrnSxTPsNA4gCDBeHgU8Oka2L24d/KiQfE0UtuiUWVBAs/OkV2fXHfWBDxBUAqCIQ==","signatures":[{"sig":"MEUCIFKXJOX/2P6EEeBv4HxJQB/ch/Fi9JbiA+vAGIMX2BIEAiEAxpa2DfnCk47M4pLZkZ3FH/tRK2e6JF0Bfee53dVMUrA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":141886},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"621324c20cdd8408cd495648a078ad49ee0cecf4","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","e2e:azure":"tsx _temp_tests/azure-openai-e2e.ts","e2e:vertex":"tsx _temp_tests/vertex-e2e.ts","e2e:bedrock":"tsx _temp_tests/bedrock-e2e.ts","format:check":"biome format src tests"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1e5f23d5-a697-45ba-a6a6-0a3205cd63a2"}},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"11.11.0","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.21.0","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.1031.0"},"peerDependencies":{"openai":"^4.73.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.0.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.12-alpha_1776693428992_0.9338865151365403","host":"s3://npm-registry-packages-npm-production"}},"0.0.13-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.13-alpha","keywords":["LLM","AI","evaluation","prompts","experimentation"],"license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.13-alpha","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"1e7b0e9e48699188a682c5cbdcfbb1e8469eaf19","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.13-alpha.tgz","fileCount":19,"integrity":"sha512-7KsSb96oY5H2L/0HrEo1zXt6k6OQgsT9T/F28mJHmpAV0dRk1eOHehcWoBD+wQGxU9d9qdRnN4Kp5+o3bTC3WQ==","signatures":[{"sig":"MEUCIQDtDiKvhtqzYqs7ZgGYsPaYbZF8K6jXPsW1J36AgMC31QIgC0ccV69jj/BhU7LwdawgBEmI/xicAkeeig9QUXP8U2Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":148684},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"cbaa51fe5f1df5f0532c1d424b69174dc9120cbe","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","e2e:azure":"tsx _temp_tests/azure-openai-e2e.ts","e2e:vertex":"tsx _temp_tests/vertex-e2e.ts","e2e:bedrock":"tsx _temp_tests/bedrock-e2e.ts","format:check":"biome format src tests"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1e5f23d5-a697-45ba-a6a6-0a3205cd63a2"}},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"11.11.0","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.21.0","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.1031.0"},"peerDependencies":{"openai":"^4.73.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.0.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.13-alpha_1778596749048_0.5459284001431202","host":"s3://npm-registry-packages-npm-production"}},"0.0.14-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.14-alpha","keywords":["LLM","AI","evaluation","prompts","experimentation"],"license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.14-alpha","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"da2ed810fbe0fe0d3573ba8e44a5d2a21140d5e1","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.14-alpha.tgz","fileCount":19,"integrity":"sha512-/w2otxiPKpMB+iqmzS1+UzeCA3X1iNCpX5+NzqFssLyDqu+lY+TvlvbfuO0Ton3+xTjofgyEkVSqA0czOc6GxQ==","signatures":[{"sig":"MEUCIF3Ds2HlIVPLQvZL878cMF+ogVL2ljyCpcavMXT4AxOsAiEAn47onGF0EYAMZsqTLeZSaOY21yHDhGldG8yp0X86Cpc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dynatrace-oss%2fdt-eval-lib@0.0.14-alpha","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":162297},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"f00afa508b0ce655c91074a0439b5bc5a71978da","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","e2e:azure":"tsx _temp_tests/azure-openai-e2e.ts","e2e:vertex":"tsx _temp_tests/vertex-e2e.ts","e2e:bedrock":"tsx _temp_tests/bedrock-e2e.ts","format:check":"biome format src tests"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1e5f23d5-a697-45ba-a6a6-0a3205cd63a2"}},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"11.16.0","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.1031.0"},"peerDependencies":{"openai":"^4.73.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.0.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.14-alpha_1784724159937_0.39927500528977466","host":"s3://npm-registry-packages-npm-production"}},"0.0.15-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.15-alpha","keywords":["LLM","AI","evaluation","prompts","experimentation"],"license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.15-alpha","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"bbafd22bd5932676341d4701fac02dd34e925e69","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.15-alpha.tgz","fileCount":19,"integrity":"sha512-ow5qBNwWlrvi26/bOGiCyJGZ+mYAhWOy07OZzr6H9n44t+h9lsVK2l4rkaoWT1eW3D8P0j+z8NQE5JKxDJPcwg==","signatures":[{"sig":"MEUCIQC8rGA6cwyQq0Iz2IwcB9QvHG28Uso/xBv0HPyx/gVmEwIgbFtq491BJlYyK6hSA5x7pyKOv3kMgVlnBE6HVgpaRgM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dynatrace-oss%2fdt-eval-lib@0.0.15-alpha","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":163691},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"cc3084669a0b4964460a1ec19d7351ba46d7fc11","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","e2e:azure":"tsx _temp_tests/azure-openai-e2e.ts","e2e:vertex":"tsx _temp_tests/vertex-e2e.ts","e2e:bedrock":"tsx _temp_tests/bedrock-e2e.ts","format:check":"biome format src tests"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1e5f23d5-a697-45ba-a6a6-0a3205cd63a2"}},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"11.16.0","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.1031.0"},"peerDependencies":{"openai":"^4.73.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.0.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.15-alpha_1784901742888_0.3333904089935389","host":"s3://npm-registry-packages-npm-production"}},"0.0.16-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.16-alpha","keywords":["LLM","AI","evaluation","prompts","experimentation"],"license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.16-alpha","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"24e18bc45b77ec616fd59521fc8b4bb4a75e1426","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.16-alpha.tgz","fileCount":19,"integrity":"sha512-MmxGIBE+qNNI03iV8LrI2toob9EHdOYTFjxj/Y2CLfVp/B3YsJvjrCCb4i0xr61YPUuNSIl03Ne6r0iWnSG4JA==","signatures":[{"sig":"MEUCICKVv7Lkc/rKL4ygOvPDwGx/r40MhqzFJwPaFyA2DeyJAiEAu4lNr+as2zPW4SqoKGOMqxXj5uE+vKV6RU18j1aIHmY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dynatrace-oss%2fdt-eval-lib@0.0.16-alpha","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":163739},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4d47a96a2a72f8839ff7a33d7a125c37f5b025db","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","e2e:azure":"tsx _temp_tests/azure-openai-e2e.ts","e2e:vertex":"tsx _temp_tests/vertex-e2e.ts","e2e:bedrock":"tsx _temp_tests/bedrock-e2e.ts","format:check":"biome format src tests"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1e5f23d5-a697-45ba-a6a6-0a3205cd63a2"}},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"11.17.0","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.12","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.1031.0"},"peerDependencies":{"openai":"^4.73.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.0.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.16-alpha_1786708226440_0.36807139583948434","host":"s3://npm-registry-packages-npm-production"}},"0.0.17-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.17-alpha","keywords":["LLM","AI","evaluation","prompts","experimentation"],"license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.17-alpha","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"491ccc9014250448d7a55f2242c87271704a24da","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.17-alpha.tgz","fileCount":19,"integrity":"sha512-nzrhovZhs8m7pTcSjYHCWlsh8Ixc3iNCFCcSzfkGz/FhrG4AJLSlFd3W2YyX/AztRWNIN0Ryrl80ivtCOANWnw==","signatures":[{"sig":"MEQCIGEbWMqgXOr7vFUoNjy5+AzMgoaB7fx7TBLXJBLxjFhBAiAmr62EafClBt2GGBbowgXFck1XGVJ3inze7kQjsdqDjA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dynatrace-oss%2fdt-eval-lib@0.0.17-alpha","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196272},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"f62f79d2f0b93bfdf52370515dedb24a1c251df0","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","e2e:azure":"tsx _temp_tests/azure-openai-e2e.ts","e2e:vertex":"tsx _temp_tests/vertex-e2e.ts","e2e:bedrock":"tsx _temp_tests/bedrock-e2e.ts","format:check":"biome format src tests"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1e5f23d5-a697-45ba-a6a6-0a3205cd63a2"}},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"11.17.0","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","tsx":"^4.23.12","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","recheck":"^4.5.0","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.1031.0"},"peerDependencies":{"ajv":"^8.0.0","openai":"^4.73.0","recheck":"^4.0.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.0.0"},"peerDependenciesMeta":{"ajv":{"optional":true},"openai":{"optional":true},"recheck":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.17-alpha_1787230615388_0.029603320956839818","host":"s3://npm-registry-packages-npm-production"}},"0.0.18-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.18-alpha","keywords":["LLM","AI","evaluation","prompts","experimentation"],"license":"Apache-2.0","_id":"@dynatrace-oss/dt-eval-lib@0.0.18-alpha","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"dist":{"shasum":"40e96969f2b2fc7178f28f004e72056e37fb885e","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.18-alpha.tgz","fileCount":19,"integrity":"sha512-GkSn9XRo3xhEPTqhUX3ZncWSHi4H8iIP7vSkVMLrOEXHYDwcAOgvjiKjg+K2X/2i4ovtzN2S8bj3jq9i3kVk+A==","signatures":[{"sig":"MEUCIEP56U57noMQZlaCxdLEeuh0Fboy0d03hgAgi1o4ivdiAiEAzP6wCa8UZ6uCLpxIJihJswQOkkBCQhhe8rAHbCQFylo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dynatrace-oss%2fdt-eval-lib@0.0.18-alpha","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":197017},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"84f5ba0b65052a48d4ba48f2207a09a1f8d6b54f","scripts":{"lint":"biome check src tests","test":"vitest run","build":"tsup","format":"biome format --write src tests","lint:fix":"biome check --write src tests","e2e:azure":"tsx _temp_tests/azure-openai-e2e.ts","e2e:vertex":"tsx _temp_tests/vertex-e2e.ts","e2e:bedrock":"tsx _temp_tests/bedrock-e2e.ts","format:check":"biome format src tests"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1e5f23d5-a697-45ba-a6a6-0a3205cd63a2"}},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dynatrace-oss/dt-evals.git","type":"git"},"_npmVersion":"11.17.0","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","tsx":"^4.23.12","tsup":"^8.3.0","dotenv":"^17.3.1","openai":"^4.73.0","vitest":"^4.1.4","recheck":"^4.5.0","typescript":"^5.7.0","@google/genai":"^1.0.0","@biomejs/biome":"2.4.9","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.1031.0"},"peerDependencies":{"ajv":"^8.0.0","openai":"^4.73.0","recheck":"^4.0.0","@google/genai":"^1.0.0","@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.0.0"},"peerDependenciesMeta":{"ajv":{"optional":true},"openai":{"optional":true},"recheck":{"optional":true},"@google/genai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dt-eval-lib_0.0.18-alpha_1788256645208_0.9167151224938719","host":"s3://npm-registry-packages-npm-production"}},"0.0.19-alpha":{"name":"@dynatrace-oss/dt-eval-lib","version":"0.0.19-alpha","type":"module","description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"scripts":{"build":"tsup","test":"vitest run","lint":"biome check src tests","lint:fix":"biome check --write src tests","format":"biome format --write src tests","format:check":"biome format src tests","e2e:azure":"tsx _temp_tests/azure-openai-e2e.ts","e2e:bedrock":"tsx _temp_tests/bedrock-e2e.ts","e2e:vertex":"tsx _temp_tests/vertex-e2e.ts"},"engines":{"node":">=20"},"keywords":["LLM","AI","evaluation","prompts","experimentation"],"homepage":"https://github.com/dynatrace-oss/dt-evals#readme","bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"repository":{"type":"git","url":"git+https://github.com/dynatrace-oss/dt-evals.git"},"license":"Apache-2.0","peerDependencies":{"@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.0.0","@google/genai":"^1.0.0","ajv":"^8.0.0","openai":"^4.73.0","recheck":"^4.0.0"},"peerDependenciesMeta":{"openai":{"optional":true},"@anthropic-ai/sdk":{"optional":true},"@aws-sdk/client-bedrock-runtime":{"optional":true},"@google/genai":{"optional":true},"ajv":{"optional":true},"recheck":{"optional":true}},"devDependencies":{"@anthropic-ai/sdk":"^0.32.0","@aws-sdk/client-bedrock-runtime":"^3.1031.0","@biomejs/biome":"2.4.9","@google/genai":"^1.0.0","ajv":"^8.17.1","dotenv":"^17.3.1","openai":"^4.73.0","recheck":"^4.5.0","tsup":"^8.3.0","tsx":"^4.23.12","typescript":"^5.7.0","vitest":"^4.1.4"},"sideEffects":false,"overrides":{"esbuild":"^0.28.1"},"gitHead":"22e6f126c305b27d2c21e4e90b1bed89abe261b9","_id":"@dynatrace-oss/dt-eval-lib@0.0.19-alpha","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-KoUoSsM/uJPify0U7AoX3Zm2EM+S4J1F3WstE/cRD14grzj1EAsdbMOdHx84M7HDVvw/Y2iUmoklMkXFtEgalQ==","shasum":"a8c32bebbcf6e5788eff4341a18320d13f5497cf","tarball":"https://registry.npmjs.org/@dynatrace-oss/dt-eval-lib/-/dt-eval-lib-0.0.19-alpha.tgz","fileCount":19,"unpackedSize":202873,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dynatrace-oss%2fdt-eval-lib@0.0.19-alpha","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCzDTCgbsJZKLOE0pXRbf8tKAwnrCDpXVvC1kzUCpnXMQIgYZ9SzMbtSklk2wTrTO9L1Gbv3Wa2CBwnB8UiOsSA5GM="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1e5f23d5-a697-45ba-a6a6-0a3205cd63a2"}},"directories":{},"maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dt-eval-lib_0.0.19-alpha_1788268883746_0.9992554038373749"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-16T14:42:06.082Z","modified":"2026-09-01T13:21:24.343Z","0.0.1-alpha":"2026-04-16T14:42:06.348Z","0.0.1-alpha1":"2026-04-16T15:11:00.246Z","0.0.11-alpha":"2026-04-17T09:53:16.782Z","0.0.12-alpha":"2026-04-20T13:57:09.133Z","0.0.13-alpha":"2026-05-12T14:39:09.275Z","0.0.14-alpha":"2026-07-22T12:42:40.127Z","0.0.15-alpha":"2026-07-24T14:02:23.063Z","0.0.16-alpha":"2026-08-14T11:50:26.569Z","0.0.17-alpha":"2026-08-20T12:56:55.533Z","0.0.18-alpha":"2026-09-01T09:57:25.345Z","0.0.19-alpha":"2026-09-01T13:21:23.886Z"},"bugs":{"url":"https://github.com/dynatrace-oss/dt-evals/issues"},"license":"Apache-2.0","homepage":"https://github.com/dynatrace-oss/dt-evals#readme","keywords":["LLM","AI","evaluation","prompts","experimentation"],"repository":{"type":"git","url":"git+https://github.com/dynatrace-oss/dt-evals.git"},"description":"Minimal TypeScript library for running LLM-as-a-judge evaluations","maintainers":[{"name":"thisthatdc","email":"this_that@hotmail.it"},{"name":"dynatrace-nodejs","email":"nodejs@dynatrace.com"}],"readme":"# dt-eval-lib\n\n[![npm version](https://img.shields.io/npm/v/@dynatrace-oss/dt-eval-lib/alpha?style=flat-square&label=npm&color=cb3837)](https://www.npmjs.com/package/@dynatrace-oss/dt-eval-lib)\n[![npm downloads](https://img.shields.io/npm/dm/@dynatrace-oss/dt-eval-lib?style=flat-square&color=cb3837)](https://www.npmjs.com/package/@dynatrace-oss/dt-eval-lib)\n[![Build](https://github.com/dynatrace-oss/dt-evals/actions/workflows/ci-lib.yml/badge.svg?branch=main)](https://github.com/dynatrace-oss/dt-evals/actions/workflows/ci-lib.yml)\n[![License](https://img.shields.io/badge/license-Apache_2.0-blue?style=flat-square)](../LICENSE)\n\nMinimal TypeScript library for running LLM-as-a-judge evaluations.\n\n## Install\n\n```bash\nnpm install @dynatrace-oss/dt-eval-lib\n```\n\nThen install the peer dependency for your provider:\n\n| Provider | Peer dependency |\n|----------|-----------------|\n| `openai`, `azure-openai` | `npm install openai` |\n| `anthropic` | `npm install @anthropic-ai/sdk` |\n| `vertex`, `gemini` | `npm install @google/genai` |\n| `bedrock` | `npm install @aws-sdk/client-bedrock-runtime` |\n\n## Build\n\n```bash\nnpm run build\n```\n\n## Test\n\n```bash\nnpm test\n```\n\n## Quick Usage\n\n```ts\nimport { evaluate, BuiltInMetric } from \"@dynatrace-oss/dt-eval-lib\";\n\nconst result = await evaluate(\n  BuiltInMetric.Toxicity,\n  {\n    input: \"Tell me a joke\",\n    output: \"Why did the chicken cross the road? To get to the other side!\",\n  },\n  {\n    provider: {\n      provider: \"openai\",\n      apiKey: \"sk-...\",\n    },\n  },\n);\n\nconsole.log(result.score);       // { value: 1, label: \"pass\" }\nconsole.log(result.explanation); // { summary: \"...\", reasoning: \"...\" }\n```\n\n## Available Metrics\n\nAll built-in metrics return a **continuous** score in `[0.0, 1.0]`. The score is labeled `\"pass\"` when `value >= threshold` and `\"fail\"` otherwise. Every built-in metric defaults to `threshold: 0.5` — override it per-call via `EvalConfig.scoring.thresholdOverride`. Source of truth: [`src/prompts/catalog-data.ts`](src/prompts/catalog-data.ts).\n\n| Metric | Enum | Score range | Fields used from `EvalInput` |\n|--------|------|-------------|-------------------------------|\n| `answer-completeness` | `BuiltInMetric.AnswerCompleteness` | 0.0 – 1.0 | `input`, `output` |\n| `bias` | `BuiltInMetric.Bias` | 0.0 – 1.0 | `input`, `output` |\n| `conciseness` | `BuiltInMetric.Conciseness` | 0.0 – 1.0 | `input`, `output` |\n| `context-relevance` | `BuiltInMetric.ContextRelevance` | 0.0 – 1.0 | `input` |\n| `factual-accuracy` | `BuiltInMetric.FactualAccuracy` | 0.0 – 1.0 | `input`, `output` |\n| `faithfulness` | `BuiltInMetric.Faithfulness` | 0.0 – 1.0 | `input`, `output` |\n| `fluency` | `BuiltInMetric.Fluency` | 0.0 – 1.0 | `input`, `output` |\n| `hallucination` | `BuiltInMetric.Hallucination` | 0.0 – 1.0 | `input`, `output` |\n| `output-prompt-injection` | `BuiltInMetric.OutputPromptInjection` | 0.0 – 1.0 | `output` |\n| `pii-leakage` | `BuiltInMetric.PiiLeakage` | 0.0 – 1.0 | `input`, `output` |\n| `prompt-injection` | `BuiltInMetric.PromptInjection` | 0.0 – 1.0 | `input` |\n| `relevance` | `BuiltInMetric.Relevance` | 0.0 – 1.0 | `input`, `output` |\n| `summarization-quality` | `BuiltInMetric.SummarizationQuality` | 0.0 – 1.0 | `input`, `output` |\n| `toxicity` | `BuiltInMetric.Toxicity` | 0.0 – 1.0 | `output` |\n| `user-frustration` | `BuiltInMetric.UserFrustration` | 0.0 – 1.0 | `input` |\n\n> **Note:** The \"Fields used\" column lists which fields the metric prompt actually reads. `EvalInput.output` is required at the TypeScript type level for all calls — pass `output: \"\"` for metrics that only use `input`.\n\n## Providers\n\nSupports **OpenAI**, **Anthropic**, **Azure OpenAI**, **Google Gemini Enterprise Platform (Vertex AI)**, and **Amazon Bedrock**. Configure via explicit options in code or environment variables.\n\n### Environment Variables\n\n```bash\n# OpenAI\nOPENAI_API_KEY=sk-...\nOPENAI_BASE_URL=https://your-proxy.example.com/v1  # optional\n\n# Anthropic\nANTHROPIC_API_KEY=sk-ant-...\nANTHROPIC_BASE_URL=https://your-proxy.example.com  # optional\n\n# Azure OpenAI (all three required)\nAZURE_OPENAI_API_KEY=...\nAZURE_OPENAI_ENDPOINT=https://<resource>.openai.azure.com\nAZURE_OPENAI_API_VERSION=2024-02-01\n\n# Google Gemini Enterprise Platform (Vertex AI) — ADC path (no API key needed)\nGOOGLE_CLOUD_PROJECT=my-gcp-project\nGOOGLE_CLOUD_LOCATION=us-central1  # optional, defaults to \"global\"\n\n# Google Gemini Enterprise Platform (Vertex AI) — API key path\nGOOGLE_API_KEY=AIza...\n\n# Amazon Bedrock — static credentials (optional if using IAM roles / SSO)\nAWS_ACCESS_KEY_ID=...\nAWS_SECRET_ACCESS_KEY=...\nAWS_DEFAULT_REGION=us-east-1  # optional, defaults to \"us-east-1\"\n```\n\nConfig is resolved in this order for each option:\n\n1. Explicit value in `provider` options\n2. Environment variable\n\n### Google Gemini Enterprise Platform (Vertex AI) Setup\n\nUse Application Default Credentials (ADC) with provider ID `vertex` when running on GKE or Cloud Run with Workload Identity, or pass `apiKey` with provider ID `gemini` for key-based auth.\n\n### Azure OpenAI Setup\n\nAll four fields are required — `model` is your Azure deployment name, which is user-defined and has no default.\n\n```ts\nawait evaluate(BuiltInMetric.Toxicity, input, {\n  provider: {\n    provider: \"azure-openai\",\n    apiKey: \"...\",                                    // or AZURE_OPENAI_API_KEY\n    baseUrl: \"https://<resource>.openai.azure.com\",  // or AZURE_OPENAI_ENDPOINT\n    apiVersion: \"2024-02-01\",                         // or AZURE_OPENAI_API_VERSION\n    model: \"my-gpt4-deployment\",                      // your deployment name\n  },\n});\n```\n\n### Amazon Bedrock Setup\n\nUses the AWS SDK credential chain — IAM roles, SSO, and `AWS_PROFILE` are all resolved automatically. Static credentials are only needed if you can't use role-based auth.\n\n> **Note:** Google provider IDs `vertex` and `gemini` both use the `@google/genai` SDK; `azure-openai` and `openai` both use the `openai` SDK.\n\n## Metric Identification\n\nMetrics are identified by the `BuiltInMetric` enum. You can also pass a custom `PromptDefinition` object directly:\n\n```ts\nimport { evaluate, BuiltInMetric } from \"@dynatrace-oss/dt-eval-lib\";\n\nawait evaluate(BuiltInMetric.Toxicity, input, config);   // built-in metric via enum\nawait evaluate(myCustomPrompt, input, config);             // custom PromptDefinition object\n```\n\nUse `listPrompts()` and `getPrompt()` to discover available metrics:\n\n```ts\nimport { listPrompts, getPrompt, BuiltInMetric } from \"@dynatrace-oss/dt-eval-lib\";\n\nconst all = listPrompts();                        // all 15 built-in metrics\nconst tox = getPrompt(BuiltInMetric.Toxicity);    // single metric by ID\n```\n\n## Configuration\n\n```ts\nimport type { EvalConfig, EvalInput } from \"@dynatrace-oss/dt-eval-lib\";\n\n// What you pass to evaluate()\nconst input: EvalInput = {\n  input: \"What is the capital of France?\",    // required — the user query\n  output: \"The capital of France is Paris.\",  // required — the LLM response to evaluate\n  context: \"...\",                              // optional — retrieved documents (RAG)\n  expectedOutput: \"...\",                       // optional — reference answer\n};\n\n// How to run the evaluation\nconst config: EvalConfig = {\n  provider: {\n    provider: \"openai\",  // \"openai\" | \"anthropic\" | \"azure-openai\" | \"vertex\" | \"gemini\" | \"bedrock\"\n    apiKey: \"sk-...\",    // optional if env var is set\n    baseUrl: \"https://\", // optional — openai and anthropic only\n    model: \"...\",        // optional — see src/engine/providers/index.ts for per-provider defaults\n    timeout: 30000,      // optional — request timeout in ms (default: 30000)\n    maxRetries: 2,       // optional — retries on transient errors (default: 2)\n  },\n  scoring: {\n    thresholdOverride: 0.8, // optional — override the metric's pass threshold (default: 0.5)\n  },\n};\n```\n","readmeFilename":"README.md"}