better:更好的心流结构,使用了观察取代外部世界

This commit is contained in:
SengokuCola
2025-03-29 23:30:27 +08:00
parent 803ae55876
commit b8828e81c6
39 changed files with 304 additions and 420 deletions

View File

@@ -18,15 +18,15 @@ wget https://raw.githubusercontent.com/SengokuCola/MaiMBot/main/docker-compose.y
```
- 若需要启用MongoDB数据库的用户名和密码可进入docker-compose.yml取消MongoDB处的注释并修改变量旁 `=` 后方的值为你的用户名和密码\
修改后请注意在之后配置 `.env.prod` 文件时指定MongoDB数据库的用户名密码
修改后请注意在之后配置 `.env` 文件时指定MongoDB数据库的用户名密码
### 2. 启动服务
- **!!! 请在第一次启动前确保当前工作目录下 `.env.prod``bot_config.toml` 文件存在 !!!**\
- **!!! 请在第一次启动前确保当前工作目录下 `.env``bot_config.toml` 文件存在 !!!**\
由于Docker文件映射行为的特殊性若宿主机的映射路径不存在可能导致意外的目录创建而不会创建文件由于此处需要文件映射到文件需提前确保文件存在且路径正确可使用如下命令:
```bash
touch .env.prod
touch .env
touch bot_config.toml
```
@@ -41,8 +41,8 @@ NAPCAT_UID=$(id -u) NAPCAT_GID=$(id -g) docker-compose up -d
### 3. 修改配置并重启Docker
- 请前往 [🎀 新手配置指南](./installation_cute.md) 或 [⚙️ 标准配置指南](./installation_standard.md) 完成`.env.prod``bot_config.toml`配置文件的编写\
**需要注意`.env.prod`中HOST处IP的填写Docker中部署和系统中直接安装的配置会有所不同**
- 请前往 [🎀 新手配置指南](./installation_cute.md) 或 [⚙️ 标准配置指南](./installation_standard.md) 完成`.env``bot_config.toml`配置文件的编写\
**需要注意`.env`中HOST处IP的填写Docker中部署和系统中直接安装的配置会有所不同**
- 重启Docker容器:

View File

@@ -16,7 +16,7 @@
>
>点击 "新建API密钥" 按钮新建一个给MaiMBot使用的API KEY。不要忘了点击复制。
>
>之后打开MaiMBot在你电脑上的文件根目录使用记事本或者其他文本编辑器打开 [.env.prod](../.env.prod)
>之后打开MaiMBot在你电脑上的文件根目录使用记事本或者其他文本编辑器打开 [.env](../.env)
>这个文件。把你刚才复制的API KEY填入到 `SILICONFLOW_KEY=` 这个等号的右边。
>
>在默认情况下MaiMBot使用的默认Api都是硅基流动的。
@@ -27,9 +27,9 @@
>你需要使用记事本或者其他文本编辑器打开config目录下的 [bot_config.toml](../config/bot_config.toml)
>
>然后修改其中的 `provider = ` 字段。同时不要忘记模仿 [.env.prod](../.env.prod) 文件的写法添加 Api Key 和 Base URL。
>然后修改其中的 `provider = ` 字段。同时不要忘记模仿 [.env](../.env) 文件的写法添加 Api Key 和 Base URL。
>
>举个例子,如果你写了 `provider = "ABC"`,那你需要相应的在 [.env.prod](../.env.prod) 文件里添加形如 `ABC_BASE_URL = https://api.abc.com/v1` 和 `ABC_KEY = sk-1145141919810` 的字段。
>举个例子,如果你写了 `provider = "ABC"`,那你需要相应的在 [.env](../.env) 文件里添加形如 `ABC_BASE_URL = https://api.abc.com/v1` 和 `ABC_KEY = sk-1145141919810` 的字段。
>
>**如果你对AI模型没有较深的了解修改识图模型和嵌入模型的provider字段可能会产生bug因为你从Api网站调用了一个并不存在的模型**
>

View File

