doc for intro
2
This commit is contained in:
@@ -26,9 +26,10 @@
|
||||
<img src="docs/qq.png" width="300" />
|
||||
</div>
|
||||
|
||||
## 📚 详细文档
|
||||
- [项目详细介绍和架构说明](docs/doc1.md) - 包含完整的项目结构、文件说明和核心功能实现细节(由claude-3.5-sonnet生成)
|
||||
|
||||
|
||||
### 安装方法(还没测试好,现在部署可能遇到未知问题!!!!!!)
|
||||
### 安装方法(还没测试好,现在部署可能遇到未知问题!!!!)
|
||||
|
||||
1. **创建Python环境**
|
||||
推荐使用conda或其他环境管理来管理你的python环境
|
||||
@@ -48,7 +49,7 @@
|
||||
|
||||
4. **配置文件设置**
|
||||
- 把env.example改成.env,并填上你的apikey(硅基流动或deepseekapi)
|
||||
- 把bot_config_toml改名为bot_config.toml,并填写相关内容
|
||||
- 把bot_config_toml改名为bot_config.toml,并填写相关内容,不然无法正常运行
|
||||
|
||||
5. **运行麦麦**
|
||||
```bash
|
||||
|
||||
71
docs/doc1.md
71
docs/doc1.md
@@ -90,3 +90,74 @@
|
||||
### 回复逻辑
|
||||
- 回复逻辑由 `llm_generator.py` 和 `bot.py` 共同实现。`llm_generator.py` 负责生成基于用户输入的回复,使用大语言模型来理解上下文并生成自然语言响应。
|
||||
- 在 `bot.py` 中,机器人会根据解析后的消息内容和生成的回复,决定如何将回复发送给用户。回复可以是文本、表情或其他类型的消息.
|
||||
|
||||
# 发送逻辑详细介绍
|
||||
|
||||
## 消息发送控制系统
|
||||
|
||||
### 1. 消息队列管理
|
||||
消息发送系统采用了三层架构设计:
|
||||
- **SendTemp**: 单个群组的临时消息队列管理器
|
||||
- 维护每个群的消息队列
|
||||
- 确保消息按时间顺序存储和发送
|
||||
- 支持消息的添加、获取和清空操作
|
||||
- 记录最后发送时间,控制发送频率
|
||||
|
||||
- **SendTempContainer**: 管理所有群组的消息缓存容器
|
||||
- 管理多个群组的消息队列
|
||||
- 提供群组消息的统一访问接口
|
||||
- 支持消息的分发和更新
|
||||
|
||||
- **MessageSendControl**: 消息发送控制器
|
||||
- 控制消息的发送速度和间隔
|
||||
- 处理消息的重试机制
|
||||
- 管理消息的存储和可视化
|
||||
|
||||
### 2. 发送流程
|
||||
1. **消息预处理**:
|
||||
- 消息进入队列前会被格式化和标准化
|
||||
- 添加必要的元数据(时间戳、消息ID等)
|
||||
- 根据消息类型(文本、图片、表情等)进行分类
|
||||
|
||||
2. **队列管理**:
|
||||
- 消息按时间顺序存储在队列中
|
||||
- 使用双端队列(deque)实现,支持高效的添加和删除操作
|
||||
- 队列大小有限制,防止内存溢出
|
||||
|
||||
3. **发送控制**:
|
||||
- 控制发送速度:模拟人类打字速度(0.1-0.3秒/字符)
|
||||
- 消息间隔:多条消息之间保持0.5-1秒的间隔
|
||||
- 超时处理:思考时间超过60秒的消息会被自动移除
|
||||
- 失败重试:最多重试3次
|
||||
|
||||
### 3. 特殊功能
|
||||
1. **思考机制**:
|
||||
- 支持"思考中"状态的消息
|
||||
- 控制思考时间,避免响应过快或过慢
|
||||
- 超时自动清理机制
|
||||
|
||||
2. **消息追踪**:
|
||||
- 记录每条消息的发送状态
|
||||
- 支持消息的可视化展示
|
||||
- 提供发送时间统计
|
||||
|
||||
3. **安全机制**:
|
||||
- 消息发送频率限制
|
||||
- 队列容量控制
|
||||
- 异常处理和恢复
|
||||
|
||||
### 4. 优化特性
|
||||
1. **并发处理**:
|
||||
- 支持多个群组消息的并行处理
|
||||
- 使用异步机制提高效率
|
||||
- 避免单个群组阻塞整体发送
|
||||
|
||||
2. **智能排队**:
|
||||
- 基于时间戳的消息排序
|
||||
- 支持消息优先级
|
||||
- 动态调整发送顺序
|
||||
|
||||
3. **状态监控**:
|
||||
- 实时监控消息队列状态
|
||||
- 提供消息发送统计
|
||||
- 支持发送过程可视化
|
||||
|
||||
Reference in New Issue
Block a user