Skip to main content

Installation

Core Functions

init()

Initializes the ZeroEval SDK. Must be called before using any other SDK features.

Parameters

Example

redaction uses camelCase keys in TypeScript:
See PII redaction for scope, placeholder behavior, normalization rules, and examples.

Wrapper Functions

wrap()

Wraps a supported AI client to automatically trace all API calls.

Supported Clients

  • OpenAI SDK (openai package)
  • Vercel AI SDK (ai package)

Examples


Spans API

withSpan()

Wraps a function execution in a span, automatically capturing timing and errors.

SpanOptions

Example

@span Decorator

Decorator for class methods to automatically create spans.

Example

Requires experimentalDecorators: true in your tsconfig.json.

Context Functions

getCurrentSpan()

Returns the currently active span, if any.

getCurrentTrace()

Returns the current trace ID.

getCurrentSession()

Returns the current session ID.

setTag()

Sets tags on a span, trace, or session.

Parameters


Prompts API

prompt()

Creates or fetches versioned prompts from the Prompt Library. Returns decorated content for downstream LLM calls.

PromptOptions

Behavior

  • Auto-optimization (default): If content is provided without from, tries to fetch the latest optimized version first, falls back to provided content
  • Explicit mode (from: "explicit"): Always uses provided content, bypasses auto-optimization
  • Latest mode (from: "latest"): Requires an optimized version to exist, fails if none found
  • Hash mode (from: "<hash>"): Fetches a specific version by its 64-character SHA-256 content hash

Examples

Return Value

Returns a decorated prompt string with metadata header used by integrations:

Errors


sendFeedback()

Sends feedback for a completion to enable prompt optimization.

SendFeedbackOptions

Example


Utility Functions

renderTemplate()

Render a template string with variable substitution.

extractVariables()

Extract variable names from a template string.

sha256Hex()

Compute SHA-256 hash of text.

normalizePromptText()

Normalize prompt text for consistent hashing.

Error Classes

PromptNotFoundError

Thrown when a specific prompt version (by hash) is not found.

PromptRequestError

Thrown when a prompt request fails (e.g., no versions exist for from: "latest").

Types

Prompt

PromptMetadata

Environment Variables

Set before importing ZeroEval to configure default behavior.

Configuration Examples

Production

Development

Need help? Check out our GitHub examples or reach out on Discord.