SpringAI--使用免费API-Key和API进行配置
创始人
2024-11-06 03:35:37

目录

📚 前言

📑Spring AI简介

   💬 项目配置

📚 系统功能的具体实现

 💬 编写Controller控件


📚 前言

📑博客主页:@丘比特惩罚陆

💖欢迎关注:点赞收藏⭐留言✒
💬系列专栏:Java 后端
🎮 加入社区: 丘比特惩罚陆
🥇人生格言:选对方向,每走一步都是进步!
✒️欢迎大佬指正,一起学习!一起加油!

👏 希望大家能小手一动,帮忙点个赞!


📑Spring AI简介

  什么是Spring AI呢,Spring AI并不是一个标准术语或现有的技术框架。"Spring"通常指的是Spring Framework,这是一个广泛使用的Java开发框架,专为构建企业级应用程序提供轻量级的依赖注入和管理工具。然而,说到Spring和AI的结合,可能是指Spring Boot与人工智能技术的集成,比如使用Spring for Machine Learning (S4ML)或Spring Cloud Stream与AI微服务相结合。

在实际中,开发者可能会用Spring Boot作为基础,构建包含机器学习模型、自然语言处理(NLP)或者其他AI组件的应用。但这并不是Spring官方项目的一部分,而是开发者利用Spring生态进行扩展和集成AI功能的例子。

  简单而言,Spring AI 是AI工程师所使用的一种应用性框架,通过提供出来的API和API key来进行开发应用,所用在于使用AI应用来简化开发工序流程。

  本文使用的是免费的API key进行文章的叙述(免费的API有生成限制,每天生成内容为100条为限制,使用的是ChatGPT 3.5免费非商用的API key进行讲解讲述,付费的自行获取,该文章只用于讲解Springboot项目如何使用SpringAI。)

📑 准备工作

    家政服务管理平台的主要功能的结构:

  1. 一个OpenAI的key秘钥;
  2. 一个可以使用的OpenAi的API地址;
  3. 一个java Springboot的jdk (本项目使用的为17版本);
  4. 一个开发软件 IDEA(本项目使用的是2023年的IDEA);

一般OpenAI 的key 秘钥和API地址都是要准备好的,很多人都是卡在这一步,所以我给大家提供了一个可以使用免费共享的API key,地址如下:

GitCode - 全球开发者的开源社区,开源代码托管平台

首先先是按部就班的先是设置好自己的登录信息:

进来之后就可以看到这个界面:

提供了GPT4在内的免费的可以申请的Key,还有其他的付费的五个模型,包括GPT4o,这里就不一一赘述;


📑项目搭建

第一步,我们先试用IDEA 大家一个Springboot项目,一定要使用JDK17的,其他版本的经过测试会出现版本报错的错误;建议大家还是使用17版本以上的JDK;

第二步:选择初始的依赖项

第三部:配置pom.xml的依赖;

              spring-snapshots       Spring Snapshots       https://repo.spring.io/snapshot                false                
             org.springframework.experimental.ai         spring-ai-openai-spring-boot-starter         0.7.0-SNAPSHOT      

完整的配置地方如下:

         

然后刷新Maven按照,将依赖包下载下来;

   💬 项目配置

打开我们的application配置,一般是新建的项目生成的是properties,我这边生成的也是properties,所以配置如下:

spring.application.name=lss-springAi  server.address=0.0.0.0 server.port=8889 server.error.whitelabel.enabled=false  spring.ai.openai.api-key= sk-KjOdJswQ2PrvrcsUGbNpcliB7FWVznupYap2X1tfGfSW0lqH spring.ai.openai.base-url=https://api.chatanywhere.com.cn

其中的 spring.ai.openai.api-key:获取就是我们之前说的地址:点击:“申请内测免费Key”,进来就是一个这样的界面:

spring.ai.openai.base-url:就是在这个网址的下面,我们选择一个免费的国内中转就行;

📚 系统功能的具体实现

 💬 编写Controller控件

先是第一步先是新建一个controller层,然后新建一个自己可以命名的SpringAIController,如下:

源码内容如下:

package com.lushengshi.lssspringai.controller;  import org.springframework.ai.client.AiClient; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController;  @RestController @RequestMapping("/api/lss") public class SpringAiController {          private final AiClient aiClient;          public SpringAiController(AiClient aiClient) {             this.aiClient = aiClient;         }          @GetMapping("/chat")         public String chat(                 @RequestParam(value = "input",defaultValue = "Hello") String message         ){             return aiClient.generate(message);         }      }

接着我们在启动类当中进行一下配置,因为我们使用的是免费的key和API地址,所以我们启动的时候需要配置一下端口和代理:

代码如下:

package com.lushengshi.lssspringai;  import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;  @SpringBootApplication public class LssSpringAiApplication {      public static void main(String[] args) {         System.setProperty("https://api.chatanywhere.tech","127.0.0.1");         System.setProperty("http.proxyPort","8889");         System.setProperty("https://api.chatanywhere.tech","127.0.0.1");         System.setProperty("https.proxyPort","8889");         SpringApplication.run(LssSpringAiApplication.class, args);     }  }

这就配置完成了,然后我们就启动项目,然后到浏览器;输入地址:localhost:8889/api/lss/chat?input=xxxx,我测试成功了,然后因为在配置的时候我配置了跨域,所以在另一台计算机上,我使用服务器的地址来测试接口:

也是可以的。好了,今天的文章就到此为止,大家有什么疑问可评论区进行讨论!再此感谢PG Thinker 这位博主的提供的思路!

相关内容

热门资讯

裸辞做“一人公司”,我后悔了 去年这个时候,一位以色列程序员正在东南亚旅行。他顺手把一个在脑子里转了很久的想法做成了产品,一个让任...
南京建成国内首个Pre-6G试... 4月21日,2026全球6G技术与产业生态大会在南京开幕。全息互动技术展台前,一名远在北京的工作人员...
超梵求职受邀参加“2025抖音... 超梵求职受邀参加“2025抖音巨量引擎成人教育行业生态大会”,探讨分享优质内容传播,服务万千学员。 ...
摩托罗拉Razr 2026(R... IT之家 4 月 22 日消息,摩托罗拉宣布新一代 Razr 折叠手机将于 4 月 29 日在美国发...
库克卸任,特纳斯领航:苹果新纪... 苹果首席执行官蒂姆·库克将卸任,硬件工程主管约翰·特纳斯将接任,苹果公司今天宣布此事。 库克将在夏季...