pub struct RenderedPrompt {
pub instructions: String,
pub developer_messages: Vec<ModelMessage>,
}Expand description
The result of rendering a system prompt: a stable base instructions
string (sent in the provider’s instructions field or as the first
system message) and a list of dynamic developer_messages (injected
as separate messages so that changes to context blocks don’t
invalidate the provider’s prompt cache for the base prefix).
Fields§
§instructions: StringStable base instructions for the instructions field of the
provider request. Kept identical across turns when config, cwd,
and tool set are unchanged.
developer_messages: Vec<ModelMessage>Dynamic context blocks injected as separate developer-role
messages after the base instructions. Each block can change
independently without invalidating the cache for instructions.
Trait Implementations§
Source§impl Clone for RenderedPrompt
impl Clone for RenderedPrompt
Source§impl Debug for RenderedPrompt
impl Debug for RenderedPrompt
Auto Trait Implementations§
impl Freeze for RenderedPrompt
impl RefUnwindSafe for RenderedPrompt
impl Send for RenderedPrompt
impl Sync for RenderedPrompt
impl Unpin for RenderedPrompt
impl UnsafeUnpin for RenderedPrompt
impl UnwindSafe for RenderedPrompt
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,
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