evaluateAndStreamResults method
Stream<EvaluationResult>
evaluateAndStreamResults(
- Iterable<
ChatMessage> messages, - ChatResponse modelResponse, {
- ChatConfiguration? chatConfiguration,
- Iterable<
EvaluationContext> ? additionalContext, - CancellationToken? cancellationToken,
Streams results as each evaluator completes.
Implementation
Stream<EvaluationResult> evaluateAndStreamResults(
Iterable<ChatMessage> messages,
ChatResponse modelResponse, {
ChatConfiguration? chatConfiguration,
Iterable<EvaluationContext>? additionalContext,
CancellationToken? cancellationToken,
}) async* {
final futures = _evaluators
.map((e) => _safeEvaluate(
e,
messages,
modelResponse,
chatConfiguration: chatConfiguration,
additionalContext: additionalContext,
cancellationToken: cancellationToken,
))
.toList();
for (final future in futures) {
yield await future;
}
}