Spring AI 中的 Mistral AI 内容审核功能使用 Mistral AI 的审核模型提供内容审核能力。

概述

Mistral AI 内容审核能够:

  • 高级内容过滤
  • 多语言支持
  • 自定义审核规则
  • 实时内容分析

功能

内容分析

深度内容分析

多语言

支持多种语言

自定义规则

可自定义审核规则

实时

实时内容审核

实现

基本设置

<dependency>
    <groupId>org.springframework.ai</groupId>
    <artifactId>spring-ai-mistral-moderation</artifactId>
    <version>${spring-ai.version}</version>
</dependency>

配置

# Mistral AI 内容审核配置
spring.ai.mistral.moderation.enabled=true
spring.ai.mistral.moderation.api-key=${MISTRAL_API_KEY}
spring.ai.mistral.moderation.model=mistral-moderation

用法

@Service
public class MistralModerationService {
    private final MistralModerationClient moderationClient;

    public MistralModerationService(MistralModerationClient moderationClient) {
        this.moderationClient = moderationClient;
    }

    public ModerationResult moderateContent(String content) {
        return moderationClient.moderate(content);
    }
}

审核功能

1. 基本审核

@Configuration
public class MistralModerationConfig {
    @Bean
    public ModerationClient mistralModerationClient(MistralModerationProperties properties) {
        return new MistralModerationClient(properties);
    }
}

2. 特定语言审核

@Configuration
public class LanguageModerationConfig {
    @Bean
    public ModerationClient languageModerationClient(MistralModerationProperties properties) {
        return ModerationClient.builder()
            .properties(properties)
            .languages(Arrays.asList("en", "fr", "es"))
            .build();
    }
}

3. 自定义审核规则

@Configuration
public class CustomModerationConfig {
    @Bean
    public ModerationClient customModerationClient(MistralModerationProperties properties) {
        return ModerationClient.builder()
            .properties(properties)
            .rules(customRules())
            .build();
    }

    private List<ModerationRule> customRules() {
        return Arrays.asList(
            new ModerationRule("hate", 0.7),
            new ModerationRule("harassment", 0.6),
            new ModerationRule("violence", 0.8)
        );
    }
}

高级功能

自定义审核逻辑

@Component
public class CustomModerationLogic implements ModerationLogic {
    @Override
    public ModerationResult process(String content) {
        // 自定义审核逻辑
        return result;
    }

    @Override
    public boolean isAllowed(ModerationResult result) {
        // 自定义允许逻辑
        return allowed;
    }
}

审核监控

management.endpoints.web.exposure.include=mistral-moderation
management.endpoint.mistral-moderation.enabled=true

最佳实践

使用 Mistral AI 内容审核时,请考虑以下最佳实践:

  • API 安全:保护您的 API 密钥
  • 错误处理:实现稳健的错误处理
  • 速率限制:监控 API 使用情况
  • 语言支持:配置适当的语言
  • 规则管理:维护清晰的审核规则

故障排除

常见问题和解决方案:

  1. API 问题

    • 验证 API 密钥
    • 检查 API 限制
    • 查看错误消息
  2. 语言问题

    • 验证语言支持
    • 检查语言检测
    • 查看语言设置
  3. 性能问题

    • 优化请求频率
    • 实现缓存
    • 使用批处理

文档有误?请协助编辑

发现文档问题?点击此处直接在 GitHub 上编辑并提交 PR,帮助我们改进文档!