pub struct RewardModel { /* private fields */ }Expand description
Running weighted-average reward per (model, prompt_template) key.
Each new reward is blended with the running average using an exponential
decay factor: avg = decay * avg + (1 - decay) * new_reward.
Implementations§
Source§impl RewardModel
impl RewardModel
Sourcepub fn new(decay: f64) -> Self
pub fn new(decay: f64) -> Self
Create a new model with the given exponential decay factor.
decay must be in (0, 1). A value of 0.9 means older observations
retain 90% of their weight after each update.
Sourcepub fn update(&self, model: &str, template: &str, reward: f64)
pub fn update(&self, model: &str, template: &str, reward: f64)
Update the running average for (model, template) with a new reward.
Trait Implementations§
Source§impl Clone for RewardModel
impl Clone for RewardModel
Source§fn clone(&self) -> RewardModel
fn clone(&self) -> RewardModel
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for RewardModel
impl RefUnwindSafe for RewardModel
impl Send for RewardModel
impl Sync for RewardModel
impl Unpin for RewardModel
impl UnsafeUnpin for RewardModel
impl UnwindSafe for RewardModel
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request