Class: Melaya::EvalsAPI

Inherits:
Object
  • Object
show all
Defined in:
lib/melaya/evals.rb

Overview

Evals API — list and inspect agent evaluation run results.

Maps to /api/v1/private/evals/*.

Examples:

runs    = melaya.evals.list_runs
summary = melaya.evals.summary
detail  = melaya.evals.run_detail(runs.first["id"])

Instance Method Summary collapse

Constructor Details

#initialize(http) ⇒ EvalsAPI

Returns a new instance of EvalsAPI.



13
14
15
# File 'lib/melaya/evals.rb', line 13

def initialize(http)
  @http = http
end

Instance Method Details

#benchmarks(params = {}) ⇒ Object

GET /api/v1/private/evals/benchmarks Get benchmark scores across eval runs.



68
69
70
# File 'lib/melaya/evals.rb', line 68

def benchmarks(params = {})
  @http.get("/api/v1/private/evals/benchmarks", params)
end

#compare(params = {}) ⇒ Object

GET /api/v1/private/evals/compare Compare results across multiple eval runs.

Parameters:

  • params (Hash) (defaults to: {})

    e.g. { "runIds" => "id1,id2" }



39
40
41
# File 'lib/melaya/evals.rb', line 39

def compare(params = {})
  @http.get("/api/v1/private/evals/compare", params)
end

#crew_memory(pipeline:, project:) ⇒ Object

GET /api/v1/private/evals/crew-memory Get agent crew memory for a pipeline.

Parameters:

  • pipeline (String)
  • project (String)


60
61
62
63
64
# File 'lib/melaya/evals.rb', line 60

def crew_memory(pipeline:, project:)
  @http.get("/api/v1/private/evals/crew-memory",
    "pipeline" => pipeline,
    "project"  => project)
end

#list_runs(params = {}) ⇒ Object

GET /api/v1/private/evals/runs List eval run results for the caller's tenant.



19
20
21
# File 'lib/melaya/evals.rb', line 19

def list_runs(params = {})
  @http.get("/api/v1/private/evals/runs", params)
end

#memory_graph(params = {}) ⇒ Object

GET /api/v1/private/evals/memory-graph Get memory graph visualization data for eval runs.



45
46
47
# File 'lib/melaya/evals.rb', line 45

def memory_graph(params = {})
  @http.get("/api/v1/private/evals/memory-graph", params)
end

#run_detail(run_id) ⇒ Object

GET /api/v1/private/evals/runs/:runId Get detailed results for a specific eval run.

Parameters:

  • run_id (String)


32
33
34
# File 'lib/melaya/evals.rb', line 32

def run_detail(run_id)
  @http.get("/api/v1/private/evals/runs/#{enc(run_id)}")
end

#run_memory(run_id) ⇒ Object

GET /api/v1/private/evals/runs/:runId/memory Get memory usage for a specific eval run.

Parameters:

  • run_id (String)


52
53
54
# File 'lib/melaya/evals.rb', line 52

def run_memory(run_id)
  @http.get("/api/v1/private/evals/runs/#{enc(run_id)}/memory")
end

#summaryObject

GET /api/v1/private/evals/summary Get aggregate summary of eval results.



25
26
27
# File 'lib/melaya/evals.rb', line 25

def summary
  @http.get("/api/v1/private/evals/summary")
end