Skip to content
ai-supply.store
DiscoverCategoriesLeaderboardsCommunityAgent APIFAQ
Sign inSign up free
catalog / DevOps & Infra / DeepEval
△EvalDevOps & InfraFree

DeepEval

Apache-2.0 LLM testing framework — pytest-style unit tests for RAG pipelines, chatbots, and LLM outputs.

@ai-supply
Installs80k
⟳ upstream v4.1.3 · updated 14d ago
↗ Source repository
← More DevOps & InfraDevOps & Infra leaderboard →How we grade security →Source ↗
! Grade B · 75/100 · ReviewSecurity assessment
✓No compromise signals30capabilities surfaced1known CVE4of 20 OWASP controls clear
Broad capability surfacePotentially unbounded loopBroad capability surfacenpm install-lifecycle script
scanned 19h ago·osv · gitleaks · opengrep · picklescan + heuristics·full breakdown in the Security tab ↓

DeepEval

DeepEval is an open-source LLM evaluation framework that brings software-testing discipline to AI systems. Written for Python and styled after pytest, it lets teams write unit tests for LLM outputs, RAG pipelines, and chatbot quality — with 14+ built-in metrics including G-Eval, RAGAS-style faithfulness, answer relevancy, hallucination detection, and toxicity.

Key features

  • 14+ built-in metrics: G-Eval, answer relevancy, faithfulness, contextual precision/recall, hallucination, toxicity, bias, summarization
  • pytest integration — assert LLM outputs like code
  • RAG-aware: test retrieval quality, context relevancy, and generation faithfulness in one suite
  • CI/CD ready with JUnit XML output and GitHub Actions support
  • Apache-2.0 license — commercial use fully permitted

Quick start

pip install deepeval
import pytest
from deepeval import assert_test
from deepeval.test_case import LLMTestCase
from deepeval.metrics import AnswerRelevancyMetric

def test_answer_relevancy():
    test_case = LLMTestCase(
        input="What is RAG?",
        actual_output="RAG stands for Retrieval-Augmented Generation.",
        retrieval_context=["RAG is a technique that enhances LLM outputs with retrieved documents."]
    )
    metric = AnswerRelevancyMetric(threshold=0.7)
    assert_test(test_case, [metric])
# Run your LLM test suite
deepevals test run test_llm.py

Install via ai-supply

npx ai-supply add deepeval-llm-testing

Curated mirror of the open-source DeepEval (Apache-2.0). Get it from the source.

Rating rank
#1
of 23 in DevOps & Infra
Install rank
#12
of 23 in DevOps & Infra
Security score
75/100 · B
review
Security rank
#15
of 23 in DevOps & Infra
Installs
80k
cat avg 212k
This listing vs category average
Installs
this
cat avg
Security (of 100)
this
cat avg
Adoption trend
See the DevOps & Infra leaderboard →
! Security: Review · 7575/100 · grade Bscanned 19h ago
✓ no compromise signals31 risk-surface · 11/20 OWASP controls flagged

Compromise signals — malicious or tampered code (leaked secrets, backdoors, a dropped executable) — reduce the score, and known dependency CVEs carry a bounded penalty (they warrant review but never QUARANTINE — update the dependency to clear). Other dangerous-by-capability traits are risk surface, expected for some capabilities. Every finding is mapped to its OWASP control below.

Control card · high confidence (static)
framework: deepevalframework: pytestframework: ragasframework: guardrails-aicovers: secrets-leakcovers: toxicitycovers: biascovers: hallucinationcovers: pii
validate_categorysoftwaretest_casecheck_for_updateOptionalvalidate_inputevaluate

Findings mapped to the OWASP Top 10 for LLM Applications (2025) and the OWASP Machine Learning Security Top 10. Expand any flagged control for the exact findings — compromise reduces the score; expected/risk-surface do not, except a known CVE, which carries a small bounded penalty (high/critical → Review).

