summaryrefslogtreecommitdiffstats
path: root/src/config/message.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/config/message.rs')
-rw-r--r--src/config/message.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/config/message.rs b/src/config/message.rs
index d5fcff1..5882337 100644
--- a/src/config/message.rs
+++ b/src/config/message.rs
@@ -17,7 +17,7 @@ impl Message {
}
}
-#[derive(Debug, Clone, Deserialize, Serialize)]
+#[derive(Debug, Clone, Copy, Deserialize, Serialize)]
#[serde(rename_all = "snake_case")]
pub enum MessageRole {
System,
@@ -25,6 +25,13 @@ pub enum MessageRole {
User,
}
+impl MessageRole {
+ #[allow(dead_code)]
+ pub fn is_system(&self) -> bool {
+ matches!(self, MessageRole::System)
+ }
+}
+
pub fn num_tokens_from_messages(messages: &[Message]) -> usize {
let mut num_tokens = 0;
for message in messages.iter() {