summarizeHistory method
Summarizes a conversation history into a concise 2-3 sentence summary
messages
- The conversation messages to summarize
Returns a string containing the summary or throws an LLMError
Implementation
@override
Future<String> summarizeHistory(List<ChatMessage> messages) async {
final prompt =
'Summarize in 2-3 sentences:\n${messages.map((m) => '${m.role.name}: ${m.content}').join('\n')}';
final request = [ChatMessage.user(prompt)];
final response = await chat(request);
final text = response.text;
if (text == null) {
throw const GenericError('no text in summary response');
}
return text;
}