#[non_exhaustive]pub struct SamplingMessage {
pub role: Role,
pub content: SamplingContent<SamplingMessageContentBlock>,
pub meta: Option<MetaObject>,
}Sampling is deprecated by SEP-2577 and will be removed in a future release. See https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2577
Expand description
A message in a sampling conversation, containing a role and content.
This represents a single message in a conversation flow, used primarily in LLM sampling requests where the conversation history is important for generating appropriate responses.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.role: RoleSampling is deprecated by SEP-2577 and will be removed in a future release. See https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2577
The role of the message sender (User or Assistant)
content: SamplingContent<SamplingMessageContentBlock>Sampling is deprecated by SEP-2577 and will be removed in a future release. See https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2577
The actual content of the message (text, image, audio, tool use, or tool result)
meta: Option<MetaObject>Sampling is deprecated by SEP-2577 and will be removed in a future release. See https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2577
Implementations§
Source§impl SamplingMessage
impl SamplingMessage
pub fn new( role: Role, content: impl Into<SamplingMessageContentBlock>, ) -> SamplingMessage
pub fn new_multiple( role: Role, contents: Vec<SamplingMessageContentBlock>, ) -> SamplingMessage
pub fn user_text(text: impl Into<String>) -> SamplingMessage
pub fn assistant_text(text: impl Into<String>) -> SamplingMessage
pub fn user_tool_result( tool_use_id: impl Into<String>, content: Vec<ContentBlock>, ) -> SamplingMessage
pub fn assistant_tool_use( id: impl Into<String>, name: impl Into<String>, input: Map<String, Value>, ) -> SamplingMessage
Trait Implementations§
Source§impl Clone for SamplingMessage
impl Clone for SamplingMessage
Source§fn clone(&self) -> SamplingMessage
fn clone(&self) -> SamplingMessage
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SamplingMessage
impl Debug for SamplingMessage
Source§impl<'de> Deserialize<'de> for SamplingMessage
impl<'de> Deserialize<'de> for SamplingMessage
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<SamplingMessage, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<SamplingMessage, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for SamplingMessage
impl JsonSchema for SamplingMessage
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for SamplingMessage
impl PartialEq for SamplingMessage
Source§impl Serialize for SamplingMessage
impl Serialize for SamplingMessage
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for SamplingMessage
Auto Trait Implementations§
impl Freeze for SamplingMessage
impl RefUnwindSafe for SamplingMessage
impl Send for SamplingMessage
impl Sync for SamplingMessage
impl Unpin for SamplingMessage
impl UnsafeUnpin for SamplingMessage
impl UnwindSafe for SamplingMessage
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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