【尝鲜】SpringCloudAlibaba AI 配置使用教程

1、环境配置

  • maven依赖pom.xml
    注意配置远程仓库,原因见:Unresolved dependency: ‘org.springframework.ai:spring-ai-core:jar:0.8.1’
<dependencies>

		<!--Base-->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>

		<!--AI-->
		<dependency>
			<groupId>com.alibaba.cloud</groupId>
			<artifactId>spring-cloud-starter-alibaba-ai</artifactId>
			<version>2023.0.1.0</version>
			<exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-simple</artifactId>
                </exclusion>
            </exclusions>
		</dependency>

	</dependencies>

	<repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>
  • application.yaml
# Tomcat
server:
  port: 9310

# Spring
spring:
  cloud:
    ai:
      tongyi:
          api-key: api密钥

api-key申请地址:申请地址
在这里插入图片描述

2、服务实现

controller就不详细展示了,主要展示service中如何调用

@Service
@AllArgsConstructor
public class TongyiServiceImpl implements ITongyiService {

    private final ChatClient chatClient;
    private final ImageClient imageClient;
    private final SpeechClient speechClient;


	// 对话
    @Override
    public String chat(String question) {
        return chatClient.call(question);
    }
	
	// 文生图
    @Override
    public String image(String promptWord) {
        ImagePrompt imagePrompt = new ImagePrompt(promptWord);
        return imageClient.call(imagePrompt).getResult().getOutput().getUrl();
    }

	// 语音
    @Override
    public ByteBuffer speech(String promptWord) {
        SpeechPrompt question = new SpeechPrompt(promptWord);
        return speechClient.call(question).getResult().getOutput();
    }

}

效果图
java聊天gpt
java文生图ai

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/724285.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

进化版ChatGPT的Siri今年无缘上线!苹果正打造史上最薄iPhone 17

目录 01 超强Siri助手预计2025年上线 02 集成ChatGPT但没有买单 03 iPhone 17更轻薄 最新报道称&#xff0c;苹果的AI功能将在未来几个月逐步推出&#xff0c;并持续到2025年。 据称&#xff0c;今年夏天结束前&#xff0c;开发者们仍无法试用和体验。 因此&#xff0c;在即…

【JavaEE】Spring Web MVC详解

一.基本概念. 什么是Spring Web MVC? 官方链接: https://docs.spring.io/spring-framework/reference/web/webmvc.html Spring Web MVC is the original web framework built on the Servlet API and has been included in the Spring Framework from the very beginning. Th…

Ubuntu22.04系统安装及配置

文章目录 一、选择“安装” 二、选择“语言” 三、安装器更新 四、键盘布局 五、选择安装类型 六、网络配置 七、代理设置 八、镜像地址 九、磁盘划分 十、设置用户名、主机名、登录密码 十一、升级到Ubuntu Pro 十二、SSH设置 十三、选装软件包 十四、开始安装进…

13.2 Go 接口的动态性

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

移动硬盘在苹果电脑上无法识别的诊断与恢复策略

一、问题描述 在数字时代&#xff0c;移动硬盘已成为我们存储和传输数据的重要工具。然而&#xff0c;当我们将移动硬盘插入苹果电脑时&#xff0c;有时会遇到无法识别的情况&#xff0c;这让我们感到十分困扰。本文将详细探讨移动硬盘插苹果电脑后读不出来的现象&#xff0c;…

超神级!Markdown最详细教程,程序员的福音

超神级&#xff01;Markdown最详细教程&#xff0c;程序员的福音Markdown最详细教程&#xff0c;关于Markdown的语法和使用就先讲到这里&#xff0c;如果喜欢&#xff0c;请关注“IT技术馆”。馆长会更新​最实用的技术&#xff01;https://mp.weixin.qq.com/s/fNzhLFyYRd3skG-…

经验分享,16进制与字符串的互相转换网站

分享一个16进制与字符串的互相转换的网站&#xff0c;比较实用。 网址&#xff1a; https://www.bejson.com/convert/ox2str/ 截图&#xff1a;

飞睿智能LR-WIFI无线数据采集模块,6公里视频图传,安防监控、工业传输数据更高效

在数字化浪潮席卷全球的今天&#xff0c;无线数据采集技术已经成为推动社会进步的重要力量。特别是在安防监控和工业领域&#xff0c;高效、稳定的数据传输成为了实现智能化、自动化的关键。飞睿智能LR-WiFi无线数据采集模块不仅具备可靠的传输性能&#xff0c;还能在复杂环境下…

