WebPredictionResult.fromJson constructor
Creates a WebPredictionResult from a JSON map.
Used for deserializing prediction results from API responses. Handles the conversion of probability values to ensure they are doubles.
Example:
final json = {
'id': 'pred_123',
'scientific_name': 'Aedes aegypti',
'probabilities': {
'Aedes aegypti': 0.87,
'Aedes albopictus': 0.08,
},
'model_id': 'culico-net-cls-v1',
'confidence': 0.87,
};
final result = WebPredictionResult.fromJson(json);
Implementation
factory WebPredictionResult.fromJson(Map<String, dynamic> json) {
return WebPredictionResult(
id: json['id'] as String,
scientificName: json['scientific_name'] as String,
// Safely cast the map values to double
probabilities: (json['probabilities'] as Map<String, dynamic>).map(
(key, value) => MapEntry(key, (value as num).toDouble()),
),
modelId: json['model_id'] as String,
confidence: (json['confidence'] as num).toDouble(),
imageUrlSpecies: json['image_url_species'] as String?,
);
}