analyzeMultipleContents method
Batch analyze multiple texts
Implementation
Future<List<ModerationAnalysis>> analyzeMultipleContents(
List<String> texts, {
String? model,
}) async {
final results = await moderateTexts(texts, model: model);
return results.asMap().entries.map((entry) {
final index = entry.key;
final result = entry.value;
final categoriesMap = _categoriesToMap(result.categories);
final scoresMap = _categoryScoresToMap(result.categoryScores);
return ModerationAnalysis(
text: texts[index],
flagged: result.flagged,
categories: categoriesMap,
categoryScores: scoresMap,
highestRiskCategory: _getHighestRiskCategory(scoresMap),
riskLevel: _calculateRiskLevel(scoresMap),
recommendations: _generateRecommendations(result),
);
}).toList();
}