0


快速入门Spring Cloud Alibaba AI,搭建大模型,快速上手大模型

简介

Spring AI 是 Spring 官方社区项目,旨在简化 Java AI 应用程序开发,让 Java 开发者像使用 Spring 开发普通应用一样开发 AI 应用。

Spring Cloud Alibaba AI 以 Spring AI 为基础,并在此基础上提供阿里云通义系列大模型全面适配,让用户在 5 分钟内开发基于通义大模型的 Java AI 应用。

快速搭建

jdk以17为基准

整体的项目结构如下,所有的资源来源于阿里云官网,教程来自https://sca.aliyun.com/docs/2023/user-guide/ai/quick-start/

代码来源于https://github.com/alibaba/spring-cloud-alibaba/tree/2023.x/spring-cloud-alibaba-examples/ai-example/spring-cloud-ai-example
在这里插入图片描述

引入依赖

文章以Maven项目为测试用例,首先在pom.xml中引入依赖。

<dependencyManagement><dependencies><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>2023.0.1.0</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><dependencies><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-ai</artifactId></dependency></dependencies>

申请api-key

api-key的申请需要前往阿里云官网,点击跳转

然后application.yml配置文件中加入api-key

spring:cloud:ai:tongyi:api-key: sk-69********#这里的api-key需要去阿里云官网申请

申请好之后替换application.yml的api-key

代码部分

代码部分分为controller层、service层、serviceImpl层和Model层

controller层

controller层还有一个类,用于对外提供接口

@RestController@RequestMapping("/ai")@CrossOriginpublicclassTongYiController{@Autowired@Qualifier("tongYiSimpleServiceImpl")privateTongYiService tongYiSimpleService;@GetMapping("/example")publicStringcompletion(@RequestParam(value ="message", defaultValue ="Tell me a joke")String message
    ){return tongYiSimpleService.completion(message);}}

service层

service层用于对controller提供服务

publicinterfaceTongYiService{/**
     * Hello World example.
     *
     * @param message conversation content question.
     * @return AI answer.
     */Stringcompletion(String message);}

serviceImpl层

serviceImpl层是对service的实现,包括

AbstractTongYiServiceImpl

TongYiSimpleServiceImpl

AbstractTongYiServiceImpl

publicabstractclassAbstractTongYiServiceImplimplementsTongYiService{privatestaticfinalStringINFO_PREFIX="please implement ";privatestaticfinalStringINFO_SUFFIX="() method.";@OverridepublicStringcompletion(String message){thrownewRuntimeException(INFO_PREFIX+Thread.currentThread().getStackTrace()[2].getMethodName());}}

TongYiSimpleServiceImpl

@Service@Slf4jpublicclassTongYiSimpleServiceImplextendsAbstractTongYiServiceImpl{privatefinalChatClient chatClient;privatefinalStreamingChatClient streamingChatClient;@AutowiredpublicTongYiSimpleServiceImpl(ChatClient chatClient,StreamingChatClient streamingChatClient){this.chatClient = chatClient;this.streamingChatClient = streamingChatClient;}}

model层

ActorsFilms

publicclassActorsFilms{privateString actor;privateList<String> movies;publicActorsFilms(){}publicStringgetActor(){return actor;}publicvoidsetActor(String actor){this.actor = actor;}publicList<String>getMovies(){return movies;}publicvoidsetMovies(List<String> movies){this.movies = movies;}@OverridepublicStringtoString(){return"ActorsFilms{"+"actor='"+ actor +'\''+", movies="+ movies +'}';}}

Completion

publicclassCompletion{privatefinalString completion;publicCompletion(String completion){this.completion = completion;}publicStringgetCompletion(){return completion;}}

运行测试

api访问方式

http://localhost:8080/ai/example?message=西瓜

可以放在浏览器或者api接口测试工具
在这里插入图片描述

页面访问

http://localhost:8080/index.html

配置好之后即可运行,其中阿里云github官网里面有前端页面资源,即resource里面的static静态资源,想要的可以直接去github代码地址里拷贝
在这里插入图片描述
仅拷贝static资源的步骤:

  1. 在当前页面点击键盘上的逗号,这样就会跳转到github内嵌的vscode
  2. 然后在想要的资源上右击下载即可下载到本地,然后将其放在项目的resource资源文件下static在这里插入图片描述 用此方法可以通过页面进行访问,即访问刚才从github下载的static静态资源的页面,将链接放在浏览器就到了下面的页面在这里插入图片描述

总结

最实质的就是在本地提供了后端的自定义api接口,开发人员可以利用这个进行个性化开发,即真实的体验ai大模型接入自己的应用中。

想要了解更多,最直观的是直接查看github中的源码或者直接访问阿里云官网,其中还提供了图片模型、Llama3大语言模型等,有些的开源的,可以免费玩,上手也简单。

关于我

我是热爱学习的小伙子

计算机类毕设项目合集点击跳转


在这里插入图片描述

标签: 人工智能

本文转载自: https://blog.csdn.net/luocong321/article/details/139855607
版权归原作者 老哥不老 所有, 如有侵权,请联系我们删除。

“快速入门Spring Cloud Alibaba AI,搭建大模型,快速上手大模型”的评论:

还没有评论