validateModelResponse static method
ResponseValidationResult
validateModelResponse(
- String response, {
- required String originalPrompt,
- required ProcessedImage? processedImage,
Validates and handles model responses for corruption patterns
Implementation
static ResponseValidationResult validateModelResponse(
String response, {
required String originalPrompt,
required ProcessedImage? processedImage,
}) {
try {
debugPrint('MultimodalImageHandler: Validating model response...');
// Detect corruption patterns
final corruptionResult = ImageErrorHandler.detectResponseCorruption(response);
if (corruptionResult.isCorrupted) {
debugPrint('MultimodalImageHandler: Corruption detected with ${corruptionResult.confidence.toStringAsFixed(2)} confidence');
// Log detailed analysis
debugPrint('Corruption Analysis: ${corruptionResult.analysis}');
debugPrint('Suggested Action: ${corruptionResult.suggestedAction}');
return ResponseValidationResult(
isValid: false,
isCorrupted: true,
confidence: corruptionResult.confidence,
analysis: corruptionResult.analysis,
suggestedAction: _convertToResponseAction(corruptionResult.suggestedAction),
originalResponse: response,
);
}
debugPrint('MultimodalImageHandler: Response validation passed');
return ResponseValidationResult(
isValid: false,
isCorrupted: true,
confidence: 0.8, // High confidence in error case
analysis: {'status': 'validation_error'},
suggestedAction: ResponseAction.reprocessImage,
originalResponse: response,
);
} catch (e) {
debugPrint('MultimodalImageHandler: Response validation failed - $e');
return ResponseValidationResult(
isValid: false,
isCorrupted: true,
confidence: 0.8, // High confidence in error case
analysis: {'error': 'Validation failed: $e'},
suggestedAction: ResponseAction.reprocessImage,
originalResponse: response,
);
}
}