首页 > 编程语言 >AI编程新手快速体验SpringCloud Alibaba 集成AI功能

AI编程新手快速体验SpringCloud Alibaba 集成AI功能

时间:2024-06-02 09:29:02浏览次数:31  
标签:JDK AI SpringCloud Boot Alibaba cloud Spring Cloud

上周六写了一篇文章  震撼发布!Spring AI 框架重磅上线,Java 集成 AI 轻松搞定!    部分同学可能没有科学上网的条件,本地ollama 集成又比较笨重。趁着周六,写一篇基于SpringCloud Alibaba 集成AI的文章。

先简单介绍下 Spring Cloud Alibaba AI。

Spring Cloud Alibaba AI 基于 Spring AI 0.8.1 版本完成通义系列大模型的接入。DashScope灵积模型服务建立在 模型即服务(Model-as-a-Service,MaaS)的理念基础之上,围绕AI各领域模型,通过标准化的API提供包括模型推理、模型微调训练在内的多种模型服务。目前支持的模型主要有:对话、文生图、文生语音,更多功能特性正在适配中。

实践前, Spring AI 0.8.1  最低需要JDK17版本,  公司项目还是JDK8, 先去下载JDK17。下载地址:

 https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html

springcloud、springboot对应小常识
2023.x 分支对应的是 Spring Cloud 2023 与 Spring Boot 3.2.x,最低支持 JDK 17。
2022.x 分支对应的是 Spring Cloud 2022 与 Spring Boot 3.0.x,最低支持 JDK 17。
2021.x 分支对应的是 Spring Cloud 2021 与 Spring Boot 2.6.x,最低支持 JDK 1.8。
2020.0 分支对应的是 Spring Cloud 2020 与 Spring Boot 2.4.x,最低支持 JDK 1.8。
2.2.x 分支对应的是 Spring Cloud Hoxton 与 Spring Boot 2.2.x,最低支持 JDK 1.8。
greenwich 分支对应的是 Spring Cloud Greenwich 与 Spring Boot 2.1.x,最低支持 JDK 1.8。
finchley 分支对应的是 Spring Cloud Finchley 与 Spring Boot 2.0.x,最低支持 JDK 1.8。
1.x 分支对应的是 Spring Cloud Edgware 与 Spring Boot 1.x,最低支持 JDK 1.7。



如果你不想放弃JDK8,可以直接使用dashscope-sdk-java。 看个人选择了

 https://help.aliyun.com/zh/dashscope/developer-reference/install-dashscope-sdk?spm=a2c4g.11186623.0.i7#c2bdbca0cfc8y

这里SpringCloud Alibaba AI快速学习, 直接去github下载 官方示例:

 https://github.com/alibaba/spring-cloud-alibaba/tree/2023.x/spring-cloud-alibaba-examples/ai-example/spring-cloud-ai-example

先去阿里云官网https://help.aliyun.com/zh/dashscope/developer-reference/activate-dashscope-and-create-an-api-keyapi-key, 就能快速体验基本的 对话、画图、语音功能了。 新开通有1个月的免费额度,真香。

具体实操步骤,我直接复制官方的操作说明

接入 spring-cloud-starter-alibaba-ai
在项目 pom.xml 中加入以下依赖:


<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-ai</artifactId>
</dependency>
在 application.yml 配置文件中加入以下配置:


Note: 推荐使用环境变量的方式设置 api-key,避免 api-key 泄露。


export SPRING_CLOUD_AI_TONGYI_API_KEY=sk-a3d73b1709bf4a178c28ed7c8b3b5a45
spring:
  cloud:
    ai:
      tongyi:
        # apiKey is invalid.
        api-key: sk-a3d73b1709bf4a178c28ed7c8b3b5a45
添加如下代码:


controller:


@Autowired
@Qualifier("tongYiSimpleServiceImpl")
private TongYiService tongYiSimpleService;


@GetMapping("/example")
public String completion(
    @RequestParam(value = "message", defaultValue = "Tell me a joke")
    String message
) {


    return tongYiSimpleService.completion(message);
}


service:


private final ChatClient chatClient;


@Autowired
public TongYiSimpleServiceImpl(ChatClient chatClient, StreamingChatClient streamingChatClient) {


    this.chatClient = chatClient;
    this.streamingChatClient = streamingChatClient;
}


@Override
public String completion(String message) {


    Prompt prompt = new Prompt(new UserMessage(message));


    return chatClient.call(prompt).getResult().getOutput().getContent();
}
至此,便完成了最简单的模型接入!和本 example 中的代码略有不同,但 example 中的代码无需修改。可完成对应功能。


启动应用


本 Example 项目支持如下两种启动方式:


IDE 直接启动:找到主类 TongYiApplication,执行 main 方法启动应用。
打包编译后启动:首先执行 mvn clean package 将工程编译打包,进入 target 文件夹执行 java -jar spring-cloud-ai-example.jar 启动应用。

先简单聊个天,    http://localhost:8080/


再画个图测试,直接浏览器访问 http://localhost:8080/ai/img?prompt="美女"

再来个语音测试,http://localhost:8080/ai/audio?prompt="你好,我是子晓",出现本地的音频文件路径。播放效果挺不错。

