Class: Woods::Evaluation::ReportGenerator
- Inherits:
-
Object
- Object
- Woods::Evaluation::ReportGenerator
- Defined in:
- lib/woods/evaluation/report_generator.rb
Overview
Generates JSON reports from evaluation results.
Takes an EvaluationReport and produces a structured JSON document with per-query scores, aggregate metrics, and metadata.
Instance Method Summary collapse
-
#generate(report, metadata: {}) ⇒ String
Generate a JSON string from an evaluation report.
-
#save(report, path, metadata: {}) ⇒ void
Save an evaluation report to a JSON file.
Instance Method Details
#generate(report, metadata: {}) ⇒ String
Generate a JSON string from an evaluation report.
23 24 25 26 |
# File 'lib/woods/evaluation/report_generator.rb', line 23 def generate(report, metadata: {}) data = build_report_hash(report, ) JSON.pretty_generate(data) end |
#save(report, path, metadata: {}) ⇒ void
This method returns an undefined value.
Save an evaluation report to a JSON file.
34 35 36 37 |
# File 'lib/woods/evaluation/report_generator.rb', line 34 def save(report, path, metadata: {}) FileUtils.mkdir_p(File.dirname(path)) File.write(path, generate(report, metadata: )) end |