@@ -12,7 +12,7 @@
要设置这两个文件才能让机器人跑起来哦:
1. `.env.prod` - 这个文件告诉机器人要用哪些AI服务呢
1. `.env` - 这个文件告诉机器人要用哪些AI服务呢
2. `bot_config.toml` - 这个文件教机器人怎么和你聊天喵
## 🔑 密钥和域名的对应关系
@@ -22,7 +22,7 @@
1. 知道游乐园的地址(这就是域名 base_url
2. 有入场的门票(这就是密钥 key
`.env.prod` 文件里,我们定义了三个游乐园的地址和门票喵:
`.env` 文件里,我们定义了三个游乐园的地址和门票喵:
```ini
# 硅基流动游乐园
@@ -66,7 +66,7 @@ provider = "DEEP_SEEK" # 也去DeepSeek游乐园
### 🎯 简单来说
- `.env.prod` 文件就像是你的票夹,存放着各个游乐园的门票和地址
- `.env` 文件就像是你的票夹,存放着各个游乐园的门票和地址
- `bot_config.toml` 就是告诉机器人:用哪张票去哪个游乐园玩
- 所有模型都可以用同一个游乐园的票,也可以去不同的游乐园玩耍
- 如果用硅基流动的服务,就保持默认配置不用改呢~
@@ -75,7 +75,7 @@ provider = "DEEP_SEEK" # 也去DeepSeek游乐园
## ---让我们开始吧---
### 第一个文件:环境配置 (.env.prod)
### 第一个文件:环境配置 (.env)
这个文件就像是机器人的"身份证"呢告诉它要用哪些AI服务喵~
@@ -158,12 +158,12 @@ ban_user_id = [111222] # 比如不回复QQ号为111222的人的消息
# 模型配置部分的详细说明喵~
#下面的模型若使用硅基流动则不需要更改使用ds官方则改成在.env.prod自己指定的密钥和域名,使用自定义模型则选择定位相似的模型自己填写
#下面的模型若使用硅基流动则不需要更改使用ds官方则改成在.env自己指定的密钥和域名使用自定义模型则选择定位相似的模型自己填写
[model.llm_reasoning] #推理模型R1用来理解和思考的喵
name = "Pro/deepseek-ai/DeepSeek-R1" # 模型名字
# name = "Qwen/QwQ-32B" # 如果想用千问模型,可以把上面那行注释掉,用这个呢
provider = "SILICONFLOW" # 使用在.env.prod里设置的宏,也就是去掉"_BASE_URL"留下来的字喵
provider = "SILICONFLOW" # 使用在.env里设置的宏也就是去掉"_BASE_URL"留下来的字喵
[model.llm_reasoning_minor] #R1蒸馏模型是个轻量版的推理模型喵
name = "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B"
@@ -195,7 +195,7 @@ provider = "SILICONFLOW"
1. **关于模型服务**
- 如果你用硅基流动的服务,这些配置都不用改呢
- 如果用DeepSeek官方API要把provider改成你在.env.prod里设置的宏喵
- 如果用DeepSeek官方API要把provider改成你在.env里设置的宏喵
- 如果要用自定义模型,选择一个相似功能的模型配置来改呢
2. **主要模型功能**

View File

@@ -4,14 +4,14 @@
本项目需要配置两个主要文件:
1. `.env.prod` - 配置API服务和系统环境
1. `.env` - 配置API服务和系统环境
2. `bot_config.toml` - 配置机器人行为和模型
## API配置说明
`.env.prod``bot_config.toml` 中的API配置关系如下
`.env``bot_config.toml` 中的API配置关系如下
### 在.env.prod中定义API凭证
### 在.env中定义API凭证
```ini
# API凭证配置
@@ -30,7 +30,7 @@ CHAT_ANY_WHERE_BASE_URL=https://api.chatanywhere.tech/v1 # ChatAnyWhere API地
```toml
[model.llm_reasoning]
name = "Pro/deepseek-ai/DeepSeek-R1"
provider = "SILICONFLOW" # 引用.env.prod中定义的宏
provider = "SILICONFLOW" # 引用.env中定义的宏
```
如需切换到其他API服务只需修改引用
@@ -43,7 +43,7 @@ provider = "DEEP_SEEK" # 使用DeepSeek密钥
## 配置文件详解
### 环境配置文件 (.env.prod)
### 环境配置文件 (.env)
```ini
# API配置

View File

@@ -224,7 +224,7 @@ python bot.py
```
bot
├─ .env.prod
├─ .env
└─ config
└─ bot_config.toml
```
@@ -236,7 +236,7 @@ bot
本项目需要配置两个主要文件:
1. `.env.prod` - 配置API服务和系统环境
1. `.env` - 配置API服务和系统环境
2. `bot_config.toml` - 配置机器人行为和模型
#### API

View File

@@ -111,7 +111,7 @@ nb run
# 或
python3 bot.py
```
之后你就可以找到`.env.prod``bot_config.toml`这两个文件了
之后你就可以找到`.env``bot_config.toml`这两个文件了
关于文件内容的配置请参考:
- [🎀 新手配置指南](./installation_cute.md) - 通俗易懂的配置教程,适合初次使用的猫娘
- [⚙️ 标准配置指南](./installation_standard.md) - 简明专业的配置说明,适合有经验的用户

View File

@@ -82,7 +82,7 @@ nb run
python3 bot.py
```
之后你就可以找到`.env.prod``bot_config.toml`这两个文件了
之后你就可以找到`.env``bot_config.toml`这两个文件了
关于文件内容的配置请参考:
- [🎀 新手配置指南](./installation_cute.md) - 通俗易懂的配置教程,适合初次使用的猫娘

View File

@@ -87,7 +87,7 @@ pip install -r requirements.txt
### 5⃣ **配置文件设置让麦麦Bot正常工作**
- 修改环境配置文件:`.env.prod`
- 修改环境配置文件:`.env`
- 修改机器人配置文件:`bot_config.toml`
### 6⃣ **启动麦麦机器人**

View File

@@ -22,13 +22,13 @@ bot_config.toml: https://github.com/SengokuCola/MaiMBot/blob/main/template/bot_c
下载后,重命名为 `bot_config.toml`
打开它,按自己的需求填写配置文件
.env.prod: https://github.com/SengokuCola/MaiMBot/blob/main/template.env
下载后,重命名为 `.env.prod`
.env: https://github.com/SengokuCola/MaiMBot/blob/main/template.env
下载后,重命名为 `.env`
`HOST` 修改为 `0.0.0.0`,确保 maimbot 能被 napcat 访问
按下图修改 mongodb 设置,使用 `MONGODB_URI`
![](./pic/synology_.env.prod.png)
![](./pic/synology_.env.png)
`bot_config.toml``.env.prod` 放入之前创建的 `MaiMBot`文件夹
`bot_config.toml``.env` 放入之前创建的 `MaiMBot`文件夹
#### 如何下载?