OWASP Top 10 for LLM Applications
⚠LLM03Supply Chaincritical
Vulnerable/compromised dependencies, models or archives in the artifact.
•Dependency manifest — 26 npm dependencies declared · confident-ai-deepeval-6cf2e02/docs/package.jsonrisk surface
•npm install-lifecycle script — postinstall run on install — executes arbitrary code · confident-ai-deepeval-6cf2e02/docs/package.json (CWE-506)risk surface
•Vulnerable dependencies — 505 known vulnerabilities in: aiohttp@3.13.3, authlib@1.6.7, banks@2.4.0, black@25.11.0, black@25.12.0, chromadb@1.5.7, click@8.1.8, click@8.3.1 (CWE-1395)known CVE · -25 pts
⚠LLM01Prompt Injectionhigh
Adversarial instructions embedded in an artifact that hijack a downstream LLM.
•Prompt-injection phrasing — instruction-subversion language detected · confident-ai-deepeval-6cf2e02/docs/content/blog/eval-driven-development.mdx (CWE-77)expected
⚠LLM02Sensitive Information Disclosurehigh
Secrets, credentials or PII shipped inside the artifact.
•Email addresses present — contains email-like strings · confident-ai-deepeval-6cf2e02/.claude-plugin/marketplace.jsonexpected
•Phone number present — contains phone number-like pattern (E.164 or formatted) · confident-ai-deepeval-6cf2e02/deepeval/inspect/fixtures/test_run_sample.json (CWE-359)expected
•US-SSN-like pattern — matches ###-##-#### · confident-ai-deepeval-6cf2e02/docs/content/docs/(safety)/metrics-pii-leakage.mdx (CWE-359)expected
•Credit-card-like number — a number passes the Luhn checksum · confident-ai-deepeval-6cf2e02/tests/test_core/test_tracing/test_configuration/test_masking_config.py (CWE-359)expected
•Embedded credentials — found: hardcoded credential · confident-ai-deepeval-6cf2e02/tests/test_docs/test_confident/test_integrations/test_crewai.py (CWE-798)expected
•Low-confidence secret match — 1 possible: generic-api-key · confident-ai-deepeval-6cf2e02/typescript/src/telemetry.ts (CWE-798)risk surface
⚠LLM06Excessive Agencyhigh
Over-broad tool/permission surface or unrestricted egress.
•External endpoints declared — 2 distinct host(s) · confident-ai-deepeval-6cf2e02/.claude-plugin/plugin.jsonexpected
•Egress to a private/loopback host — 127.0.0.1 · confident-ai-deepeval-6cf2e02/.env.example (CWE-918)expected
•External endpoints declared — 1 distinct host(s) · confident-ai-deepeval-6cf2e02/.github/ISSUE_TEMPLATE/bug_report.mdexpected
•External endpoints declared — 3 distinct host(s) · confident-ai-deepeval-6cf2e02/.gitignoreexpected
•Broad capability surface — 4 high-impact capability categories referenced — verify least-privilege · confident-ai-deepeval-6cf2e02/.scripts/changelog/generate.py (CWE-272)risk surface
•External endpoints declared — 13 distinct host(s) · confident-ai-deepeval-6cf2e02/README.mdexpected
•External endpoints declared — 5 distinct host(s) · confident-ai-deepeval-6cf2e02/deepeval/benchmarks/bbq/template.pyexpected
•Broad capability surface — 3 high-impact capability categories referenced — verify least-privilege · confident-ai-deepeval-6cf2e02/deepeval/cli/auth/command.py (CWE-272)risk surface
•External endpoints declared — 6 distinct host(s) · confident-ai-deepeval-6cf2e02/deepeval/confident/api.pyexpected
•External endpoints declared — 4 distinct host(s) · confident-ai-deepeval-6cf2e02/docs/README.mdexpected
•External endpoints declared — 8 distinct host(s) · confident-ai-deepeval-6cf2e02/docs/app/layout.tsxexpected
•External endpoints declared — 7 distinct host(s) · confident-ai-deepeval-6cf2e02/docs/content/docs/(use-cases)/getting-started-mcp.mdxexpected
•External endpoints declared — 18 distinct host(s) · confident-ai-deepeval-6cf2e02/docs/public/llms-full.txtexpected
⚠LLM07System Prompt Leakagehigh
Secrets, internal hosts or proprietary logic exposed in shipped prompts.
•Internal host / private infrastructure reference — shipped content references a private IP range or internal-only host · confident-ai-deepeval-6cf2e02/docs/src/components/GithubCtaButton/index.tsx (CWE-200)expected
•Embedded credentials — found: hardcoded credential · confident-ai-deepeval-6cf2e02/tests/test_docs/test_confident/test_integrations/test_crewai.py (CWE-798)expected
•Low-confidence secret match — 1 possible: generic-api-key · confident-ai-deepeval-6cf2e02/typescript/src/telemetry.ts (CWE-798)risk surface
⚠LLM08Vector and Embedding Weaknesseshigh
PII or plaintext source leakage in embedding/vector exports.
Embedding inversion/poisoning is largely runtime; static check covers PII in vector exports.
•Email addresses present — contains email-like strings · confident-ai-deepeval-6cf2e02/.claude-plugin/marketplace.jsonexpected
•Phone number present — contains phone number-like pattern (E.164 or formatted) · confident-ai-deepeval-6cf2e02/deepeval/inspect/fixtures/test_run_sample.json (CWE-359)expected
•US-SSN-like pattern — matches ###-##-#### · confident-ai-deepeval-6cf2e02/docs/content/docs/(safety)/metrics-pii-leakage.mdx (CWE-359)expected
•Credit-card-like number — a number passes the Luhn checksum · confident-ai-deepeval-6cf2e02/tests/test_core/test_tracing/test_configuration/test_masking_config.py (CWE-359)expected
⚠LLM05Improper Output Handlingmedium
Code that pipes model/user output into shell, eval, SQL or paths unsafely.
•Suspicious code patterns — OS command execution · confident-ai-deepeval-6cf2e02/.scripts/changelog/generate.py (CWE-78)expected
•Suspicious code patterns — dynamic code execution · confident-ai-deepeval-6cf2e02/deepeval/benchmarks/human_eval/human_eval.py (CWE-95)expected
•Suspicious code patterns — child_process exec · confident-ai-deepeval-6cf2e02/docs/scripts/build-readme-hero.mjs (CWE-78)expected
⚠LLM10Unbounded Consumptionmedium
Unbounded loops/recursion causing DoS or runaway cost.
Enforced at runtime by the gateway (rate limits + spend caps + size caps); static check flags unbounded loops.
•Potentially unbounded loop — an infinite loop (while True / while(1) / for(;;)) may cause runaway consumption · confident-ai-deepeval-6cf2e02/.scripts/changelog/release_notes.py (CWE-835)risk surface
§LLM09MisinformationGovernance
Artifacts designed to produce false/deceptive output.
Detectable only by runtime behavioral evaluation; addressed via responsible-use attestation.
✓LLM04Data and Model PoisoningPassed
Backdoors/poisoning in training data or serialized models.
Behavioral poisoning needs model execution; static check covers unsafe serialization + dataset skew only.
OWASP Machine Learning Security Top 10
⚠ML06AI Supply Chaincritical
Compromised PyPI/npm packages, typosquats, unsafe serialized models.
•Dependency manifest — 26 npm dependencies declared · confident-ai-deepeval-6cf2e02/docs/package.jsonrisk surface
•npm install-lifecycle script — postinstall run on install — executes arbitrary code · confident-ai-deepeval-6cf2e02/docs/package.json (CWE-506)risk surface
•Vulnerable dependencies — 505 known vulnerabilities in: aiohttp@3.13.3, authlib@1.6.7, banks@2.4.0, black@25.11.0, black@25.12.0, chromadb@1.5.7, click@8.1.8, click@8.3.1 (CWE-1395)known CVE · -25 pts
⚠ML02Data Poisoninghigh
Poisoned training datasets with triggers or anomalous distributions.
Static check covers trigger phrasing, PII and label skew; full poisoning detection is runtime.
•Email addresses present — contains email-like strings · confident-ai-deepeval-6cf2e02/.claude-plugin/marketplace.jsonexpected
•Phone number present — contains phone number-like pattern (E.164 or formatted) · confident-ai-deepeval-6cf2e02/deepeval/inspect/fixtures/test_run_sample.json (CWE-359)expected
•Prompt-injection phrasing — instruction-subversion language detected · confident-ai-deepeval-6cf2e02/docs/content/blog/eval-driven-development.mdx (CWE-77)expected
•US-SSN-like pattern — matches ###-##-#### · confident-ai-deepeval-6cf2e02/docs/content/docs/(safety)/metrics-pii-leakage.mdx (CWE-359)expected
•Credit-card-like number — a number passes the Luhn checksum · confident-ai-deepeval-6cf2e02/tests/test_core/test_tracing/test_configuration/test_masking_config.py (CWE-359)expected
⚠ML09Output Integritymedium
Middleware tampering with model outputs in transit.
Gateway enforces TLS + response integrity; static check flags output-rewriting code.
•Suspicious code patterns — OS command execution · confident-ai-deepeval-6cf2e02/.scripts/changelog/generate.py (CWE-78)expected
•Suspicious code patterns — dynamic code execution · confident-ai-deepeval-6cf2e02/deepeval/benchmarks/human_eval/human_eval.py (CWE-95)expected
•Suspicious code patterns — child_process exec · confident-ai-deepeval-6cf2e02/docs/scripts/build-readme-hero.mjs (CWE-78)expected
§ML01Input Manipulation (Adversarial)Governance
Models vulnerable to adversarial perturbations.
Requires runtime robustness evaluation; addressed via publisher robustness attestation.
§ML03Model InversionGovernance
Training data reconstructable from a model's outputs.
Runtime/evaluation property; addressed via model-card data-provenance + DP attestation.
§ML04Membership InferenceGovernance
Determining whether a record was in the training set.
Runtime/evaluation property; addressed via overfitting disclosure + DP attestation.
§ML08Model SkewingGovernance
Models trained on skewed data producing biased output.
Requires fairness evaluation; addressed via model-card bias/limitations disclosure.
✓ML05Model TheftPassed
Unlicensed re-distribution / license-incompatible derivatives.
Static check verifies license declaration; extraction throttling is runtime.
✓ML07Transfer Learning AttackPassed
Backdoored base models / LoRA adapters propagating to derivatives.
Backdoor detection needs behavioral probing; static check covers unsafe serialization + provenance.
✓ML10Model Poisoning (Weights)Passed
Tampered model weight files; integrity must be verifiable.
Static check enforces safe formats + records a content hash for downstream verification.
Other findings (14) · hygiene / uncategorized
•Suspicious network references — raw IP URL (3 URLs) · confident-ai-deepeval-6cf2e02/.env.exampleexpected
•Unrecognized file type — '.gitignore' is not on the allowlist · confident-ai-deepeval-6cf2e02/.gitignorerisk surface
•Unrecognized file type — '.cff' is not on the allowlist · confident-ai-deepeval-6cf2e02/CITATION.cffrisk surface
•Unrecognized file type — '.in' is not on the allowlist · confident-ai-deepeval-6cf2e02/MANIFEST.inrisk surface
•Suspicious network references — raw IP URL (1 URLs) · confident-ai-deepeval-6cf2e02/deepeval/dataset/test_run_tracer.pyexpected
•Unrecognized file type — '.tcss' is not on the allowlist · confident-ai-deepeval-6cf2e02/deepeval/inspect/styles.tcssrisk surface
•Suspicious network references — suspicious TLD (1 URLs) · confident-ai-deepeval-6cf2e02/deepeval/models/llms/kimi_model.pyexpected
•Unrecognized file type — '.scss' is not on the allowlist · confident-ai-deepeval-6cf2e02/docs/components/language-selector/language-selector.module.scssrisk surface
•Unrecognized file type — '.mdx' is not on the allowlist · confident-ai-deepeval-6cf2e02/docs/content/blog/deepeval-alternatives-compared.mdxrisk surface
•Unrecognized file type — '.mjs' is not on the allowlist · confident-ai-deepeval-6cf2e02/docs/next.config.mjsrisk surface
•Unrecognized file type — '.?' is not on the allowlist · confident-ai-deepeval-6cf2e02/skills/deepeval-otel/LICENSErisk surface
•Suspicious network references — suspicious TLD (2 URLs) · confident-ai-deepeval-6cf2e02/tests/test_core/test_models/test_kimi_model.pyexpected
•Unrecognized file type — '.docx' is not on the allowlist · confident-ai-deepeval-6cf2e02/tests/test_core/test_synthesizer/synthesizer_data/docx_example.docxrisk surface
•Archive disguised as another type — content is a zip but extension is .docx · confident-ai-deepeval-6cf2e02/tests/test_core/test_synthesizer/synthesizer_data/docx_example.docxrisk surface
✔ verified source · pinned confident-ai-deepeval-6cf2e02
Check against a policy

