pub struct BenchmarkRunner { /* private fields */ }Expand description
Main benchmarking coordinator
Implementations§
Source§impl BenchmarkRunner
impl BenchmarkRunner
Sourcepub fn new(config: BenchmarkConfig) -> Self
pub fn new(config: BenchmarkConfig) -> Self
Create a new benchmark runner with simulation mode
Sourcepub fn with_retrieval<F>(&mut self, f: F) -> &mut Self
pub fn with_retrieval<F>(&mut self, f: F) -> &mut Self
Set a custom retrieval function for actual benchmarking
§Example
let mut runner = BenchmarkRunner::new(BenchmarkConfig::default());
runner.with_retrieval(|query| {
// Your retrieval implementation
vec!["doc1".to_string(), "doc2".to_string()]
});Sourcepub fn with_reranker<F>(&mut self, f: F) -> &mut Self
pub fn with_reranker<F>(&mut self, f: F) -> &mut Self
Set a custom reranker function
§Example
let mut runner = BenchmarkRunner::new(BenchmarkConfig::default());
runner.with_reranker(|docs| {
// Your reranking implementation
docs.to_vec()
});Sourcepub fn with_llm<F>(&mut self, f: F) -> &mut Self
pub fn with_llm<F>(&mut self, f: F) -> &mut Self
Set a custom LLM generation function
§Example
let mut runner = BenchmarkRunner::new(BenchmarkConfig::default());
runner.with_llm(|query, context| {
// Your LLM implementation
format!("Generated answer for: {}", query)
});Sourcepub fn run_dataset(&mut self, dataset: &BenchmarkDataset) -> BenchmarkSummary
pub fn run_dataset(&mut self, dataset: &BenchmarkDataset) -> BenchmarkSummary
Run benchmark on a dataset
Sourcepub fn print_summary(&self, summary: &BenchmarkSummary)
pub fn print_summary(&self, summary: &BenchmarkSummary)
Print summary results
Sourcepub fn compare_summaries(
&self,
baseline: &BenchmarkSummary,
improved: &BenchmarkSummary,
)
pub fn compare_summaries( &self, baseline: &BenchmarkSummary, improved: &BenchmarkSummary, )
Compare two benchmark summaries
Auto Trait Implementations§
impl Freeze for BenchmarkRunner
impl !RefUnwindSafe for BenchmarkRunner
impl Send for BenchmarkRunner
impl Sync for BenchmarkRunner
impl Unpin for BenchmarkRunner
impl UnsafeUnpin for BenchmarkRunner
impl !UnwindSafe for BenchmarkRunner
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more