pub async fn generate( diff: String, session: Option<Session>, progressbar: Option<ProgressBar> ) -> Result<OpenAIResponse, ChatError>