The same gate an agent runs before installing (POST /api/v1/trust/deepeval-llm-testing/check). Click a policy:

Consume DeepEval programmatically. Authenticate with an API key or session — see Authorize an agent.

# Agents: CHECK BEFORE YOU INSTALL (no auth) — score, grade, level, capability manifest
curl https://ai-supply.store/api/v1/trust/deepeval-llm-testing

# Gate against your org policy (returns { pass, violations })
curl -X POST https://ai-supply.store/api/v1/trust/deepeval-llm-testing/check \
  -H "Content-Type: application/json" \
  -d '{"minGrade":"B","denyPermissions":["shell"],"denyUnknownEgress":true}'

# CLI
npx ai-supply add deepeval-llm-testing

# REST (install → download)
curl -X POST https://ai-supply.store/api/v1/listings/deepeval-llm-testing/install \
  -H "Authorization: Bearer $AIM_KEY"

# MCP tool
install_listing({ "slug": "deepeval-llm-testing" })
OpenAPI spec →
vlatest
! Security: Review · 751mo ago

Curated mirror — latest upstream source. See the repository for tagged releases.

Sign in and install this listing to leave a review.

More from @ai-supply

View profile →
◉Agent
MetaGPT
Multi-agent framework that assigns GPT roles (PM, engineer, QA) to solve complex software tasks end-to-end.
↓ 1.0M
⇄Connector
vLLM
High-throughput, memory-efficient LLM inference engine with PagedAttention and continuous batching.
↓ 892k
⇄Connector
Meilisearch
Lightning-fast open-source search engine with typo-tolerance, semantic hybrid search, and sub-50ms response times.
↓ 811k
△Eval
Weights & Biases (wandb)
ML experiment tracking and visualization — log metrics, hyperparameters, models, and media in real time.
↓ 784k
ai-supply.store

Free, security-vetted AI capabilities — skills, MCPs, plugins, agents, datasets and more, each graded and freshness-tracked, and built for humans and agents alike.

api · v3.1status · all green
Contact
support@ai-supply.storesecurity@ai-supply.store
Catalog
  • Discover
  • Categories
  • Leaderboards
  • Benchmarks
  • Security
  • Scan a repo
Community
  • Community
  • FAQ
For agents
  • Quickstart (60s)
  • Authorize an agent
  • Agent API
  • OpenAPI spec
For builders
  • Publish
  • Dashboard
Account
  • Create account
  • Sign in
  • Settings
Legal
  • Terms
  • Publisher Agreement
  • Acceptable Use
  • Privacy