当前位置: 首页> 房产> 政策 > 【轻松掌握】使用Spring-AI轻松访问大模型本地化部署并搭建UI界面访问指南

【轻松掌握】使用Spring-AI轻松访问大模型本地化部署并搭建UI界面访问指南

时间:2025/7/12 21:56:29来源:https://blog.csdn.net/qq_42874315/article/details/140967813 浏览次数:0次

文章目录

  • 读前必看
  • 什么是Spring-AI
  • 目前已支持的对接模型
  • 本文使用Spring-AI版本
  • 构建项目
    • 选择必要的依赖
    • 配置系统变量
  • 聊天模型API
    • 配置文件
    • 方式1-使用默认配置
    • 方式2-自定义配置
    • 配置其他参数
    • 使用示例
  • 图像模型API
    • 配置文件
    • 方式1-使用默认配置
    • 方式2-自定义配置
    • 配置其他参数
    • 使用示例
  • 音频翻译文本模型API
    • 配置文件
    • 使用默认配置
    • 配置其他参数
    • 使用示例
  • 文本转语音模型API
    • 使用默认配置
    • 配置其他参数
    • 使用示例
  • SpringAI多模态API
    • 方式1-读取本地图片,附带文本需求
    • 方式2-传入图片URL地址
    • 使用示例
  • 大模型工具Ollama
    • 官方网站
    • 配置要求
    • 下载安装
    • 可用的大模型
    • 搜索模型
    • 选择版本
    • 自定义模型安装位置
    • 安装阿里千问
      • 安装qwen:0.5b模型
      • 测试
  • 使用Spring-AI访问Ollama模型
    • 访问模型端口获取
    • 构建项目-选择必要的依赖
    • 配置文件
    • 使用默认配置访问
    • 出现报错
      • 解决方案
        • 修改配置文件
    • 使用示例
  • Ollama的Web&Desktop
    • Open WebUI
    • 部署Open WebUI的两种方式
    • 安装Docker
    • Docker部署Open WebUI
      • 执行命令
      • 下载完成
    • 启动
    • 访问Open WebUI
      • 进入到主页面
      • 设置模型
      • 演示
  • Lobe Chat界面框架
    • 部署方式
      • 使用Docker部署
        • 命令
        • 拉取镜像
    • 访问LobeHub
    • 设置API-KEY
    • 再次访问
    • Lobe Chat助手
      • 添加一个助手
      • 使用助手
    • Lobe Chat使用Ollama
      • 使用本地安装的大模型qwen:0.5b
      • 下载gemma:2b使用
  • 大模型的选择
  • 示例代码仓库
  • 使用大模型给本文起个标题
  • 常见问题
    • Spring-AI访问响应对象转换报错
      • 解决方案
      • 参考原文
    • 镜像拉取问题
      • 退出登录
      • 重新登录
      • 问题解决
  • 最后

读前必看

通过本文你将学会

  • 快速上手Spring-AI:聊天、图像、音频翻译、文本转语音、多模态应用

  • Ollama本地部署:高效安装与使用大模型

  • Lobe Chat与WebUI:直观界面,轻松访问本地大模型

  • 本文示例代码仓库地址:https://gitee.com/chenjiahao0205/spring-ai-learning

  • 快速使用

    • 快速搭建本地大模型并使用的方案:Ollama + Docker + Lobe Chat(安装加使用最多花费一个小时,跳到对应章节即可)

什么是Spring-AI

Spring Al是一个AI工程领域的应用程序框架
它的目标是将Spring生态系统的设计原则应用于于人工智能领域,比如Spring生态系统的可移植性和模块化设计,并推广使用POJO来构建人工智能领域应用程序;
Spring AI并不是要构建一个自己的AI大模型,而是让你对接各种AI大模型

官方文档:https://spring.io/projects/spring-ai#learn

Spring-AI文档:https://docs.spring.io/spring-ai/reference/1.0/getting-started.html

目前已支持的对接模型

在这里插入图片描述

https://spring.io/projects/spring-ai#overview

主要分类有聊天、文本到图像、嵌入式等

本文使用Spring-AI版本

本文使用的spring-ai版本为1.0.0-SNAPSHOT

构建项目

选择必要的依赖

在这里插入图片描述

配置系统变量

这里为了隐藏api-key和base-url细节,将他们配置到环境变量中了

在这里插入图片描述

聊天模型API

配置文件

在这里插入图片描述

方式1-使用默认配置

在这里插入图片描述

