/eval.ts

Primary LanguageTypeScript

DeepEval TypeScript

This repository hosts the TypeScript implementation of DeepEval, a full-featured LLM evaluation framework. It mirrors the Python capabilities—metrics, benchmarking, integrations, tracing, CLI tooling—while providing a pnpm-based workspace tailored for Node.js environments.

Workspace Overview

  • package.json / pnpm-workspace.yaml: pnpm monorepo configuration.
  • packages/
    • core: evaluation engine, settings, tracing, model adapters, plugins, benchmark runner.
    • metrics: TypeScript ports of DeepEval metrics (faithfulness, hallucination, safety, multimodal, conversational, tool correctness, etc.).
    • cli: Commander-based CLI with parity commands (login, settings, evaluate, serve, test).
    • integrations: helpers for LangChain, CrewAI, LlamaIndex.
    • testing: parity runner, comparison utilities, fixtures.
    • types: shared interfaces (test cases, evaluation results, settings).
  • docs/: TypeScript quickstart and parity guidance.
  • examples/: runnable scripts (evaluation, benchmark).

Quickstart

corepack pnpm install
corepack pnpm test   # run the full vitest suite
pnpm deepeval --help # CLI entry (alias via package bin)

See docs/typescript-quickstart.md for detailed installation, CLI usage, evaluation patterns, benchmarks, and integration snippets.

Cross-Language Parity

Use the parity runner and comparison script in packages/testing/src/ to keep the TypeScript runtime aligned with the upstream Python CLI. CI guidance is documented in docs/parity-sync.md.

License

Released under the same Apache-2.0 license as the Python DeepEval project.