MaiMBot

MaiMBot

麦麦bot,一款专注于 群组聊天 的赛博网友(非常专注)QQ BOT

Stars: 342

Visit
 screenshot

MaiMBot is an intelligent QQ group chat bot based on a large language model. It is developed using the nonebot2 framework, utilizes LLM for conversation abilities, MongoDB for data persistence, and NapCat for QQ protocol support. The bot features keyword-triggered proactive responses, dynamic prompt construction, support for images and message forwarding, typo generation, multiple replies, emotion-based emoji responses, daily schedule generation, user relationship management, knowledge base, and group impressions. Work-in-progress features include personality, group atmosphere, image handling, humor, meme functions, and Minecraft interactions. The tool is in active development with plans for GIF compatibility, mini-program link parsing, bug fixes, documentation improvements, and logic enhancements for emoji sending.

README:

麦麦!MaiMBot (编辑中)

Python Version License Status

📝 项目简介

🍔麦麦是一个基于大语言模型的智能QQ群聊机器人

  • 基于 nonebot2 框架开发
  • LLM 提供对话能力
  • MongoDB 提供数据持久化支持
  • NapCat 作为QQ协议端支持

最新版本: v0.5.*

麦麦演示视频
👆 点击观看麦麦演示视频 👆

⚠️ 注意事项

  • 项目处于活跃开发阶段,代码可能随时更改
  • 文档未完善,有问题可以提交 Issue 或者 Discussion
  • QQ机器人存在被限制风险,请自行了解,谨慎使用
  • 由于持续迭代,可能存在一些已知或未知的bug
  • 由于开发中,可能消耗较多token

交流群: 766798517 一群人较多,建议加下面的(开发和建议相关讨论)不一定有空回复,会优先写文档和代码 交流群: 571780722 另一个群(开发和建议相关讨论)不一定有空回复,会优先写文档和代码 交流群: 1035228475 另一个群(开发和建议相关讨论)不一定有空回复,会优先写文档和代码

📚 文档 ⬇️ 快速开始使用麦麦 ⬇️

部署方式

如果你不知道Docker是什么,建议寻找相关教程或使用手动部署(现在不建议使用docker,更新慢,可能不适配)

配置说明

了解麦麦

🎯 功能介绍

💬 聊天功能

  • 支持关键词检索主动发言:对消息的话题topic进行识别,如果检测到麦麦存储过的话题就会主动进行发言
  • 支持bot名字呼唤发言:检测到"麦麦"会主动发言,可配置
  • 支持多模型,多厂商自定义配置
  • 动态的prompt构建器,更拟人
  • 支持图片,转发消息,回复消息的识别
  • 错别字和多条回复功能:麦麦可以随机生成错别字,会多条发送回复以及对消息进行reply

😊 表情包功能

  • 支持根据发言内容发送对应情绪的表情包
  • 会自动偷群友的表情包

📅 日程功能

  • 麦麦会自动生成一天的日程,实现更拟人的回复

🧠 记忆功能

  • 对聊天记录进行概括存储,在需要时调用,待完善

📚 知识库功能

  • 基于embedding模型的知识库,手动放入txt会自动识别,写完了,暂时禁用

👥 关系功能

  • 针对每个用户创建"关系",可以对不同用户进行个性化回复,目前只有极其简单的好感度(WIP)
  • 针对每个群创建"群印象",可以对不同群进行个性化回复(WIP)

开发计划TODO:LIST

规划主线 0.6.0:记忆系统更新 0.7.0: 麦麦RunTime

  • 人格功能:WIP
  • 群氛围功能:WIP
  • 图片发送,转发功能:WIP
  • 幽默和meme功能:WIP的WIP
  • 让麦麦玩mc:WIP的WIP的WIP
  • 兼容gif的解析和保存
  • 小程序转发链接解析
  • 对思考链长度限制
  • 修复已知bug
  • 完善文档
  • 修复转发
  • config自动生成和检测
  • log别用print
  • 给发送消息写专门的类
  • 改进表情包发送逻辑
  • 自动生成的回复逻辑,例如自生成的回复方向,回复风格
  • 采用截断生成加快麦麦的反应速度
  • 改进发送消息的触发

设计理念

  • 千石可乐说:
  • 这个项目最初只是为了给牛牛bot添加一点额外的功能,但是功能越写越多,最后决定重写。其目的是为了创造一个活跃在QQ群聊的"生命体"。可以目的并不是为了写一个功能齐全的机器人,而是一个尽可能让人感知到真实的类人存在.
  • 程序的功能设计理念基于一个核心的原则:"最像而不是好"
  • 主打一个陪伴
  • 如果人类真的需要一个AI来陪伴自己,并不是所有人都需要一个完美的,能解决所有问题的helpful assistant,而是一个会犯错的,拥有自己感知和想法的"生命形式"。
  • 代码会保持开源和开放,但个人希望MaiMbot的运行时数据保持封闭,尽量避免以显式命令来对其进行控制和调试.我认为一个你无法完全掌控的个体才更能让你感觉到它的自主性,而视其成为一个对话机器.

📌 注意事项

SengokuCola纯编程外行,面向cursor编程,很多代码史一样多多包涵

⚠️ 警告:本应用生成内容来自人工智能模型,由 AI 生成,请仔细甄别,请勿用于违反法律的用途,AI生成内容不代表本人观点和立场。

致谢

nonebot2: 跨平台 Python 异步聊天机器人框架
NapCat: 现代化的基于 NTQQ 的 Bot 协议端实现

贡献者

感谢各位大佬!

Stargazers over time

Stargazers over time

For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for MaiMBot

Similar Open Source Tools

For similar tasks

For similar jobs