When to use this
- Score interactions that already live in a spreadsheet, CSV, or database table
- Benchmark past prompts or model versions with new metrics, without rerunning the original generation
- Sync results from an evaluation harness or framework you already use
- Run experiments from a language or runtime where the HoneyHive SDK isn’t available
How an experiment is stored
An experiment run is a set of traced sessions grouped by a sharedrun_id. Each session carries:
Where those metrics come from - a HoneyHive evaluator, a third-party library, or a hand-written function - makes no difference to the dashboard.
Choose your path
Two paths, same three steps (create a run, log each result with your metrics, complete the run):- Python SDK - typed HoneyHive client
- REST API - plain HTTP from any language, no HoneyHive packages
Sync via the Python SDK
TheHoneyHive client wraps the three calls with typed methods: create a run, log each result as a session carrying your precomputed metrics, then complete the run.
metadata.run_id on each session is what links it to the run and rolls its metrics up. Set metadata.datapoint_id too, so cross-run comparison can pair the same test case across runs.evaluate().
Sync via the REST API (no packages)
No HoneyHive packages installed? The same three calls work as plain HTTP requests, from any language or a cURL script.Viewing results
Open Experiments in the dashboard to see your synced run. Each session appears as a row with its inputs, outputs, and metric columns, and you can compare runs to spot improvements and regressions across versions.Next steps
Experiments via API
Full REST endpoint reference for runs, sessions, and events
Client-Side Evaluators
Write scoring functions that run in your environment
Compare Experiments
Identify improvements and regressions across runs
Custom Metrics
Attach scores and guardrail results to any trace

