AI小程序+SpringAI+管理后台+源码+支持动态添加大模型+支持动态添加AI应用

前言

今天给大家介绍一款 前端由uniapp开发的小程序,完美在小程序上运行,对话采用流式对话。后端由springboot+springai开发的应用软件源码。

功能简介

  • 支持在管理后台动态新增"DeepSeek","openai","千帆","智谱",等厂商的大模型。
  • 支持在管理后台动态新增AI应用。
  • 支持 "文本"和 "绘画" 。
  • 支持流式对话,动态调优AI应用的prompt提示词,历史对话轮数,System Role等大模型属性。
  • 内置AI应用的提示词都是大厂优化的提示词,有相当高的参考价值。

截图演示

小程序内置的AI应用截图

用dall-e-3 模型 绘画演示图

用 deepseek 测试文本聊天截图:

小程序 动态 切换模型截图

管理后台配置的大模型截图:

后台管理的应用列表截图

视频演示

https://githubs.xyz/show/c3cde6e3-8377-44ca-8ff0-87754094c938.mp4

系统技术介绍

程序前端采用uniapp代码编写, 完美在小程序运行。对话采用了websocket实现流式对话。前端代码截图如下:

管理后台采用了VUE3

后端采用了SpringBoot3 + SpringAI ,版本如下:

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.3.0</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.aiwaiter</groupId>
    <artifactId>ai-waiter-app</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>ai-waiter-app</name>
    <description>ai-waiter-app</description>

    <properties>
        <java.version>17</java.version>
        <spring-ai.version>1.0.0-SNAPSHOT</spring-ai.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-starter-model-qianfan</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-starter-model-zhipuai</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-starter-model-openai</artifactId>
        </dependency>
        //.......
</project>

熟悉springai的同学都知道,大模型的apikey都是直接配置到yml中的,是无法做到动态在管理后台配置的。所以本人没有用到自动装配,而是通过内部的动态构建Client方式。

整体源码,我已经整理清楚,移步获取:

复制代码
gitcode.典康姆/hadluo2/AI.git

项目部署步骤

项目包构建

由于阿里镜像的maven无法下载 spring-ai 相关的jar包。本人也将下载好的仓库打包到源码里面了, 用户自己构建时,记得替换仓库。

如果用户自己能搭飞机,用默认的maven的settings配置,也可以自己下载jar。

数据库

数据库采用了mysql8 ,用户需要自行安装mysql,然后将源码中的sql文件导入到数据库。

安装Redis

项目登录相关用到了redis,需要用户自行安装redis。

启动后端

启动前请检查yml配置是否正确。然后等待项目构建完成后,找到 AiWaiterAppApplication 类, 然后启动就可以了,项目启动占用8999端口。

管理后台端启动

node版本:v22.12.0

npm install

npm run dev

小程序端启动

直接将项目导入到hbuilder里面,然后安装微信开发者工具,然后运行就可以了,也可以直接运行在浏览器中。

结尾语

关注我,我将分享多更AI相关的知识。

相关推荐
云和数据.ChenGuang4 分钟前
LLM大模型对接本地Ollama部署模型
开发语言·人工智能·python·langchain
星禾元亨5 分钟前
用结构化数据与干净实体信号,让技术内容被 AI 搜索引擎稳定引用
数据库·人工智能·自动化·创业创新
清华kenny6 分钟前
连锁门店选择晓得养AI系统进行标准化管理的依据
大数据·人工智能·安徽晓得养
荆棘鸟智能12 分钟前
短历时洪水预报算法实践:水文模型与 LightGBM 残差订正融合
人工智能·算法·机器人
奈落2418 分钟前
数商云软文与科技要闻同页混排:从网易订阅聚合流的商业内容,到 linux.do 社区原文,AI 工程师的信息源要加一道“广告识别”工序
人工智能·科技·ai 办公
ViperL121 分钟前
[高光谱]DADnet-基于对抗生成的单源域泛化分类
人工智能·分类·数据挖掘
AI创界者23 分钟前
Python 进阶实战:AsyncIO 异步环境下的熔断器、限流器与代理模式深度融合
人工智能·aigc
水如烟25 分钟前
孤能子视角:SEP《人工智能的认识论》EIS读法·信任与证言——外包信:载体跑在生产前面,物已通约,信未自生
人工智能
落雪snowflake26 分钟前
论文精讲:A Language-Informed Loss for Visual Generation中文题目:一种面向视觉生成的语言信息引导损失函数
人工智能·深度学习·计算机视觉
andrsted27 分钟前
练题簿免费刷题小程序:和学习搭子共用一份题库,一起刷题复习
学习·面试·微信小程序·小程序·学习方法·刷题