diff options
| author | sigoden <sigoden@gmail.com> | 2024-06-17 13:19:00 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-17 13:19:00 +0800 |
| commit | ba884c9fc65d820f8603859acafd055b98897b56 (patch) | |
| tree | 3b319a01322ed7a74822634f775c0e0cadfe3753 /src/config/role.rs | |
| parent | bbdd866eb325fde60241f33eeb8770b1180abd96 (diff) | |
| download | aichat-ba884c9fc65d820f8603859acafd055b98897b56.tar.gz | |
feat: add `.continue` repl command (#608)
Diffstat (limited to 'src/config/role.rs')
| -rw-r--r-- | src/config/role.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/config/role.rs b/src/config/role.rs index 5b52587..4ff05b4 100644 --- a/src/config/role.rs +++ b/src/config/role.rs @@ -185,7 +185,7 @@ async function timeout(ms) { pub fn build_messages(&self, input: &Input) -> Vec<Message> { let mut content = input.message_content(); - if self.is_empty_prompt() { + let mut messages = if self.is_empty_prompt() { vec![Message::new(MessageRole::User, content)] } else if self.is_embedded_prompt() { content.merge_prompt(|v: &str| self.prompt.replace(INPUT_PLACEHOLDER, v)); @@ -209,7 +209,14 @@ async function timeout(ms) { } messages.push(Message::new(MessageRole::User, content)); messages + }; + if let Some(text) = input.continue_output() { + messages.push(Message::new( + MessageRole::Assistant, + MessageContent::Text(text.into()), + )); } + messages } } |
