Registry / llm-agents / eval-protocol

eval-protocol

JSON →
library0.3.30pypypi✓ verified 81d ago

Official Python SDK for Eval Protocol (EP), an open protocol standardizing how developers author evals for LLM applications. Current version 0.3.29, under active development.

pip install eval-protocol
INSTALL
IMPORT
SIG · EVAL-PROTOCOL
E
eval-protocol
llm-agentspythonv0.3.30
Install
25.8s avg
Import
Disk
271MB
Pass rate
8/ 10
Env Coverage8 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v0.3.30 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
glibc
py 3.10
✓ —
✓ 29.7s
py 3.11
✓ —
✓ 26.8s
py 3.12
✓ —
✓ 23.4s
py 3.13
✓ —
✓ 23.1s
py 3.9
✕ build_error
✕ build_error
271MB installed
● package 271MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

AccountInfo
from eval_protocol import AccountInfo
from eval_protocol import Episode
EvaluateResult
from eval_protocol import EvaluateResult
EvaluationRow
from eval_protocol import EvaluationRow

Creates an eval, logs an episode, runs the eval, and prints the result.

from eval_protocol import EvalClient, Episode, Result import os api_key = os.environ.get('EVAL_PROTOCOL_API_KEY', '') client = EvalClient(api_key=api_key) eval_id = client.create_eval(name='My Quick Eval') episode = Episode(input='What is 2+2?', expected='4') client.log_episode(eval_id=eval_id, episode=episode) result = client.run_eval(eval_id=eval_id) print(result)
eval-protocol --version
Debug
Known issues
breakingSDK version 0.3.x changed the API client initialization. Previously required positional api_key; now requires keyword argument.
fix
Use EvalClient(api_key='your_key') instead of EvalClient('your_key').
affects: >=0.3.0
gotchaThe import module is 'eval_protocol' (with underscore), not 'evalprotocol' or 'eval-protocol'. Hyphen cannot be used in Python imports.
fix
Use 'from eval_protocol import ...'.
affects: all
gotchaEpisode fields 'input' and 'expected' are required; omitting them causes runtime validation errors.
fix
Always provide both 'input' and 'expected' when creating an Episode.
affects: >=0.2.0
Upgrade
Version history
0.3.30latest on PyPI · released May 30, 2026
Audit
Dependencies
pydanticrequiredUsed for data models (Episode, Result, etc.)
httpxrequiredHTTP client for API calls
Agent activity
24 hits · last 30 days
node
22
Amazon
1
OpenAI (training)
1
Resources
eval-protocol — pip install eval-protocol · libregistry