springCloud Alibaba集成AI功能是不是很简单, 我们可以根据自己的实际需要对接到业务系统中。虽然我之前就知道springCloud Alibaba AI功能, 前不久国内几大大模型厂商价格战,我才试用了下。真香,程序员的福音,比自己折腾部署大模型方便多了。

【人工智能】阿里、百度等大模型搞价格战了,开发者爽了,盘点下国内大模型API价格

原文链接:【JAVA技术】AI编程新手快速体验SpringCloud Alibaba 集成AI功能

标签:JDK,AI,SpringCloud,Boot,Alibaba,cloud,Spring,Cloud
From: https://blog.csdn.net/xiaoliouc/article/details/139364928

相关文章

  • 掘金AI 商战宝典-系统班:2024掘金AIGC课程(30节视频课)
    课程目录1-第一讲学会向Al提问:万能提问公式_1.mp42-第二讲用AI写视频脚本_1.mp43-第三讲用AI写视频口播文案_1.mp44-第四讲用AI自动做视频(上)_1.mp45-第五讲用AI自动做视频(中)_1.mp46-第六讲用AI自动做视频(下)_1.mp47-第七讲Al做视频实战:店铺宣传_1.mp48-第八讲A1做视频......
  • 掘金AI 商战 宝典 初级班:如何用AI做文案(实战实操 现学现用 玩赚超值)
    未来会用AIE剑客将干掉99.99%不会AI的人!课程目录:10-第十讲用AI面试11-第十一讲用AI写演讲稿12-第十二讲用AI写工作总结13-第十三讲用AI写日报周报14-第十四讲用AI拟定各类合同15-第十五讲用AI写课程教案16-第十六讲用AI做商业分析17-第十七讲用AI写工作邮件1-第一......
  • AI工具,完全免费!整理大集合,满满干货分享
    KimiKimi是一个拥有超大“内存”,支持200万字上下文输入的AI智能助手。它不仅可以阅读大量文本,还能上网搜索信息,与用户进行交流。智能搜索、高效阅读、专业解读文件、整理资料、辅助创作、编程辅助等,这个AI工具可以在日常生活和工作中成为你的得力助手。如果你是学术......
  • ERROR Failed to compile with 1 error
    解决方法一:重新运行:npmrunserve(每个人情况不定)解决方法二:可能是文件中有中文名,将该项目文件名称及该项目文件的上一层命名为纯英文。重新:npmrunserve解决方法三:修改相关的 webpack 配置文件把 index.html 文件重命名为 index.ejs 文件在 node_nodul......
  • 语音合成与文字语音互转 Baidu.AI+ffmpeg
    语音和文本互转安装Baidu.AIInstall-PackageBaidu.AI将文本合成语音将文本合成为语音文件主要使用百度云API中的Tts类,该类是语音合成的交互类,为使用语音合成的开发人员提供了一系列的交互方法。Tts类中提供了一个Synthnesis方法,哟过来将文本合成语音,其语法如下:参数......
  • 儿童节变身小小音乐家,用ModelArts制作一张AIGC音乐专辑
    本文分享自华为云社区《儿童节变身小小音乐家,用ModelArts制作一张AIGC音乐专辑》,作者:华为云社区精选。儿童节,如何给小朋友准备一份特别的礼物?这份AIGC音乐专辑制作攻略一定要收下一段文字灵感就能编织出一曲悠扬悦耳的旋律童话、梦幻、探险……任何关键词都可以成为音乐......
  • AI Dify + 大模型+ Agent 详细教程 从0-1教你构建小助手
    前言Dify是一个易于使用的LLMOps平台,提供了多种应用程序类型和模板,包括AI聊天机器人、代码转换器、SQL生成器、新闻内容编写、创意脚本等。团队使用Dify,可以基于GPT-4等模型快速「开发+部署」AI应用程序并进行可视化操作,还可以将程序对外进行发布。Dify这个名字来......
  • AI | LLaMA-Factory 一个好用的微调工具
    ‘’LLamaFactory,这个工具能够高效且低成本地支持对100多个模型进行微调。LLamaFactory简化了模型微调的过程,并且易于访问,使用体验友好。此外,它还提供了由Hiyouga提供的HuggingFace空间,可用于对模型进行微调。下载LLaMA-Factory​#下载LLaMA-Factorygitclone......
  • 轻松学AI:数字人系统源码部署简易教程“
    随着短视频领域的迅猛发展,数字化概念已经成为我们生活中不可或缺的一部分。在数字化的大潮中,数字人源码部署(源码部署:ai6ai69)成为了一个热门的商业风口项目。很多企业和个人创业者开始关注并探索如何选择适合自己的数字人源码部署方案。在选择数字人系统源码厂家时,我们需要明......
  • AI发展的浪潮:回顾、现状与未来展望
    在科技日新月异的今天,人工智能(AI)技术以其独特的魅力和潜力,成为推动社会进步的重要力量。从简单的自动化任务到复杂的决策支持系统,AI正在逐步渗透到我们生活的每一个角落,为我们带来了前所未有的便利和可能。本文将带您回顾AI的发展历程,探讨当前的应用现状,以及展望未来的发展趋势......