【带小白做项目】如何在SpringBoot项目中接入AI大模型?

爱写代码的July 2024-09-17 16:31:01 阅读 81

         随着chatGPT的兴起,越来越多的应用接入了AI大模型,那么我们要怎么在自己的项目中接入AI大模型呢?本节我们一起做一个简单的demo来尝试一下。

一  为什么要在项目中接入大模型

1. 增强业务功能和用户体验

        AI 大模型(如 GPT、BERT、DALL-E 等)具备强大的自然语言处理、图像生成和分类、机器翻译等能力,可以大幅提升应用的功能和用户体验。

智能对话与客服:通过集成 GPT-3、GPT-4 等语言模型,应用可以实现自然语言的智能对话系统,提供更流畅和人性化的用户互动。例如,在线客服可以通过 AI 模型自动响应用户的问题,减轻人工客服的负担。文本生成与内容创建:AI 模型可以根据用户输入生成高质量的文本,用于创作文章、产品描述、广告文案等。这为内容平台、电子商务网站或社交媒体应用带来新的创作方式。数据分析与决策支持:在企业管理和业务应用中,AI 模型能够分析大量文本、用户反馈或数据,帮助进行情感分析、舆情监测、市场分析等,从而为企业提供更好的决策支持。

2. 提高自动化与效率

        AI 模型可以有效地自动化许多任务,减少人力成本并提高效率。

自动文档处理:例如,通过 NLP 模型,可以自动进行文档分类、摘要提取、内容审核等任务。这对于法律、金融、医疗等行业尤为重要,能够加速工作流程。预测与推荐系统:集成大模型后,可以对用户行为进行预测,给出个性化推荐,类似于电子商务网站中的产品推荐或流媒体平台的内容推荐。这些功能基于用户数据的深度分析,有助于提升转化率和用户黏性。

3. 支持多语言与全球化扩展

        许多 AI 大模型(如 GPT-4、M2M-100)支持多语言处理,这对于需要扩展全球市场的应用非常有帮助。

自动翻译:通过接入 AI 模型,应用可以实现自动的高质量翻译,支持多语言的用户交互。尤其在电子商务、社交平台或客户服务等领域,帮助公司服务全球用户。多语言内容生成:不仅仅是翻译,AI 还能在不同语言间生成符合文化语境的内容,从而帮助品牌进行全球化的市场营销。

4. 个性化用户体验

        AI 模型能够分析用户的历史数据和行为,提供高度个性化的服务。

智能推荐:通过集成 AI 模型,应用可以根据用户的兴趣和需求,提供定制化的推荐内容。这在电商、视频流媒体、社交媒体平台上非常常见。情感分析:在分析用户输入的文本时,AI 模型可以判断用户的情感状态,帮助应用实时调整互动策略。例如,在客户服务场景中,AI 模型能够识别出用户的情绪(如不满或困惑),然后采取相应的响应方式。

5. 增强应用的智能化与创新竞争力

        随着 AI 技术的迅速发展,集成 AI 功能已经成为提升应用智能化水平的一个重要趋势。通过接入 AI 大模型,应用可以变得更加智能,响应速度更快,处理复杂问题的能力更强,从而在竞争中获得优势。

技术创新:在激烈的市场竞争中,集成 AI 的应用更具有创新性,可以提供差异化的服务,这有助于增强企业的市场竞争力。自动化创新:不仅限于处理文本或图片,AI 模型还能在各类复杂的业务场景中引入自动化,解决实际问题,如产品推荐、订单分析、用户画像等。

6. 降低开发成本

        与传统的手动开发特定的功能模块相比,AI 模型可以快速实现复杂功能,而无需构建大量规则或手工编程。

快速构建复杂功能:例如,创建一个智能对话系统可能需要大量的规则和逻辑,而使用现成的 AI 模型可以极大简化这个过程,减少开发成本。模型复用:通过使用 AI 模型,开发者可以轻松复用已经训练好的模型(如通过 API),而不需要从头构建复杂的算法或模型。

7. 数据驱动的改进与优化

        AI 模型善于从大量数据中提取信息和模式,能根据这些模式帮助优化应用程序的功能。

用户行为分析:通过接入 AI,大模型可以根据大量用户数据(如点击、浏览历史、购买记录等),不断优化推荐系统和交互体验,使应用更加贴合用户需求。实时反馈与学习:随着 AI 模型对用户数据的实时处理和分析,系统能够动态调整其行为,从而改进服务质量。

二  参考文档

 Spring AI Reference

icon-default.png?t=N7T8

https://docs.spring.io/spring-ai/reference/concepts.html

三  环境配置

        首先我们需要保证我们的JDK版本不低于17,SpringBoot版本为3.0以上。因为很多人之前用的都是JDK8或者11,所以我们需要重新安装JDK17,如何在已经安装JDK的情况下新增JDK可以参考这篇博客:【答疑】已经安装了JDK,如何安装其他版本的JDK?-CSDN博客。

        我们在IDEA中新建一个项目,按下图中的内容进行配置,点击next:

        在这一步中选择SpringBoot的版本为3.x以上的版本,这里我用到的是3.3.3。如果IDEA里的SpringBoot版本选项中没有3.x的版本,可以查看一下server url是不是之前被修改过了,我们返回上一步:

        查看这里的server url是不是之前改成了阿里云的脚手架(或者其他的),我们点击右边的小齿轮符合,将其改回Spring官方的地址https://start.spring.io/,点击next。这时我们应该就可以看到3.x的版本了,如果还是不行,可以查看一下是不是自己的IDEA版本是不是过低了。

        选择好SpringBoot版本后,我们在左侧的选择框中选择添加依赖,点击create:

        等待maven下载依赖,即可完成项目创建。

 四 获取GPT API keys

        登录https://platform.openai.com/account/api-keys,在控制台页面中,点击左侧菜单的“API Keys”选项,点击页面中的 “+ Create new secret key” 按钮,输入一个Test key用来创建密钥,系统将生成一个新的 API 密钥(这里需要进行一个短信验证码验证),记得及时保存秘钥,退出后无法二次查看,只能创建一个新的秘钥。

五 项目配置

1.在application.yaml中配置api-key等信息

<code>july:

openai:

key:

url:

spring:

ai:

openai:

api-key: ${july.openai.key}

base-url: ${july.openai.url}

2.修改启动类

@SpringBootApplication

public class Application {

public static void main(String[] args) {

// 设置代理

String proxy = " ";

int port = ; //代理的端口,

System.setProperty("proxyType", "4");

System.setProperty("proxyPort", Integer.toString(port));

System.setProperty("proxyHost", proxy);

System.setProperty("proxySet", "true");

SpringApplication.run(Application.class, args);

}

@Bean

public OpenAiAudioApi openAiAudioApi(@Value("${july.openai.key}") String openAiKey){

return new OpenAiAudioApi(openAiKey);

}

}

3.实现方法

实现各种API的代码可以参考Chat Client API :: Spring AI Reference,这里不一一演示了,以聊天接口为例:

@GetMapping("/chat")

public String completion(@RequestParam(value = "message", defaultValue = "请你介绍一下ai大模型") String message) {

System.out.println(openAiKey);

return this.chatClient.prompt().user(message).call().content();

}

完整源码可以下载文章附件资源获得~



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。