Spring Cloud Alibaba AI实践

devtools/2024/10/23 2:25:24/

背景

在现如今AI时代,spring也对ai进行了各种兼容匹配,推出了Spring AI来支持各大AI厂商,持的模型类型包括聊天和文本到图像,但是由于国内的机制以及各大厂商的限制,Spring AI在国内使用不便,因此阿里巴巴推出了Spring Cloud Alibaba AI ,完成通义系列大模型的接入。
Spring Cloud Alibaba AI 主要完成了几种常见生成式模型的适配,包括对话、文生图、文生语音等,开发者可以使用 Spring Cloud Alibaba AI 开发基于通义的聊天、图片或语音生成 AI 应用。

使用

在使用前,要了解到Spring Cloud Alibaba AI对Java版本有要求,所以要先提前预装好Java17环境。

1.依赖引入

Maven文件需要引入spring-cloud-starter-alibaba-ai这个依赖。

		<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-ai</artifactId><version>2023.0.1.0</version></dependency>

2.API-KEY获取

需要使用阿里云账号或者tb账号,登录:https://bailian.console.aliyun.com/
点击头像位置有个API-KEY管理,获取到,然后配置在项目中

spring:cloud:ai:tongyi:api-key: XXXXXXXXXXXXXXX

3.创建demo

@Tag(name = "Demo 测试")
@RestController
@Validated
@RequestMapping("/api/v1/demo")
public class DemoController {@Autowiredprivate ChatClient chatClient;@GetMapping("/example")public String completion() {Prompt prompt = new Prompt(new UserMessage("你是谁你能做什么?"));String content = chatClient.call(prompt).getResult().getOutput().getContent();System.out.println(content);return content;}}

4.测试验证

项目启动,使用postman请求对应接口路径,可以发现,打印日志中已经做出了回复,证明当前项目已经接入了阿里通义大模型。

[2024-10-19 14:13:14.767] [http-nio-8080-exec-3] [INFO] org.springframework.web.servlet.DispatcherServlet line=532 Initializing Servlet 'dispatcherServlet' 
[2024-10-19 14:13:14.771] [http-nio-8080-exec-3] [INFO] org.springframework.web.servlet.DispatcherServlet line=554 Completed initialization in 4 ms 
我是Qwen,是阿里云开发的一款大型语言模型。我能够回答各种问题、提供信息查询、进行文本生成和对话等任务。无论是需要学习资料、解答疑惑还是寻找创意灵感,我都尽力帮助您。如果您有任何问题或需要我的帮助,请随时告诉我!

http://www.ppmy.cn/devtools/128015.html

相关文章

GitLab 老旧版本如何升级?

极狐GitLab 正式对外推出 GitLab 专业升级服务 https://dl.gitlab.cn/cm33bsfv&#xff01; 专业的技术人员为您的 GitLab 老旧版本实例进行专业升级&#xff01;服务详情可以在官网查看详细解读&#xff01; 那些因为老旧版本而被攻击的例子 话不多说&#xff0c;直接上图&a…

10.22学习

1.求余 在C语言中&#xff0c;求余操作是通过取模运算符 % 来实现的。取模运算符会返回两个数相除后的余数。对于正数和负数的除法&#xff0c;求余的结果会有所不同&#xff0c;但 % 运算符总是返回被除数的符号。 下面是一个简单的例子&#xff0c;展示如何使用 % 运…

ecmascript标准

1. 简介 1.1. 概述 ECMAScript(简称ES)是JavaScript编程语言的一个标准化版本。它是为网络开发设计的一种轻量级的脚本语言,主要用于在网页上实现交互性和动态效果。ECMAScript是该语言的标准名称,而JavaScript是其最知名和广泛使用的实现。 1.2. 特点 跨平台性 :ECMAS…

若依-医疗系统

项目介绍 湘雅三医院医疗系统是根据长沙市湘雅第三医院来开发的一款后台管理系统&#xff0c;是基于SpringBoot和Vue2开发的一款前端后端分离项目&#xff0c; 项目中包括&#xff1a;1&#xff1a;权限认证&#xff0c;动态菜单2&#xff1a;用户管理&#xff0c;部门管理&am…

C++详解

C详解 文章目录 C详解1 内存分区模型1.1 程序运行前1.2 程序运行后1.3 new操作符 2 引用2.1 引用的基本使用2.2 引用注意事项2.3 引用做函数参数2.4 引用做函数返回值2.5 引用的本质2.6 常量引用 3 函数提高3.1 函数默认参数3.2 函数占位参数3.3 函数重载3.3.1 函数重载概述3.3…

二叉树展开为链表

二叉树展开为链表 给你二叉树的根结点 root &#xff0c;请你将它展开为一个单链表&#xff1a; 展开后的单链表应该同样使用 TreeNode &#xff0c;其中 right 子指针指向链表中下一个结点&#xff0c;而左子指针始终为 null 。展开后的单链表应该与二叉树 先序遍历 顺序相同…

理解多线程中的上下文切换:原理解析与Java模拟实现

什么是上下文切换&#xff1f; 上下文切换&#xff08;Context Switch&#xff09;是指当操作系统需要在不同的线程或进程之间切换时&#xff0c;将当前线程的状态&#xff08;如寄存器、程序计数器、堆栈指针等&#xff09;保存起来&#xff0c;并加载下一个线程的状态&#…

Xmind一款极简思维导图和头脑风暴软件,支持PC和移动端,Xmind 2024.10.01101版本如何升级到Pro版?简单操作,最新可用!

文章目录 Xmind下载安装Xmind免费升级到Pro Xmind 是一款全功能的思维导图和头脑风暴软件&#xff0c;不限制节点和文件数&#xff0c;创新无限&#xff0c;界面纯净简洁无广告&#xff0c;支持PC和移动端&#xff0c;思维导图和大纲视图自由切换&#xff0c;可本地化文档存储&…