SpringAI(二)

2024-06-09 23:20
文章标签 springai

本文主要是介绍SpringAI(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大模型:具有大规模参数和复杂计算结构的机器学习模型.通常由深度神经网络构建而成,拥有数十亿甚至数千亿个参数.其设计目的在于提高模型的表达能力和预测性能,应对复杂的任务和数据.

SpringAI是一个AI工程领域的应用程序框架     大概推出时间是2023年7月份(不确定)

目的是将Spring生态系统的设计原则应用于人工智能领域,如Spring生态系统的可移植性和模块化设计,并推广使用POJO来构建人工智能领域应用程序.

SpringAI并不是构建大模型,而是对接各种AI大模型

spring.io

SpringAI提供的API支持跨人工智能提供商的聊天,文本到图像和嵌模型等,同时支持同步和流API选项

引入Spring web  lombok openAi依赖  

pom.xml

<?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.example</groupId><artifactId>spring-ai-01-chat</artifactId><version>0.0.1-SNAPSHOT</version><name>spring-ai-01-chat</name><description>Demo project for Spring Boot</description><properties><java.version>17</java.version><spring-ai.version>1.0.0-M1</spring-ai.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-openai-spring-boot-starter</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><!--因已经有了父项目,下面写法相当于又添加一个父项目因此上面的spring-ai-openai-spring-boot-starter不需要写版本号--><dependencyManagement><dependencies><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-bom</artifactId><version>${spring-ai.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><excludes><exclude><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></exclude></excludes></configuration></plugin></plugins></build><!--原因Maven中央仓库暂时还没有Spring ai的依赖--><repositories><!--这个是里程碑版本(稳定版)仓库--><repository><id>spring-milestones</id><name>Spring Milestones</name><url>https://repo.spring.io/milestone</url><snapshots><enabled>false</enabled></snapshots></repository><!--快照版本仓库--><repository><id>spring-snapshots</id><name>Spring Snapshots</name><url>https://repo.spring.io/snapshot</url><snapshots><enabled>false</enabled></snapshots></repository></repositories></project>

变量名写什么  application.yml里就怎么写 比如下面是${api-key}和${base-url}

OpenAi的自动配置类

图片生成   dall-e-3模型只能生成一张

图片的宽高调整  只能dall-e-2可以设置

大模型工具Ollama

官网:https://ollama.com

是一个用于部署和运行各种开源大模型的工具

能够帮助用户快速在本地运行各种大模型,极大地简化了大模型在本地运行的过程

用户通过执行几条命令就能在本地运行开源大模型,如 Llama2等

Ollama是一个大模型部署运行工具,该工具里面可以部署运行各种大模型,方便开发者在本地搭建一套大模型运行环境

下载:Download Ollama on macOS

Ollama的运行收到所使用模型大小的影响

安装完成  自动运行   cmd

ollama常用命令

ollama serve       启动ollama
ollama create      从模型文件创建模型
ollama show        显示模型信息
ollama run         运行模型
ollama pull        从注册表中拉取模型
ollama push        将模型推送到注册表
ollama list        列出模型
ollama cp          复制模型
ollama rm          删除模型
ollama help        获取有关任何命令的帮助信息
 

Ollama是个工具,本身不是大模型

下面 需要下载大模型,然后在本地部署,就可以访问

运行模型的命令  ollama run 模型名

通义千问   qwen

以管理员运行

ollama api默认监听 11434端口

netstat -ano|findstr 11434 查看端口命令

ollama的 web &desktop

GitHub - open-webui/open-webui: User-friendly WebUI for LLMs (Formerly Ollama WebUI)

Open WebUI

在ollama的github上  https://github.com/ollama/ollama  下面可以看到很多web ui

OpenwebUI 搭建

🚀 Getting Started | Open WebUI

文档里有下面部署方式

1.Docker方式(官方推荐)

2.源码部署安装方式(文档:https://docs.openwebui.com/getting-started/)

这里用第一种用Docker安装

那么现在windows下安装Docker

官方下载安装包:https://www.docker.com/products/docker-desktop/

双击安装即可  默认到C盘

安装完成需要重启,重启之后

上面界面可以不管  打开cmd 可以运行docker命令

-p 3000:8080  意思外面3000映射容器内8086

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

访问:http://localhost:3000/

没账号  先注册

注册完成

Lobe Chat界面框架啊  (支持中文界面)

官网:https://lobehub.com

Github:https://github.com/lobehub/lobe-chat

docker run -d -p 3210:3210 -e OPENAI_API_KEY=sk-xxxxx -e ACCESS_CODE=lobe66 --name lobe-chat lobehub/lobe-chat

Vercel,Zeabur Sealos 了解下

http://localhost:3210/

https://www.superclueai.com

https://vitepress.dev

这篇关于SpringAI(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1046590

相关文章

Spring框架永远滴神之SpringAI玩转大模型

文章目录 一、SpringAI简介1.什么是SpringAI2.SpringAI支持的大模型类型(1)聊天模型(2)文本到图像模型(3)转录(音频到文本)模型(4)嵌入模型(5)矢量数据库 3.SpringAI版本 二、SpringAI框架使用,对接OpenAI1.环境信息2.初始化3.配置文件(1)application.yml(2)pom文件 4.聊天代码测试(1)聊天接口(2)流式响应

探索AI创新的前沿——从零开始学习和运用SpringAI

1.SpringAI介绍 SpringAI是AI工程师的一个应用框架,它提供了一个友好的API和开发AI应用的抽象,旨在简化AI应用的开发工序。 目标是将可移植性和模块化设计等设计原则应用于AI领域的Spring生态系统,并将POJO作为应用程序的构建块推广到AI领域。 跨AI提供商的便携API支持聊天、文本到图像和嵌入模型。同时支持同步和流API选项。还支持各种定制的功能。 总的来说就是:Sp

SpringAI快速上手

一、导入依赖  镜像(导入maven依赖) <repositories><repository><id>spring-snapshots</id><name>Spring Snapshots</name><url>https://repo.spring.io/snapshot</url><releases><enabled>false</enabled></releases></reposi

springboot接入springai-openAi代理和智谱ai调用示例

这里写自定义目录标题 背景配置具体代码总结 背景 一说到调用openAI的api或者做一些小项目,大部分例子都是python或者node实现的,后来发现spring出了对于openai的支持框架,所以尝试用一用。这里是SpringAI的地址,有兴趣的可以去官网看:Spring AI 配置 首先声明,因为我是从0搭建的项目,所以我用的全部都是最新版,JDK22,springb

SpringAI学习及搭建AI原生应用

文章目录 一、SpringAI是什么二、准备工作1.GPT-API-free2.AiCore3.eylink 三、对话案例实现1.创建项目2.实现简单的对话 四、聊天客户端ChatClient1.角色预设2.流式响应3.call和stream的区别 五、聊天模型提示词提示词模板 六、图像模型(文生图)七、语音模型1.文字转语音(文生语音)2.语音转文字 八、多模态九、函数调用十、向量数据库1

SpringAI调用OpenAI Demo

Spring AI 在maven的setting.xml <mirror>             <id>spring-milestones</id>             <name>Spring Milestones</name>             <mirrorOf>spring-milestones</mirrorOf>             <url>htt

快速学习SpringAi

Spring AI是AI工程师的一个应用框架,它提供了一个友好的API和开发AI应用的抽象,旨在简化AI应用的开发工序,例如开发一款基于ChatGPT的对话应用程序。通过使用Spring Ai使我们更简单直接使用chatgpt 1.创建项目 jdk17 引入依赖 2.依赖配置 配置spring仓库 <repositories><repository><id>spring

SpringAI 技术解析

1. 发展历史         SpringAI 的发展历史可以追溯到对 Spring 框架的扩展和改进,以支持人工智能相关的功能。随着人工智能技术的快速发展,SpringAI 逐渐成为 Spring 生态系统中的一个重要组成部分,为开发者提供了便捷、灵活的解决方案。         项目的灵感来自著名的 Python 项目,如 LangChain 和 LlamaIndex,但 Spring

springAI框架学习总结

springAI 1.springAI基本介绍 springAI是一个AI工程应用框架,其目标是将 Spring 生态系统设计原则(例如可移植性和模块化设计)应用于 AI 领域,并推广使用 POJO 作为 AI 领域应用程序的构建块。 2.特性 灵活的AIP支持chat,text-to-image, and Embedding models。支持同步和stream API。向下可以接入特定

(1)探索 SpringAI - 基本概述

人工智能简介 A system is ability to correctly interpret external data, to learn from such data, and to use those learnings to achieve specific goals and tasks through flexible adaptation. 翻译:系统正确解释外部数据的能