sensitive-word 敏感词/脏词开源工具-v.0.10.0-脏词分类标签支持

sensitive-word

sensitive-word 基于 DFA 算法实现的高性能敏感词工具。

创作目的

实现一款好用敏感词工具。

基于 DFA 算法实现,目前敏感词库内容收录 6W+(源文件 18W+,经过一次删减)。

后期将进行持续优化和补充敏感词库,并进一步提升算法的性能。

希望可以细化敏感词的分类,感觉工作量比较大,暂时没有进行。

v0.10.0 先添加对应的脏词分类接口,后续有时间完善对应的实现和词典。

敏感词标签

说明

有时候我们希望对敏感词加一个分类标签:比如社情、暴/力等等。

这样后续可以按照标签等进行更多特性操作,比如只处理某一类的标签。

支持版本:v0.10.0

入门例子

接口

这里只是一个抽象的接口,用户可以自行定义实现。比如从数据库查询等。

java 复制代码
public interface IWordTag {

    /**
     * 查询标签列表
     * @param word 脏词
     * @return 结果
     */
    Set<String> getTag(String word);

}

配置文件

我们可以自定义 dict 标签文件,通过 WordTags.file() 创建一个 WordTag 实现。

  • dict_tag_test.txt

    五星红旗 政治,国家

格式如下:

复制代码
敏感词 tag1,tag2

实现

具体的效果如下,在引导类设置一下即可。

默认的 wordTag 是空的。

java 复制代码
String filePath = "dict_tag_test.txt";
IWordTag wordTag = WordTags.file(filePath);

SensitiveWordBs sensitiveWordBs = SensitiveWordBs.newInstance()
        .wordTag(wordTag)
        .init();

Assert.assertEquals("[政治, 国家]", sensitiveWordBs.tags("五星红旗").toString());;

后续会考虑引入一个内置的标签文件策略。

拓展阅读

敏感词工具实现思路

DFA 算法讲解

敏感词库优化流程

java 如何实现开箱即用的敏感词控台服务?

开源地址

其他很多特性以前介绍过,不再赘述。

感兴趣的话,前往开源地址:

github.com/houbb/sensi...

相关推荐
摸鱼仙人~26 分钟前
借鉴自动驾驶运行态安全经验,保障 AI Coding 实时产出安全的方法论研究
人工智能·安全·自动驾驶
Paranoid-up26 分钟前
安全启动和安全固件更新(SBSFU)4:内存布局 —— SBSFU 的 Flash 与 RAM 分配
安全·iap·安全启动·安全升级·sbsfu
Paranoid-up31 分钟前
安全启动和安全固件更新(SBSFU)9:UserApp -- 用户应用与YMODEM升级
安全·iap·安全启动·安全升级·sbsfu
AC赳赳老秦37 分钟前
数据安全合规:OpenClaw 敏感信息脱敏、操作日志审计、权限精细化管控方案,符合等保要求
网络·数据库·python·安全·web安全·oracle·openclaw
DogDaoDao1 小时前
【GitHub】SuperClaude Framework深度解析:将Claude Code打造为专业开发平台的元编程配置框架
人工智能·深度学习·程序员·大模型·github·ai编程·claude
Paranoid-up1 小时前
安全启动和安全固件更新(SBSFU)10:双镜像机制 – 活动槽与下载槽的协同工作
安全·iap·安全启动·安全升级·sbsfu
XD7429716361 小时前
科技早报晚报|2026年5月10日:Agent 安全沙箱、可审计编程代理与持久化产品上下文,今晚更值得做的 3 个开源机会
科技·安全·开源·开源项目·ai agent·开发者工具
@insist1231 小时前
信息安全工程师-入侵阻断与网络流量清洗技术详解
网络·安全·软考·信息安全工程师·软件水平考试
小小测试开发1 小时前
LLM 文档处理安全指南:如何避免 AI 静默篡改你的重要数据
人工智能·安全
vortex52 小时前
无人机系统安全攻防技术深度解析
安全·系统安全·无人机