AI来了,Spring还会远吗?(Spring AI初体验)

一、创建项目

最低要求:JDK17
在这里插入图片描述

  • 阿里云的Server URL(https://start.aliyun.com/)搜不到Spring AI,咱换官方的:https://start.spring.io/
    在这里插入图片描述

下载好JDK 17,在上图的JDK中不一定能看到。此时,选add JDK:选zulu-17.jdk -> Contents -> Home

在这里插入图片描述

二、first demo

1、application.properties

spring.ai.openai.api-key=sk-xxx
spring.ai.openai.chat.options.model=gpt-3.5-turbo
spring.ai.openai.chat.options.temperature=0.7

2、ChatController

@RestController
public class ChatController {

    private final OpenAiChatClient chatClient;

    @Autowired
    public ChatController(OpenAiChatClient chatClient) {
        this.chatClient = chatClient;
    }

    @GetMapping("/ai/generate")
    public Map generate(@RequestParam(value = "message", defaultValue = "美国的首都是?") String message) {
        return Map.of("generation", chatClient.call(message));
    }

    @GetMapping("/ai/generateStream")
    public Flux<ChatResponse> generateStream(@RequestParam(value = "message", defaultValue = "美国的首都是?") String message) {
        Prompt prompt = new Prompt(new UserMessage(message));
        return chatClient.stream(prompt);
    }
}

3、结果

  • /ai/generate
    在这里插入图片描述
  • /ai/generateStream
    在这里插入图片描述
    • 额… 流式调用不行…

三、个人思考

  • 不少人把调API的人称为调包侠,把搞深度学习的人称为炼丹师。但从软件工程的角度出发,将服务/功能封装为一个个好用的API是构建复杂系统的基础。我们不可能亲手去造每一个轮子,况且术业有专攻,自己造的不如专业人士造的好用。
  • 熟练掌握API是起点,接下来,咱还得去学习下Spring AI是如何兼容这么多llm的吧。

接触过各种llm的api就知道,那叫一个千奇百怪。

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-04-15 09:06:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-15 09:06:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-15 09:06:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-15 09:06:03       20 阅读

热门阅读

  1. Python和R概率统计算法建模评估气象和运动

    2024-04-15 09:06:03       22 阅读
  2. Qt实现Kermit协议(六)

    2024-04-15 09:06:03       22 阅读
  3. IDE:常见的集成开发环境

    2024-04-15 09:06:03       47 阅读
  4. C语言数组的初始化方法大全

    2024-04-15 09:06:03       16 阅读
  5. 软件测试Linux 必备考点

    2024-04-15 09:06:03       44 阅读
  6. 神州数码交换机基本指令

    2024-04-15 09:06:03       11 阅读