一、为什么要做这个Bot
维护Telegram群组的朋友应该都遇到过类似问题:群里突然冒出一堆广告,机器人批量加群发垃圾信息,正常讨论都被打断。最头疼的是,管理员每天要花不少时间清理消息,删广告,封机器人。
我自己也管理几个技术交流群,看着群从清净变成垃圾场,心里挺不是滋味的。传统方法要么效果一般,要么太麻烦。后来想了想,为什么不做一个更智能的解决方案?既能自动识别垃圾信息,又不会误伤正常用户,还能防住新出现的机器人。
于是就开始折腾这个项目,希望能帮更多群主省心。
二、技术方案的选择
在实现上,我参考了很多现有方案,最后选择了几种互补的技术:
基础规则过滤:设置一些关键词和模式,明显广告直接拦截。这个最快,但只能对付最简单的垃圾。
媒体内容检查:有些垃圾是图片或链接,需要专门分析。
大模型智能检测:这是最关键的一环。用AI来判断消息是否合适,比单纯的关键词匹配准确得多。为什么选大模型?因为它能理解上下文,识别那些绕过规则的"聪明"垃圾。
为了不影响群聊速度,我设计了异步处理机制。明显垃圾秒删,复杂内容后台慢慢分析。用户感觉不到卡顿,机器人也逃不掉。
验证新用户时,还加了人机验证环节,确保加群的都是真人。
三、极简使用背后的技术思考
用起来很简单:装好Bot,设置一下权限,它就开始工作了。群主不用操太多心,该删的删,该封的封。
但背后其实挺复杂的。要让AI准确识别垃圾,又不误伤好人,需要不断优化算法。处理速度要快,不能让群聊变慢。数据库要稳,用户数据不能丢。
我花了不少时间调参数,测试各种场景。目标就是,让复杂的技术变得简单好用。
四、比传统广告拦截机器人强在哪里
传统机器人大多只能防广告,或者只检查新用户。这种新Bot更全面:
- 防广告:不仅关键词,还看内容语境
- 防机器人:新用户要验证,人机识别
- 内容质量:智能判断消息价值,低质内容也清理
- 学习能力:用AI持续改进,适应新套路
效果明显,群里干净多了,活跃用户也更愿意发言。
五、实测效果
-
得益于ollama提供的在线大模型提供的免费额度和其部署于谷歌cloud全球加速,我将bot部署于英国的服务器,到ollama api请求延迟1-2ms,到telegram荷兰数据中心的延迟在10ms以内。
-
如果未来ollama提供的免费额度不足以满足需求,我可能会升级付费套餐或者尝试部署ollama本地轻量化模型,实际上我已经测试过本地部署qwen2.5:1.5B模型效果也挺好
-
感谢一位网友贡献了一个垃圾内容特别多的群作为测试环境。三天时间,Bot自动删除了10000+条垃圾信息,终于清静了,实际上他的这个群进来几乎都是发广告的,也没正常主题交流😄😄😄。
这个数据让我很惊喜,也证明了AI检测的有效性。
六、未来的扩展方向
目前功能已经能满足基本需求,但我觉得还可以做得更好:
全局黑名单系统 :基于已有的检测数据,建立跨群的黑名单。如果某个用户在A群被识别为垃圾,在其他群也会被自动拦截。这样能形成网络效应,越用越聪明。
支持群管理员设置查杀的广告类型:让群管理可以根据垃圾分类标签自由选择重点查杀的广告类型
还有一些想法,比如更智能的群统计,自动标签分类等。慢慢来,先把基础功能做好。
欢迎邀请我们的管理机器人进群:https://t.me/SageGuardBot
如果你对这些功能感兴趣,或者有更好的建议,欢迎交流!