pub struct AgentPersona {
pub role: String,
pub identity: String,
pub communication_style: String,
pub principles: Vec<String>,
pub traits: Vec<String>,
}Expand description
Defines an agent’s personality and behavior
Fields§
§role: StringThe agent’s role description
identity: StringIdentity statement - who the agent is
communication_style: StringCommunication style
principles: Vec<String>Core principles the agent follows
traits: Vec<String>Personality traits
Implementations§
Source§impl AgentPersona
impl AgentPersona
Sourcepub fn new(
role: impl Into<String>,
identity: impl Into<String>,
communication_style: impl Into<String>,
) -> Self
pub fn new( role: impl Into<String>, identity: impl Into<String>, communication_style: impl Into<String>, ) -> Self
Create a new agent persona
Sourcepub fn with_principle(self, principle: impl Into<String>) -> Self
pub fn with_principle(self, principle: impl Into<String>) -> Self
Add a principle
Sourcepub fn with_principles(self, principles: Vec<String>) -> Self
pub fn with_principles(self, principles: Vec<String>) -> Self
Add multiple principles
Sourcepub fn with_trait(self, trait_: impl Into<String>) -> Self
pub fn with_trait(self, trait_: impl Into<String>) -> Self
Add a trait
Sourcepub fn with_traits(self, traits: Vec<String>) -> Self
pub fn with_traits(self, traits: Vec<String>) -> Self
Add multiple traits
Trait Implementations§
Source§impl Clone for AgentPersona
impl Clone for AgentPersona
Source§fn clone(&self) -> AgentPersona
fn clone(&self) -> AgentPersona
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 moreSource§impl Debug for AgentPersona
impl Debug for AgentPersona
Source§impl<'de> Deserialize<'de> for AgentPersona
impl<'de> Deserialize<'de> for AgentPersona
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for AgentPersona
impl RefUnwindSafe for AgentPersona
impl Send for AgentPersona
impl Sync for AgentPersona
impl Unpin for AgentPersona
impl UnsafeUnpin for AgentPersona
impl UnwindSafe for AgentPersona
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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> 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>
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.