diff --git a/src/api.rs b/src/api.rs index e174d6c..82673ff 100644 --- a/src/api.rs +++ b/src/api.rs @@ -110,12 +110,16 @@ impl OllamaChat { pub async fn complete( chat: Arc>, ) -> anyhow::Result>> { - let mut chat = chat.write().await; - let body = serde_json::to_string(chat.deref())?; - println!("Sending: {}", body); + { + let mut chat = chat.write().await; + let body = serde_json::to_string(chat.deref())?; + println!("Sending: {}", body); - let msg = Arc::new(RwLock::new(String::from(""))); - chat.current_message = Some(msg.clone()); + let msg = Arc::new(RwLock::new(String::from(""))); + chat.current_message = Some(msg.clone()); + } + + let chat = chat.read().await; let request = chat .client