立即注册  找回密码
 立即注册
CeraNetworksBGVM服务器主机交流会员请立即修改密码Sharktech防护
查看: 37|回复: 3

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

[复制链接]

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

[复制链接]

18

主题

39

回帖

242

积分

中级会员

积分
242
codeas

18

主题

39

回帖

242

积分

中级会员

积分
242
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`启动!

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

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

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

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

    这样做的理由是什么:
    - 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
  • 回复

    使用道具 举报

    52

    主题

    715

    回帖

    2148

    积分

    金牌会员

    积分
    2148
    Nigel

    52

    主题

    715

    回帖

    2148

    积分

    金牌会员

    积分
    2148
    2024-8-5 10:52:48 | 显示全部楼层
    膜拜技术大佬
    回复

    使用道具 举报

    12

    主题

    134

    回帖

    432

    积分

    中级会员

    积分
    432
    赤坂

    12

    主题

    134

    回帖

    432

    积分

    中级会员

    积分
    432
    2024-8-5 13:03:50 | 显示全部楼层
    大佬牛逼
    回复

    使用道具 举报

    99

    主题

    378

    回帖

    1429

    积分

    金牌会员

    积分
    1429
    阿里云

    99

    主题

    378

    回帖

    1429

    积分

    金牌会员

    积分
    1429
    2024-8-5 13:07:33 | 显示全部楼层

    Nigel 发表于 2024-8-5 10:52

    膜拜技术大佬

    我也膜拜
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|小黑屋|HS2V主机综合交流论坛

    GMT+8, 2024-11-23 00:01 , Processed in 0.062466 second(s), 4 queries , Gzip On, Redis On.

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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