当前位置:首页 » 《休闲阅读》 » 正文

(二十一)springboot实战——Spring AI劲爆来袭

8 人参与  2024年05月10日 11:32  分类 : 《休闲阅读》  评论

点击全文阅读


前言

本节内容是关于Spring生态新发布的Spring AI的介绍,Spring AI 是一个面向人工智能工程的应用框架。其目标是将 Spring 生态系统的设计原则,如可移植性和模块化设计,应用到人工智能领域,并推广使用普通的Java对象(POJOs)作为构建应用程序的基础。其官方文档地址如下:

Spring AI

目前其集成了主流的Chat Models(聊天模型)、Text-to-image Models(文生图模型)、Transcription (audio to text) Models(语音转文本模型)、Embedding Models(嵌入式模型)、Vector Databases(向量数据库模型)。通过引入spring-ai-openai-spring-boot-starter启动器,就可以很方便的调用各种ai客户端工具,例如openai、Ollama等文本模型。本节内容以open ai 调用为例。

正文

①项目工程版本,低版本springboot不支持此功能

版本说明
JDKJDK17
springboot3.2.5
spring-ai-openai-spring-boot-starter0.8.1

②使用springboot初始化向导创建一个springboot项目

 ③引入pom时可能存在无法引入pom依赖的情况,这是因为在maven中心仓库还没有发布此启动器,我们需要配置spring仓库下载springai相关的启动器,本地如果使用了阿里云的maven仓库也需要屏蔽掉

④ 在application.properties中配置OpenAI的相关参数

⑤创建一个open ai请求,用于测试open ai的功能

package com.yundi.atp.controller;import org.springframework.ai.openai.OpenAiChatClient;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.RestController;import java.util.Map;@RestControllerpublic class OpenAiController {    @Autowired    private OpenAiChatClient openAiChatClient;    @GetMapping("/ai/generate")    public Map generate(@RequestParam(value = "message", defaultValue = "你叫什么名字?") String message) {        return Map.of("generation", openAiChatClient.call(message));    }    }

⑥测试open ai chat会话模型,注意,这里需要开启魔法,需要能够访问open ai的地址,集成一个web客户端就能实现自己的chat ai聊天室

⑦ spring ai还提供了许多的ai场景启动器,需要集成什么ai功能就引入什么ai场景启动器,例如Ollama开源模型、微软openai模型等,相信其生态会越来越丰富,当然我们也可以自定义一些自己的ai启动器

<dependency>   <groupId>org.springframework.ai</groupId>   <artifactId>spring-ai-ollama-spring-boot-starter</artifactId></dependency>
<dependency>    <groupId>org.springframework.ai</groupId>    <artifactId>spring-ai-azure-openai-spring-boot-starter</artifactId></dependency>

⑧文生图的AI模型

 

结语

至此,关于spring ai相关的内容到这里就结束了,我们下期见。。。。。。


点击全文阅读


本文链接:http://zhangshiyu.com/post/106221.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1