可以在配置文件指定模型(其他参数也可以在这里配置,例如温度等,参考官方文档https://docs.spring.io/spring-ai/reference/api/chat/openai-chat.html)

在这里插入图片描述

方式2-自定义配置

在这里插入图片描述

配置其他参数

在这里插入图片描述

使用示例

在这里插入图片描述

图像模型API

配置文件

在这里插入图片描述

方式1-使用默认配置

在这里插入图片描述

方式2-自定义配置

在这里插入图片描述

配置其他参数

在这里插入图片描述

使用示例

在这里插入图片描述

在这里插入图片描述

音频翻译文本模型API

https://www.bilibili.com/video/BV1d1421d7Fy?p=32

配置文件

在这里插入图片描述

使用默认配置

在这里插入图片描述

配置其他参数

在这里插入图片描述

使用示例

在这里插入图片描述

文本转语音模型API

使用默认配置

在这里插入图片描述

配置其他参数

在这里插入图片描述

使用示例

在这里插入图片描述

SpringAI多模态API

例如:提问的时候附带以上图片,参考图片回答问题

方式1-读取本地图片,附带文本需求

在这里插入图片描述

方式2-传入图片URL地址

在这里插入图片描述

使用示例

在这里插入图片描述

在这里插入图片描述

大模型工具Ollama

官方网站

https://ollama.com/

配置要求

  • 运行一个7B(70亿参数)模型,至少需要8G内存
  • 13B(130亿参数)的模型至少需要16B的内存
  • 33B(330亿参数)的模型至少需要32G的内存

在磁盘至少要预留50G

下载安装

在这里插入图片描述

可用的大模型

https://ollama.com/library

在这里插入图片描述

搜索模型

在这里插入图片描述

选择版本

在这里插入图片描述

复制右边代码到控制台执行即可

自定义模型安装位置

在这里插入图片描述

安装阿里千问

安装qwen:0.5b模型

在这里插入图片描述

测试

在这里插入图片描述

使用Spring-AI访问Ollama模型

访问模型端口获取

Ollama api会监听11434端口

windows查看端口:netstat -ano | findstr 11434

在这里插入图片描述

在这里插入图片描述

代码中访问11434端口即可

构建项目-选择必要的依赖

这里不选择OpenAI了,选择Ollama

在这里插入图片描述

在这里插入图片描述

配置文件

在这里插入图片描述

使用默认配置访问

在这里插入图片描述

出现报错

在这里插入图片描述

默认使用的mistral模型,我们下载的qwen:0.5b模型,所以报错了

解决方案

  • 方案1:下载mistral模型(太大了,这里先不下载了)
  • 方案2:指定模型

这里采用方案2解决

修改配置文件

在这里插入图片描述

使用示例

在这里插入图片描述

Ollama的Web&Desktop

Open WebUI

Open WebUI 官网:https://www.openwebui.com/

部署Open WebUI的两种方式

  • 方式1:Docker(官方推荐)
  • 方式2 :源码安装
    • https://docs.openwebui.com/getting-started/#install-from-open-webui-github-repo

安装Docker

Windows下使用Docker的工具Docker Desktop

下载地址:https://www.docker.com/products/docker-desktop/

在这里插入图片描述

Docker部署Open WebUI

https://docs.openwebui.com/getting-started/#installation-with-default-configuration

在这里插入图片描述

安装Open WebUI命令

docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v D:\Docker\open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

在这里插入图片描述

docker数据会同步保存在本地磁盘的该位置

执行命令

在这里插入图片描述

下载完成

在这里插入图片描述

启动

docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v D:\Docker\open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

在这里插入图片描述

访问Open WebUI

我们通过3000端口映射的8080

http://localhost:3000/

在这里插入图片描述

进入到主页面

在这里插入图片描述

设置模型

在这里插入图片描述

演示

在这里插入图片描述

Lobe Chat界面框架

官网:https://lobehub.com

一件免费拥有自己的ChatGPT/Gemini/claude/ollama应用

部署方式

https://github.com/lobehub/lobe-chat/blob/main/README.zh-CN.md#-%E5%BC%80%E7%AE%B1%E5%8D%B3%E7%94%A8

完整部署教程:https://lobehub.com/zh/docs/self-hosting/start

使用Docker部署

命令
docker run -d -p 3210:3210 -e OPENAI_API_KEY=sk-xxxx -e ACCESS_CODE=lobe66 --name lobe-chat lobehub/lobe-chat$ docker run -d -p 3210:3210 -e OPENAI_API_KEY=sk-xxxx -e OPENAI_PROXY_URL=https://api-proxy.com/v1 -e ACCESS_CODE=lobe66 --name lobe-chat lobehub/lobe-chat

OPENAI_API_KEY=目前可以先随便填充一个,后面再UI界面设置

在这里插入图片描述

拉取镜像

在这里插入图片描述

访问LobeHub

http://localhost:3210

在这里插入图片描述

设置API-KEY

在这里插入图片描述

再次访问

在这里插入图片描述

Lobe Chat助手

添加一个助手

在这里插入图片描述

使用助手

在这里插入图片描述

Lobe Chat使用Ollama

在这里插入图片描述

使用本地安装的大模型qwen:0.5b

在这里插入图片描述

下载gemma:2b使用

在这里插入图片描述

在这里插入图片描述

大模型的选择

大模型排行榜:https://www.superclueai.com/

示例代码仓库

https://gitee.com/chenjiahao0205/spring-ai-learning

在这里插入图片描述

使用大模型给本文起个标题

在这里插入图片描述

常见问题

Spring-AI访问响应对象转换报错

org.springframework.web.client.RestClientException: Error while extracting response for type [org.springframework.ai.openai.api.OpenAiApi$EmbeddingList<org.springframework.ai.openai.api.OpenAiApi$Embedding>] and content type [application/json;charset=utf-8]

在这里插入图片描述

解决方案

项目中添加该依赖

<dependency><groupId>org.apache.httpcomponents.client5</groupId><artifactId>httpclient5</artifactId><version>5.2.1</version>
</dependency>

参考原文

https://stackoverflow.com/questions/78121525/spring-ai-openai-error-extracting-response-of-type-openaiapiembeddinglist

镜像拉取问题

在这里插入图片描述

退出登录

在这里插入图片描述

重新登录

在这里插入图片描述

问题解决

在这里插入图片描述

最后

本文结合B站视频学习总结得到,参考视频:https://www.bilibili.com/video/BV1d1421d7Fy/

感谢大家看到这里,文章如有不足,欢迎大家指出;彦祖点个赞吧彦祖点个赞吧彦祖点个赞吧,欢迎关注程序员五条!

关键字:【轻松掌握】使用Spring-AI轻松访问大模型本地化部署并搭建UI界面访问指南

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: