.eval logs into Docent.
Use this when
Use Inspect ingestion when your source data is already in Inspect.eval format and you want either:
- a pure conversion step that gives you
AgentRunobjects back - a recursive conversion-and-upload workflow for a directory of
.evalfiles
Main helpers
convert_inspect_eval_file_to_agent_runs(file_path)converts one Inspect.evalarchive into a list ofAgentRunobjects.convert_inspect_directory_to_agent_runs(root)recursively finds.evalfiles and returns all converted runs.ingest_inspect_directory(collection_id, fpath, *, upload_agent_run_batch, batch_size=100)batches conversion and upload if you want a lower-level ingestion loop.Docent.recursively_ingest_inspect_logs(collection_id, fpath)is the highest-level client wrapper for recursive ingestion.
Example
To convert a single.eval file:
.eval file under a directory:
More on the conversion process
Each Inspect sample becomes one DocentAgentRun.
How Inspect data is mapped
The converter:- reads archive header metadata such as task and model
- converts each sample’s messages with
parse_chat_message(...) - normalizes sample scores into
agent_run.metadata["scores"] - preserves raw score payloads in
agent_run.metadata["scoring_metadata"] - includes sample-level fields such as
sample_id,epoch, andtargetin run metadata - merges sample metadata on top of header metadata when both are present
Recursive ingestion helper
If you want to control uploads yourself, useingest_inspect_directory(...). It:
- recursively finds
.evalfiles - converts them lazily
- uploads them in batches through your callback
Docent.recursively_ingest_inspect_logs(...) uses internally.
