全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 468|回复: 3

[经验] 【开源】一个基于AI用于反垃圾信息的telegram群管机器人

[复制链接]
发表于 2024-8-5 10:51:28 | 显示全部楼层 |阅读模式
本帖最后由 codeas 于 2024-8-5 10:51 编辑

大概在前年的时候,由于自己`Telegram`的开源交流群快1万人了。

对于这种”大群“而言,早已被各大垃圾广告脚本列入群发名单了,所以经常能看到很多群发垃圾信息广告。

管理员多次跟我抱怨“广告垃圾太多了,根本删不完,有的还会偷偷趁管理都睡了进来发,防不胜防”,

当时就在计划写一个`反广告`的机器人,

最开始的设想很简单,找一批`违禁词`做基础数据源,然后在根据用户的发言做`关键词拆分`,

如果用户发言里面包含的关键词`命中n个`以后,就代表是垃圾信息,立马对用户进行`封禁操作`。

但是上线后发现以下几个弊端:

- 1.违禁词库不够大,能找到的很多都是一些旧数据了,导致命中率很低
- 2.只能识别文字信息,如果对方在消息里插入符号、特殊字符、emoji等来混淆信息,就根本无法识别了
- 3.无法识别图片和表情
- 4.如果`违禁词`出现更新和变种,那么还得管理员经常去做词库更新,累之~

再运行一段时间发现以上缺点后,我就开始失望了,因为我没有精力和时间去做更多的手段完善`识别率`,

只能祈祷用爱发电的管理员们多多关注群消息,手动删除。

我也尝试过许多第三方的机器人,但是效果可能都不太如尽人意。

但是在上个星期,一位好友突然让我尝试一个机器人,说识别率很高,我就去扫了一眼。

发现它是基于chatgpt去做识别的,

这次发现突然给了我灵感,对啊,为什么我没想的用`AI`去做识别呢?




我这人有个缺点,就是了解原理以后,喜欢自己造轮子,命运得握在自己手上不是?

这里也非常感谢https://t.me/ZUOLUOTV_AI_BOT机器人以及它的作者在推特上透露的灵感,

当然使用`AI`还有个好处就是,现在很多`AI`接口的中转站,价格相较于官方会便宜很多很多,

而且`AI`是支持`多语言交互的`,不仅仅局限于反`中文垃圾消息`,随着模型的成熟,它能理解并判断更多的语言。

说干就干,`IDEA`启动!

这里简单可以描述群发广告机器人的原理:


  1. 1. 广告脚本控制的telegram账号其实都是`协议号`,这种号是活不久的,用完就换,几乎是一次性的
  2. 2. 已知这种账号如果活不久的话,程序在控制它们的时候肯定会尽快发挥价值,说不定一个号在短时间内会加很多群然后发垃圾广告信息
  3. 3. 广告号一般特征非常明显,会在昵称和简介里包含垃圾信息
复制代码


好了,现在我们了解了`茅`的原理了,接下来我们开始实现`盾`

`盾`的实现原理如下:

  1. 1. 机器人监听新用户加群事件,将用户的信息存在本地数据库中
  2. 2. 机器人监听新用户发言事件,将用户的发言次数存在本地数据库中
  3. 3. 判断条件:如果一个新用户在加入群后的`n`天内发言,并且`n`次发言内容都没问题,则后续这个用户将直接放入白名单,不再验证
复制代码


这样做的理由是什么:
- 1.由于大群内发言人数非常多,为了钱包考虑,永远不可能每次发言都交给`AI`做判断,对正常用户来说这样做是没意义的,造成无意义的成本消耗
- 2.根据上述原理我们得知,广告号的存活时间非常短暂,telegram官方也会做封禁,所以大部分的广告号特征就是新加入群,马上就开始发垃圾广告,这样识别起来成功率非常高!
- 3.当然如果一个用户在一定时间内的发言都没问题的话,后续也不需要在验证了,节约钱包

剩下的事情就简单多了,只需要预先设置好`AI的prompt`,然后把用户发言的内容交给它判断就行了。

暂时我只实现了`Openai`的接口,目前看来足够使用,其他模型等后续有时间再做。

我们来看一下效果:


我和朋友在线上测试了几天,发现识别效果还是不错的,当然速度的话还是取决于你的服务器和AI的接口。

我将它开源了出来,有需求或者对Telegram机器人开发感兴趣的话可以看看。

基于go语言和docker启动,数据源用的sqlite,无需过多依赖,可以一键启动。

项目地址:https://github.com/assimon/ai-anti-bot

原文地址:https://utf8.hk/archives/ai-anti-bot.html
发表于 2024-8-5 10:52:48 | 显示全部楼层
膜拜技术大佬
发表于 2024-8-5 13:07:33 | 显示全部楼层

我也膜拜
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-9-22 01:45 , Processed in 0.063906 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表