LeetCode80. 删除有序数组中的重复项 II题解

LeetCode80. 删除有序数组中的重复项 II题解 题目链接&#xff1a; https://leetcode.cn/problems/remove-duplicates-from-sorted-array-ii/ 题目描述&#xff1a; 给你一个有序数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使得出现次数超过两次的元素…

UWA发布 | Unity手游性能年度蓝皮书

UWA本次发布的《2023-2024年度Unity手游性能蓝皮书》将汇总游戏行业使用Unity引擎进行手游开发过程中及游戏上线后的性能表现&#xff0c;从测试机型分布、引擎各模块开销、内存占用等方面剖析定位Unity手游性能瓶颈和趋势&#xff0c;反映了Unity手游行业的现状&#xff0c;帮…

Xtuner微调

环境安装 studio-conda xtuner0.1.17 conda activate xtuner0.1.17 进入家目录 &#xff08;~的意思是 “当前用户的home路径”&#xff09; cd ~ 创建版本文件夹并进入&#xff0c;以跟随本教程 mkdir -p /root/xtuner0117 && cd /root/xtuner0117 拉取 0.1.17 的版…

【课程系列05】某心科技AI大模型微调实战营-应用篇

网盘链接 链接: https://pan.baidu.com/s/1oARULXsXn8frkqq4ZKHBLA --来自百度网盘超级会员v6的分享 课程收获 课程内容涉及大模型的介绍、Transformer、Encoder、高级微调技术、Alpaca、AdaLoRA、QLoRA、Prefix Tuning和Quantization等主题 课程截图

CVE-2020-1957 漏洞复现

先声明一下&#xff0c;免杀还是会更的&#xff0c;不过中间可能会穿插一下渗透的内容&#xff01;&#xff01;&#xff01; 踩坑点&#xff1a; 在一开始翻阅了CSDN之后&#xff0c;发现不同文章之间存在出入&#xff0c;于是最后去了CVE的官方文档&#xff0c;和参考一些国…

Linux使用lrzsz实现虚拟机和本机进行文件传输

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、lrzsz是什么&#xff1f;二、使用步骤1.下载lrzsz2.文件传输 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 使用lrzsz代替xfpt进行…

基于51单片机FM数字收音机设计

基于51单片机FM数字收音机 &#xff08;程序&#xff0b;原理图&#xff0b;PCB&#xff0b;设计报告&#xff09; 功能介绍 具体功能&#xff1a; 该系统利主要由STC89C51单片机、液晶显示器、按键、调频收音模块TEA5767、功放LM386组成。 1.收音芯片采用TEA5767模块&…

# 消息中间件 RocketMQ 高级功能和源码分析(四)

消息中间件 RocketMQ 高级功能和源码分析&#xff08;四&#xff09; 一、 消息中间件 RocketMQ 源码分析&#xff1a;回顾 NameServer 架构设计。 1、RocketMQ 架构设计 消息中间件的设计思路一般是基于主题订阅发布的机制&#xff0c;消息生产者&#xff08;Producer&…

CSS3基本语法

文章目录 一、CSS引入方式二、选择器1、标签选择器2、类选择器3、id选择器4、通配符选择器 三、字体操作1、字体大小2、字体粗细3、字体样式&#xff08;是否倾斜&#xff09;4、字体修改常见字体系列 修改字体系列语法 四、文本操作1、文本缩进2、文本水平对齐方式3、文本修饰…

汽车IVI中控开发入门及进阶(二十七):车载摄像头vehicle camera

前言: 在车载IVI、智能座舱系统中,有一个重要的应用场景就是视频。视频应用又可分为三种,一种是直接解码U盘、SD卡里面的视频文件进行播放,一种是手机投屏,就是把手机投屏软件已视频方式投屏到显示屏上显示,另外一种就是对视频采集设备(主要就是摄像头Camera)的视频源…

智能温室大棚在无土栽培中的应用

在全球范围内&#xff0c;农业面临着前所未有的挑战&#xff0c;包括气候变化、土地资源短缺、水资源匮乏等。为了应对这些问题&#xff0c;智能温室大棚成为了一种创新的解决方案。无土栽培作为现代农业的前沿技术&#xff0c;在智能温室的支持下&#xff0c;展现出了巨大的潜…