pub enum Provider {
Anthropic,
OpenAi,
Google,
Local,
}Expand description
Which provider the ladder opens on. Only anthropic and openai are built into the provider
registry; the other two must carry a [[provider]] block or the config will not resolve.
Variants§
Anthropic
Built in.
OpenAi
Built in.
Gemini dialect; needs a [[provider]] block and GEMINI_API_KEY.
Local
A local OpenAI-compatible server (Ollama), escalating to a frontier rung.
Implementations§
Source§impl Provider
impl Provider
Sourcepub const fn blurb(self) -> &'static str
pub const fn blurb(self) -> &'static str
One-line description shown next to the option when prompting.
Sourcepub const fn ladder(self) -> [&'static str; 2]
pub const fn ladder(self) -> [&'static str; 2]
Cheapest-first ladder. Every id here is priced by the built-in table, so firstpass savings
is meaningful out of the box (the local rung is the exception — it is free to run).
Sourcepub const fn judge_model(self) -> &'static str
pub const fn judge_model(self) -> &'static str
A model for the judge gate that is deliberately NOT on the ladder — the runner enforces maker != checker, so a judge drawn from the ladder would be rejected.
Sourcepub const fn provider_block(self) -> Option<&'static str>
pub const fn provider_block(self) -> Option<&'static str>
The [[provider]] block this choice requires, if it is not built in.
Trait Implementations§
impl Copy for Provider
impl Eq for Provider
impl StructuralPartialEq for Provider
Auto Trait Implementations§
impl Freeze for Provider
impl RefUnwindSafe for Provider
impl Send for Provider
impl Sync for Provider
impl Unpin for Provider
impl UnsafeUnpin for Provider
impl UnwindSafe for Provider
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
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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>
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>
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