前端开源学习项目和学习笔记 |
RuoYi AI 是一个基于 ruoyi-plus 框架开发的后端项目,专注于集成 AI 聊天和绘画功能。它完全开源免费,采用 Java17 和 SpringBoot 3.X 技术栈,后台管理界面使用 elementUI 构建,简洁易用。该项目支持 ChatGPT4、Dall-E-3 等多种 AI 模型,同时提供语音克隆、文生图、微信小程序等功能,适用于开发者快速搭建具备 AI 能力的应用。ruoyi-ai 的设计目标是提供一个灵活、可扩展的后端解决方案,助力用户实现智能聊天和图像生成的需求。无论是个人开发者还是企业用户,都可以通过其丰富的功能和文档,轻松定制和部署。
二、功能列表
AI 聊天 支持:集成 ChatGPT4、ChatGPT-4-All 等模型,实现智能对话。
AI 绘画功能:支持 Dall-E-3 和文生图模型,生成创意图像。
语音克隆:提供语音生成和克隆功能,可用于个性化语音交互。
微信小程序对接:支持小程序端开发,实现跨平台使用。
实时支付集成:支持个人二维码实时到账,基于易支付系统。
个人微信接入:允许将个人微信与 ChatGPT 连接,提升社交体验。
后台管理界面:基于 elementUI,提供用户友好的管理操作。
开源免费:代码完全开放,适合二次开发和学习。
三、安装流程
ruoyi-ai 是一个基于 GitHub 的开源项目,需要一定的开发环境配置才能运行。以下是详细的安装步骤:
确保你的电脑已安装以下软件:
Java 17:本项目使用 Java17,需下载并配置环境变量。
Maven:用于依赖管理和项目构建,推荐最新稳定版。
Git:用于从 GitHub 克隆代码。
MySQL:数据库支持,需提前安装并创建数据库。
Node.js(可选):如果需要调整前端管理界面。
安装完成后,检查版本:
java -version # 确保输出为 17.x.xmvn -v # 检查 Maven 是否正常git --version # 确认 Git 已安装
打开终端,输入以下命令克隆 ruoyi-ai 仓库:
git clone https://github.com/ageerle/ruoyi-ai.gitcd ruoyi-ai
数据库配置:
在 MySQL 中创建一个新数据库,例如
ruoyi_ai_db
。
找到项目根目录下的
application.yml
文件,修改数据库连接信息:
spring:datasource:url: jdbc:mysql://localhost:3306/ruoyi_ai_db?useSSL=false&serverTimezone=UTCusername: root
password: 你的密码
AI 模型密钥(可选):
若使用 ChatGPT 或 Dall-E 等模型,需在配置文件中添加 API 密钥。例如:
ai:chatgpt:api-key
: 你的ChatGPT密钥dalle:api-key: 你的Dall-E密钥
在项目根目录下运行以下命令:
mvn clean install # 编译并安装依赖mvn spring-boot:run # 启动项目
启动成功后,访问 http://localhost:8080 检查后台管理界面是否正常显示。
ruoyi-ai 的前端管理界面需要单独克隆和运行:
克隆前端项目:
git clone https://github.com/ageerle/ruoyi-admin.gitcd ruoyi-
admin
安装依赖并启动:
npm install # 或 yarn installnpm run dev # 或 yarn dev
前端默认运行在 http://localhost:8081,可与后端联动使用。
配置模型:
在
application.yml
中填入 ChatGPT API 密钥。
重启项目,确保配置生效 。
访问接口:
使用 POST 请求调用聊天接口,例如:
curl -X POST "http://localhost:8080/api/chat" -H "Content-Type: application/json" -d '{"message": "你好,我想了解AI"}'
返回结果为 JSON 格式,包含 AI 的回复。
测试效果:
可通过前端管理界面输入消息,查看实时对话效果。若未配置前端,直接用工具(如 Postman)测试。
配置文生图模型:
在配置文件中添加 Dall-E-3 的 API 密钥。
检查依赖是否包含图像处理库(如 imageio)。
生成图像:
调用绘画接口:
curl -X POST "http://localhost:8080/api/draw" -H "Content-Type: application/json" -d '{"prompt": "一幅未来城市的画"}'
返回结果为图像文件的下载链接或 Base64 编码。
查看结果:
在管理界面中,点击“AI 绘画”模块,输入描述后生成并下载图像。
准备音频文件:
上传一段清晰的音频文件(如 MP3 格式)到服务器。
调用接口:
使用 POST 请求:
curl
-X POST "http://localhost:8080/api/voice/clone" -F "[email protected]"
返回克隆后的语音文件。
应用场景:
可用于生成个性化语音提示,集成到小程序或聊天中。
克隆小程序端:
获取小程序代码:
git clone https://github.com/ageerle/ruoyi-uniapp.git
配置后端地址:
在小程序项目中修改 config.js,指向后端地址:
const BASE_URL = "http://localhost:8080";
运行小程序:
使用微信开发者工具打开项目,预览效果。
配置易支付:
注册易支付账号,获取密钥。
在 application.yml 中添加:
payment:yipay:key: 你的易支付密钥
生成二维码 :
访问
http://localhost:8080/api/payment/qrcode
,
返回支付二维码图片。
验证支付:
通过回调接口接收支付结果,确保实时到账。
绑定微信:
在管理界面中输入个人微信号和 ChatGPT 密钥。
发送消息:
在微信中向指定服务号发送消息,后端自动调用 ChatGPT 返回回复。
测试:
发送“你好”试试,查看是否收到智能回复。
安全性:API 密钥请妥善保存,避免泄露。
性能优化:若请求频繁,可配置 Redis 缓存,修改
application.yml
:
spring:redis:host: localhost
port: 6379
文档支持:项目提供详细文档,位于 GitHub 仓库的 README.md,遇到问题可查阅。
源码地址
开源地址: 关注 并回复【 ruoyi-ai 】获取项目源码。
如需技术服务,可长按识别联系我~
|
21世纪经济报道 · 恒大再增持,流通股或不足15%,万科A彻底沦为高度控盘庄股! 8 年前 |
|
人神共奋 · 节日怎样安排加班,才能人人满意又公平? 8 年前 |
|
新闻夜航 · 吃进两个枣,吐出一个枣核……黑龙江3岁女孩“囫囵吞枣”,枣核尖儿刺入肠壁! 7 年前 |
|
青年电影手册 · 谢霆锋张柏芝吴秀波张丰毅陈梓豪谁最善变? 7 年前 |
|
赛雷 · 店老板告诉我改灯就要改氙气,我反手就是一巴掌 7 年前 |