AI 写作伙伴,点亮你的创作灵感
See the codeEnglish | 中文
如果你想使用命令行+编辑器的方式,可搭配使用 novel-kit。
写作时容易卡在「主角叫什么」「故事发生在哪」「下一章写什么」这类问题上。Arboris 在需要时帮你理清思路、记录设定、给出可选方向,让想法落成故事。
在线体验: https://arboris.aozhiai.com
| 交流群 | 作者公众号![]() |
角色、地点、派系等设定集中记录,随时查阅,避免写到后期前后矛盾(如角色外貌、世界观规则等)。
零散的场景和灵感可交给 AI 梳理,生成从开头到结局的主线大纲。
状态不佳时可让 AI 先出草稿再按自己的风格修改;也可自己写开头,让 AI 续写以获取灵感。
支持一次生成多版内容,挑选最符合风格的部分,逐步让模型更贴合你的笔触。
目标是做一个能记住你的世界、理解角色、随故事推进的写作伙伴,而不是单纯的自动生成器。因此做了 Arboris 并选择开源,方便更多创作者使用。
# 1. 复制配置文件
cp .env.example .env
# 2. 编辑 .env 中的必填项:
# - SECRET_KEY: 随机字符串,用于 JWT 等
# - OPENAI_API_KEY: 大模型 API Key
# - ADMIN_DEFAULT_PASSWORD: 管理员密码(勿用默认值)
# 3. 启动(默认 SQLite,无需单独安装数据库)
docker compose up -d
# 启动后在浏览器访问 http://localhost:<端口>
# .env 中设置 DB_PROVIDER=mysql,然后执行:
DB_PROVIDER=mysql docker compose --profile mysql up -d
# 在 .env 中配置数据库地址、用户名、密码后执行:
DB_PROVIDER=mysql docker compose up -d
常用配置如下(完整项见 .env.example):
| 配置项 | 必填吗 | 说明 |
|---|---|---|
SECRET_KEY | ✅ | JWT 加密密钥,需自行随机生成并妥善保管 |
OPENAI_API_KEY | ✅ | 你的 LLM API Key(OpenAI 或兼容的) |
OPENAI_API_BASE_URL | ❌ | API 地址,默认是 OpenAI 官方的 |
OPENAI_MODEL_NAME | ❌ | 模型名称,默认 gpt-3.5-turbo |
ADMIN_DEFAULT_PASSWORD | ❌ | 管理员初始密码,部署后务必修改 |
ALLOW_USER_REGISTRATION | ❌ | 是否开放注册,默认 false |
SMTP_SERVER / SMTP_USERNAME | 开放注册时必填 | 邮件服务,用于发送验证码 |
数据存储: 默认 SQLite,数据在 Docker 卷中。需映射到本地时,在
.env中设置SQLITE_STORAGE_SOURCE=./storage。
Q: 不会用 Docker?
A: 安装 Docker Desktop(Windows/Mac)或 Docker Engine(Linux),按上文命令执行即可。
Q: API Key 会泄露吗?
A: 不会。密钥仅存在于服务端 .env,不向前端或用户暴露。
Q: 是否支持其他大模型?
A: 支持。只要提供 OpenAI 兼容接口,在 .env 中配置 OPENAI_API_BASE_URL 即可。
Q: 修改了代码如何参与?
A: 欢迎提交 PR 或 Issue。
Q: 提示"未配置默认 LLM API Key"怎么办?
A: 检查 .env 文件中的 OPENAI_API_KEY 是否正确配置。如果是个人用户,也可以在个人设置中配置自定义 API Key。
Q: 生成时提示"今日请求次数已达上限"?
A: 系统管理员可能设置了每日请求限制。解决方案:
daily_request_limit 配置)Q: 提示"AI 服务响应超时"或"无法连接到 AI 服务"?
A: 网络或 API 服务问题导致。可以:
OPENAI_API_BASE_URL 配置是否正确Q: 提示"AI 响应因长度限制被截断"?
A: 生成的内容超过了模型的输出限制。建议:
Q: 提示"AI 未返回有效内容"或"AI 服务内部错误"?
A: AI 服务端出现问题。通常是暂时性的,可以:
Q: 提示"蓝图中未找到对应章节纲要"?
A: 在生成章节内容前,需要先在蓝图(大纲)中创建对应章节的纲要。请先完善章节大纲再进行生成。
Q: 提示"未配置摘要提示词"?
A: 系统缺少必要的 Prompt 配置。管理员需要在后台配置名为 extraction 的提示词模板,用于生成章节摘要。
Q: 提示"AI 返回的内容格式不正确"或 JSON 解析错误?(较常见)
A: AI 返回内容无法解析为有效 JSON。可能原因与处理方式:
原因 1:模型能力不足 - 某些模型难以稳定输出结构化 JSON
原因 2:内容过长 - 某些逆向API可能无法支持长输出。
临时处理: 重试几次,或更换 AI 模型
Q: 生成的内容质量不理想怎么办?
A: 可以尝试:
cd backend
python3 -m venv .venv
source .venv/bin/activate # Windows 使用 .venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload
默认会监听 http://127.0.0.1:8000,你可以通过 --host、--port 调整,或加上 --reload 保持热重载。
cd frontend
npm install
npm run dev
开发服务器默认运行在 http://127.0.0.1:5173,可通过 --host 参数暴露给局域网设备。
npm run build,构建产物位于 frontend/dist/pip install -r requirements.txt 安装到目标环境,或基于 deploy/Dockerfile 构建镜像dist 目录,并由后端提供 API推荐在根目录下使用 Compose 文件完成一体化部署:
docker compose -f deploy/docker-compose.yml up -d --build
如需推送镜像,可在 deploy 目录执行 docker build -t <registry>/arboris:<tag> .,测试后再 docker push 发布。
使用 Arboris 写出作品后,欢迎与我们分享。祝写作顺利。
This project is licensed under the MIT License - see the LICENSE file for details.
92 followers · starred Dec 2025
81 followers · starred Oct 2025
15 followers · starred Nov 2025
27 followers · starred Oct 2025
AI 写作伙伴,点亮你的创作灵感
See the codeEnglish | 中文
如果你想使用命令行+编辑器的方式,可搭配使用 novel-kit。
写作时容易卡在「主角叫什么」「故事发生在哪」「下一章写什么」这类问题上。Arboris 在需要时帮你理清思路、记录设定、给出可选方向,让想法落成故事。
在线体验: https://arboris.aozhiai.com
| 交流群 | 作者公众号![]() |
角色、地点、派系等设定集中记录,随时查阅,避免写到后期前后矛盾(如角色外貌、世界观规则等)。
零散的场景和灵感可交给 AI 梳理,生成从开头到结局的主线大纲。
状态不佳时可让 AI 先出草稿再按自己的风格修改;也可自己写开头,让 AI 续写以获取灵感。
支持一次生成多版内容,挑选最符合风格的部分,逐步让模型更贴合你的笔触。
目标是做一个能记住你的世界、理解角色、随故事推进的写作伙伴,而不是单纯的自动生成器。因此做了 Arboris 并选择开源,方便更多创作者使用。
# 1. 复制配置文件
cp .env.example .env
# 2. 编辑 .env 中的必填项:
# - SECRET_KEY: 随机字符串,用于 JWT 等
# - OPENAI_API_KEY: 大模型 API Key
# - ADMIN_DEFAULT_PASSWORD: 管理员密码(勿用默认值)
# 3. 启动(默认 SQLite,无需单独安装数据库)
docker compose up -d
# 启动后在浏览器访问 http://localhost:<端口>
# .env 中设置 DB_PROVIDER=mysql,然后执行:
DB_PROVIDER=mysql docker compose --profile mysql up -d
# 在 .env 中配置数据库地址、用户名、密码后执行:
DB_PROVIDER=mysql docker compose up -d
常用配置如下(完整项见 .env.example):
| 配置项 | 必填吗 | 说明 |
|---|---|---|
SECRET_KEY | ✅ | JWT 加密密钥,需自行随机生成并妥善保管 |
OPENAI_API_KEY | ✅ | 你的 LLM API Key(OpenAI 或兼容的) |
OPENAI_API_BASE_URL | ❌ | API 地址,默认是 OpenAI 官方的 |
OPENAI_MODEL_NAME | ❌ | 模型名称,默认 gpt-3.5-turbo |
ADMIN_DEFAULT_PASSWORD | ❌ | 管理员初始密码,部署后务必修改 |
ALLOW_USER_REGISTRATION | ❌ | 是否开放注册,默认 false |
SMTP_SERVER / SMTP_USERNAME | 开放注册时必填 | 邮件服务,用于发送验证码 |
数据存储: 默认 SQLite,数据在 Docker 卷中。需映射到本地时,在
.env中设置SQLITE_STORAGE_SOURCE=./storage。
Q: 不会用 Docker?
A: 安装 Docker Desktop(Windows/Mac)或 Docker Engine(Linux),按上文命令执行即可。
Q: API Key 会泄露吗?
A: 不会。密钥仅存在于服务端 .env,不向前端或用户暴露。
Q: 是否支持其他大模型?
A: 支持。只要提供 OpenAI 兼容接口,在 .env 中配置 OPENAI_API_BASE_URL 即可。
Q: 修改了代码如何参与?
A: 欢迎提交 PR 或 Issue。
Q: 提示"未配置默认 LLM API Key"怎么办?
A: 检查 .env 文件中的 OPENAI_API_KEY 是否正确配置。如果是个人用户,也可以在个人设置中配置自定义 API Key。
Q: 生成时提示"今日请求次数已达上限"?
A: 系统管理员可能设置了每日请求限制。解决方案:
daily_request_limit 配置)Q: 提示"AI 服务响应超时"或"无法连接到 AI 服务"?
A: 网络或 API 服务问题导致。可以:
OPENAI_API_BASE_URL 配置是否正确Q: 提示"AI 响应因长度限制被截断"?
A: 生成的内容超过了模型的输出限制。建议:
Q: 提示"AI 未返回有效内容"或"AI 服务内部错误"?
A: AI 服务端出现问题。通常是暂时性的,可以:
Q: 提示"蓝图中未找到对应章节纲要"?
A: 在生成章节内容前,需要先在蓝图(大纲)中创建对应章节的纲要。请先完善章节大纲再进行生成。
Q: 提示"未配置摘要提示词"?
A: 系统缺少必要的 Prompt 配置。管理员需要在后台配置名为 extraction 的提示词模板,用于生成章节摘要。
Q: 提示"AI 返回的内容格式不正确"或 JSON 解析错误?(较常见)
A: AI 返回内容无法解析为有效 JSON。可能原因与处理方式:
原因 1:模型能力不足 - 某些模型难以稳定输出结构化 JSON
原因 2:内容过长 - 某些逆向API可能无法支持长输出。
临时处理: 重试几次,或更换 AI 模型
Q: 生成的内容质量不理想怎么办?
A: 可以尝试:
cd backend
python3 -m venv .venv
source .venv/bin/activate # Windows 使用 .venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload
默认会监听 http://127.0.0.1:8000,你可以通过 --host、--port 调整,或加上 --reload 保持热重载。
cd frontend
npm install
npm run dev
开发服务器默认运行在 http://127.0.0.1:5173,可通过 --host 参数暴露给局域网设备。
npm run build,构建产物位于 frontend/dist/pip install -r requirements.txt 安装到目标环境,或基于 deploy/Dockerfile 构建镜像dist 目录,并由后端提供 API推荐在根目录下使用 Compose 文件完成一体化部署:
docker compose -f deploy/docker-compose.yml up -d --build
如需推送镜像,可在 deploy 目录执行 docker build -t <registry>/arboris:<tag> .,测试后再 docker push 发布。
使用 Arboris 写出作品后,欢迎与我们分享。祝写作顺利。
This project is licensed under the MIT License - see the LICENSE file for details.
92 followers · starred Dec 2025
81 followers · starred Oct 2025
15 followers · starred Nov 2025
27 followers · starred Oct 2025