analyzeContent method

Future<ModerationAnalysis> analyzeContent(
  1. String text, {
  2. String? model,
})

Get detailed moderation analysis

Implementation

Future<ModerationAnalysis> analyzeContent(String text,
    {String? model}) async {
  final result = await moderateText(text, model: model);

  final categoriesMap = _categoriesToMap(result.categories);
  final scoresMap = _categoryScoresToMap(result.categoryScores);

  return ModerationAnalysis(
    text: text,
    flagged: result.flagged,
    categories: categoriesMap,
    categoryScores: scoresMap,
    highestRiskCategory: _getHighestRiskCategory(scoresMap),
    riskLevel: _calculateRiskLevel(scoresMap),
    recommendations: _generateRecommendations(result),
  );
}