getCacheKey method

String getCacheKey(
  1. Iterable<ChatMessage> messages,
  2. ChatOptions? options
)

Gets a cache key for the given messages and options.

Override to customize cache key generation.

Implementation

String getCacheKey(
  Iterable<ChatMessage> messages,
  ChatOptions? options,
) {
  final buffer = StringBuffer();
  for (final message in messages) {
    buffer.write(message.role.value);
    buffer.write(':');
    buffer.write(message.text);
    buffer.write('|');
  }
  if (options?.modelId != null) {
    buffer.write('model:${options!.modelId}');
  }
  return buffer.toString();
}