mylxsw/aidea-server
AIdea 是一款支持 GPT 以及国产大语言模型通义千问、文心一言等,支持 Stable Diffusion 文生图、图生图、 SDXL1.0、超分辨率、图片上色的全能型 APP。
AIdea Server – 简介
AIdea Server 是一个用 Go 编写的开源后端,为 AIdea 客户端应用提供支持。它为聊天式大语言模型 (LLM) 和图像生成模型提供了一个可自托管的 API,并暴露了 OpenAI 兼容的 REST 接口,因此现有的支持 OpenAI 协议的工具可以直接调用它。
核心功能
- 聊天与补全 API – 将多个 LLM 提供商封装在统一的 OpenAI 兼容端点之后,支持流式响应。
- 图像生成 – 通过相同的 API 接口集成流行的图像生成模型(例如 Stable Diffusion 类服务)。
- 用户与计费管理 – 内置 Token 统计、价格表和支付集成(支付宝、Apple 等),实现使用变现。
- 多渠道通知 – 钉钉机器人、短信(阿里云、腾讯云)和邮件提醒。
- 辅助 AI 服务 – 语音转文字 (七牛)、文字转语音 (腾讯)、翻译 (有道)。
- 任务队列与调度器 – 通过内部队列系统运行异步任务(例如每日使用统计)。
- 速率限制与安全 – JWT 认证、用户级速率限制以及通过阿里云服务进行的各种内容安全检查。
- OpenAI 兼容 API – 任何理解 OpenAI API 的第三方客户端无需修改即可与 AIdea Server 通信。
架构与代码布局
| 目录 | 用途 |
|---|---|
api |
实现外部工具使用的 OpenAI 兼容端点。 |
server |
AIdea 客户端应用专用的端点。 |
cmd |
主入口 (main.go)。 |
config |
配置结构体和默认的 config.yaml。 |
pkg |
可供其他项目导入的公共 Go 包。 |
ai/ |
特定于提供商的模型适配器(聊天、图像等)。 |
repo/ |
基于内部 Eloquent ORM 构建的数据访问层(MySQL 等)。 |
service/ |
不属于控制器或仓库的业务逻辑。 |
queue/ |
带有消费者工作进程的简单任务队列实现。 |
payment/, coins/ |
计费、价格表和虚拟货币处理。 |
misc, rate, token, uploader, … |
工具模块(速率限制、JWT、文件上传等)。 |
该项目依赖两个内部框架:
- Glacier Framework – 一个基于
go-ioc构建的模块化 Go 框架,支持依赖注入。 - Eloquent ORM – 一个受 Laravel 启发、基于代码生成的 ORM,处理数据库迁移和模型。
快速开始 / 自托管
- 克隆仓库 并编辑
config.yaml(或提供环境变量)以指向您的数据库、Redis 和任何 AI 提供商密钥。 - 构建:
go build -o build/debug/aidea-server cmd/main.go - 运行 二进制文件,或使用提供的 Docker 部署仓库 (
mylxsw/aidea-docker)。 - 可选 – 按照
docs/deploy.md中的详细指南进行 systemd 或 Nginx 设置,或通过docs/deploy‑vip.md请求协助部署。
一个在线演示实例托管在 https://aidea.aicode.cc 以供快速测试。
社区与支持
- 微信讨论群 – README 中有二维码;通过添加 ID
x-prometheus加入。 - 微信公众号 – 发布广播和更新。
- GitHub – 服务器、客户端和 Docker 仓库的问题反馈与 Pull Request。
许可证
MIT – 个人、学术或商业用途免费。
总结
AIdea Server 是一个基于 Go 的可自托管后端,它将 LLM 和图像生成服务聚合在 OpenAI 兼容的 API 之后,增加了用户管理、计费和各种通知渠道,并可通过 Docker 或直接在 Linux 主机上部署。
相关
- 项目
- 项目
- 项目
- 项目