Skip to content

Latest commit

 

History

History
143 lines (103 loc) · 6.12 KB

deploy.md

File metadata and controls

143 lines (103 loc) · 6.12 KB

部署指南

建议大家尽可能的自己去部署,遇到问题在 GitHub Issues 提出,如果实在懒得搞,可以找我来帮你部署,详情参考 服务器代部署说明

由于时间仓促,文档可能尚未详尽,我将在后续逐步补充详细的说明文档。

架构草图

image

项目依赖

image

必选依赖

  • MySQL 5.7+

  • Redis 7.0+ (低版本兼容性未知)

  • OpenAI Key

  • 七牛云对象存储 Kodo 服务 (需要配置以下图片样式)

    名称 接口
    avatar imageView2/1/w/400/h/400/format/webp/q/75
    thumb imageView2/2/w/1280/h/1280/format/webp/interlace/1/q/80|imageslim
    thumb_500 imageView2/2/w/500/h/500/format/webp/q/75
    square_500 imageView2/1/w/500/h/500/format/jpg/q/75
    fix_square_1024 imageMogr2/auto-orient/thumbnail/!1024x1024r/gravity/Center/crop/1024x1024/blur/1x0/quality/75
    resize1024x576 imageView2/1/w/1024/h/576/format/png/q/75
    resize576x1024 imageView2/1/w/576/h/1024/format/png/q/75
    resize768x768 imageView2/1/w/768/h/768/format/png/q/75

可选依赖

  • 邮件服务器(邮箱登录、注册功能暂未开放)
  • 短信服务(如需注册功能,则以下至少有一个)
    • 阿里云短信服务
    • 腾讯云短信服务
  • 内容安全检测(使用阿里云的内容安全服务,用于检测提示语中是否包含敏感词汇)
  • 有道翻译 API 接口(翻译功能、文生图及图生图提示语中文转英文)
  • 百度文心千帆大模型 Keys,支持以下模型 【开通指南
    • model_ernie_bot_turbo
    • model_ernie_bot
  • 阿里灵积平台模型 Keys,支持以下模型
    • qwen-v1
  • 讯飞星火大语言模型 Keys,支持以下模型
    • general
    • generalv2
  • Anthropic API Keys,支持以下模型
    • claude-instant
    • cluade-2.0
  • DeepAI 平台 Keys,用于图片超分辨率、上色
  • Stability AI Stable Diffusion 官方提供的 API,用于 SDXL 1.0 模型文生图、图生图
  • Leap 平台 Keys,用于 Leap 平台提供的文生图、图生图模型
  • Fromston 国内 6pen 团队提供的 Keys,用于文生图、图生图模型
  • getimg.ai 平台 Keys,用于文生图、图生图模型
  • 支付宝在线支付

部署步骤

1. 初始化 MySQL 数据库

创建数据库

CREATE DATABASE aidea_server CHARSET utf8mb4;

自 2023 年 11 月 29 日起,新装用户不需要执行下面的步骤,数据库迁移将自动完成,无需人为干预。

老用户依然需要将这里面所有的 sql 依次执行,直到 2023112901-mix.sql 文件为止,然后在配置文件 config.yaml 中,增加配置 enable-migrate: true,此后版本升级不在需要手动执行 SQL。

请注意:老用户一定要先执行完所有的 SQL 后再修改配置文件增加 enable-migrate: true

按顺序执行 migrate/sql/*.sql 文件,完成数据库的初始化。

这里以 MySQL 命令行的方式为例:

mysql> CREATE DATABASE aidea_server CHARSET utf8mb4;
mysql> USE aidea_server;
mysql> SOURCE /Users/mylxsw/Workspace/codes/ai/ai-server/migrate/sql/2023090801-ddl.sql;
mysql> SOURCE /Users/mylxsw/Workspace/codes/ai/ai-server/migrate/sql/2023090802-dml.sql;
mysql> SOURCE /Users/mylxsw/Workspace/codes/ai/ai-server/migrate/sql/2023092501-dml.sql;
...

注意:在 migrate/sql 目录中包含很多 .sql 的文件,你需要按照时间顺序依次执行所有的 SQL 文件,以完成数据库的初始化。

2. 创建配置文件

config.yaml 为范例,修改配置文件,放置在服务器的任意目录(建议目录 /etc/aidea-server.yaml)。

完整配置选项参考 config/flag.go 文件。

3. 启动服务

将编译好的软件包放置在服务器的任意目录(建议目录 /usr/local/bin/aidea-server),执行以下命令启动服务

/usr/local/bin/aidea-server --conf /etc/aidea-server.yaml

也可以使用 Docker 容器启动服务,该部分文档待补充。

常见问题

  1. 部署过程中遇到问题,不知道该如何解决

    请在 GitHub Issues 提出你的问题,有时间的时候我会尽快回复。

  2. 部署文档不详细,什么时候补充?

    有空的时候会补充,但是不保证时间,大家普遍遇到的问题会随时更新。

  3. 是否支持 Docker 一键部署?

    有,在这里 mylxsw/aidea-docker

  4. 部署了服务端之后,客户端要怎么修改才能使用自己的服务端呢?

    请 Fork 项目 mylxsw/aidea,然后修改 lib/helper/constant.dart 文件,找到 apiServerURL 常量,修改为自己服务器的地址,然后重新打包客户端即可。

    // API 服务器地址
    const apiServerURL = 'https://api.aidea.com';
  5. 有没有详细的数据库设计文档?

    没有,但是有一份简要版的说明文档,参考 常用表结构

  6. 我不想自己安装,能否帮我部署一套?

    建议大家尽可能的自己去部署,遇到问题在 GitHub Issues 提出,如果实在懒得搞,可以找我来帮你部署,详情参考 服务器代部署说明

  7. 七牛云对象存储 Kodo 在哪里配置图片样式?

    image

  8. 新用户没有智慧果,无法使用聊天功能

    请在数据库中,参考 users 表和 quota 表,手动为用户添加智慧果。