Open AI:springboot 调用open ai 接口

Spring Boot可以通过HTTP客户端调用Open AI的API接口,具体步骤如下:

目录

[1.在Open AI官方网站上注册账号并获取API密钥](#1.在Open AI官方网站上注册账号并获取API密钥)

[2.创建一个Spring Boot项目,并添加相关的依赖,例如](#2.创建一个Spring Boot项目,并添加相关的依赖,例如)

[3.创建一个Java类作为Open AI的HTTP客户端,例如](#3.创建一个Java类作为Open AI的HTTP客户端,例如)

[4.在Spring Boot的配置文件中添加Open AI的API密钥](#4.在Spring Boot的配置文件中添加Open AI的API密钥)

[5.在Spring Boot的控制器中调用Open AI的API接口,例如](#5.在Spring Boot的控制器中调用Open AI的API接口,例如)


1.在Open AI官方网站上注册账号并获取API密钥

2.创建一个Spring Boot项目,并添加相关的依赖,例如

bash 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-validation</artifactId>
</dependency>

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-test</artifactId>
   <scope>test</scope>
</dependency>

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-security</artifactId>
</dependency>

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

<dependency>
   <groupId>org.springframework.data</groupId>
   <artifactId>spring-data-rest-webmvc</artifactId>
</dependency>

3.创建一个Java类作为Open AI的HTTP客户端,例如

java 复制代码
package com.example.demo.service;

import java.net.URI;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.http.RequestEntity;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;

@Service
public class OpenAiApiService {
    
    @Value("${openai.api.key}")
    private String apiKey;
    
    private RestTemplate restTemplate;
    
    public OpenAiApiService() {
        restTemplate = new RestTemplate();
    }
    
    public String generateText(String prompt) {
        String apiUrl = "https://api.openai.com/v1/engines/davinci-codex/completions";
        
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_JSON);
        headers.setBearerAuth(apiKey);
        
        String requestBody = "{\"prompt\": \"" + prompt + "\", \"max_tokens\": 60}";
        
        RequestEntity<String> requestEntity = RequestEntity
            .post(URI.create(apiUrl))
            .headers(headers)
            .body(requestBody);
        
        ResponseEntity<String> responseEntity = restTemplate.exchange(requestEntity, String.class);
        return responseEntity.getBody();
    }
}

4.在Spring Boot的配置文件中添加Open AI的API密钥

yaml 复制代码
openai:
  api:
    key: YOUR_API_KEY_HERE

5.在Spring Boot的控制器中调用Open AI的API接口,例如

java 复制代码
package com.example.demo.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

import com.example
相关推荐
落落落sss7 分钟前
MQ集群
java·服务器·开发语言·后端·elasticsearch·adb·ruby
DevinLGT24 分钟前
6Pin Type-C Pin脚定义:【图文讲解】
人工智能·单片机·嵌入式硬件
宋一诺3328 分钟前
机器学习—高级优化方法
人工智能·机器学习
大鲤余37 分钟前
Rust,删除cargo安装的可执行文件
开发语言·后端·rust
龙的爹233341 分钟前
论文 | The Capacity for Moral Self-Correction in LargeLanguage Models
人工智能·深度学习·机器学习·语言模型·自然语言处理·prompt
Mr.简锋44 分钟前
opencv视频读写
人工智能·opencv·音视频
Baihai_IDP44 分钟前
「混合专家模型」可视化指南:A Visual Guide to MoE
人工智能·llm·aigc
她说彩礼65万1 小时前
Asp.NET Core Mvc中一个视图怎么设置多个强数据类型
后端·asp.net·mvc
陈随易1 小时前
农村程序员-关于小孩教育的思考
前端·后端·程序员
_江南一点雨1 小时前
SpringBoot 3.3.5 试用CRaC,启动速度提升3到10倍
java·spring boot·后端