1.9 KiB
1.9 KiB
MaiMBot 开发指南
🛠️ 常用命令
- 运行机器人:
python run.py或python bot.py - 安装依赖:
pip install --upgrade -r requirements.txt - Docker 部署:
docker-compose up - 代码检查:
ruff check . - 代码格式化:
ruff format . - 内存可视化:
run_memory_vis.bat或python -m src.plugins.memory_system.draw_memory - 推理过程可视化:
script/run_thingking.bat
🔧 脚本工具
- 运行MongoDB:
script/run_db.bat- 在端口27017启动MongoDB - Windows完整启动:
script/run_windows.bat- 检查Python版本、设置虚拟环境、安装依赖并运行机器人 - 快速启动:
script/run_maimai.bat- 设置UTF-8编码并执行"nb run"命令
📝 代码风格
- Python版本: 3.9+
- 行长度限制: 88字符
- 命名规范:
snake_case用于函数和变量PascalCase用于类_prefix用于私有成员
- 导入顺序: 标准库 → 第三方库 → 本地模块
- 异步编程: 对I/O操作使用async/await
- 日志记录: 使用loguru进行一致的日志记录
- 错误处理: 使用带有具体异常的try/except
- 文档: 为类和公共函数编写docstrings
🧩 系统架构
- 框架: NoneBot2框架与插件架构
- 数据库: MongoDB持久化存储
- 设计模式: 工厂模式和单例管理器
- 配置管理: 使用环境变量和TOML文件
- 内存系统: 基于图的记忆结构,支持记忆构建、压缩、检索和遗忘
- 情绪系统: 情绪模拟与概率权重
- LLM集成: 支持多个LLM服务提供商(ChatAnywhere, SiliconFlow, DeepSeek)
⚙️ 环境配置
- 使用
template.env作为环境变量模板 - 使用
template/bot_config_template.toml作为机器人配置模板 - MongoDB配置: 主机、端口、数据库名
- API密钥配置: 各LLM提供商的API密钥