基于Spring Ai 快速创建一个AI会话

HGW689 2024-10-23 16:01:01 阅读 64

文章目录

1、创建SpringBoot项目2、引入依赖3、修改配置文件4、一个简单的会话

前期准备

在OpenAI 注册页面创建帐户并在API 密钥页面生成令牌。 Spring AI 项目定义了一个配置属性,您应该将其设置为从 openai.com 获取的<code>spring.ai.openai.api-key值

代码托管于giteeSpringAi文档SpringAi仓库OpenAi文档

1、创建SpringBoot项目

注意,SpringAi要求JDK17~

在这里插入图片描述

在这里插入图片描述

2、引入依赖

首先,添加仓库配置

<code><repositories>

<repository>

<id>spring-milestones</id>

<name>Spring Milestones</name>

<url>https://repo.spring.io/milestone</url>

<snapshots>

<enabled>false</enabled>

</snapshots>

</repository>

<repository>

<id>spring-snapshots</id>

<name>Spring Snapshots</name>

<url>https://repo.spring.io/snapshot</url>

<releases>

<enabled>false</enabled>

</releases>

</repository>

</repositories>

其次,集中管理依赖版本

<dependencyManagement>

<dependencies>

<dependency>

<groupId>org.springframework.ai</groupId>

<artifactId>spring-ai-bom</artifactId>

<version>0.8.1-SNAPSHOT</version>

<type>pom</type>

<scope>import</scope>

</dependency>

</dependencies>

</dependencyManagement>

引入需要的依赖项

<dependency>

<groupId>org.springframework.ai</groupId>

<artifactId>spring-ai-openai-spring-boot-starter</artifactId>

</dependency>

3、修改配置文件

在OpenAI 注册页面创建帐户并在API 密钥页面生成令牌。这里小编是开了灰机,大家可以通过国内的三方,比如:https://api.mnzdna.xyz

spring:

ai:

openai:

# Api密钥

api-key: sk-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

# 要连接的URL

base-url: https://api.openai.com

4、一个简单的会话

实现一个简单的对话~

package com.gw.ai.easyai.controller;

import org.springframework.ai.openai.OpenAiChatClient;

import org.springframework.beans.factory.annotation.Autowired;

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;

import java.util.Map;

/**

* Description: 聊天

*

* @author LinHuiBa-YanAn

* @date 2024/5/7 20:58

*/

@RestController

@RequestMapping("/api/v1/chat")

public class ChatController {

private final OpenAiChatClient chatClient;

@Autowired

public ChatController(OpenAiChatClient chatClient) {

this.chatClient = chatClient;

}

@GetMapping("/single")

public Map<String, String> generate(@RequestParam(value = "message", defaultValue = "给我打个招呼") String message) {

return Map.of("generation", chatClient.call(message));

}

}

在这里插入图片描述

在这里插入图片描述



声明

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