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
相关推荐
国产化创客3 分钟前
基于AI大模型智能硬件--小智AI项目PC端部署测试
人工智能
海边夕阳20064 分钟前
【每天一个AI小知识】:什么是零样本学习?
人工智能·经验分享·学习
平凡而伟大(心之所向)7 分钟前
云架构设计与实践:从基础到未来趋势
人工智能·阿里云·系统架构·安全架构
数据与后端架构提升之路8 分钟前
构建一个可进化的自动驾驶数据管道:规则引擎与异常检测的集成
人工智能·机器学习·自动驾驶
间彧21 分钟前
Kubernetes的Pod与Docker Compose中的服务在概念上有何异同?
后端
间彧25 分钟前
从开发到生产,如何将Docker Compose项目平滑迁移到Kubernetes?
后端
间彧30 分钟前
如何结合CI/CD流水线自动选择正确的Docker Compose配置?
后端
间彧31 分钟前
在多环境(开发、测试、生产)下,如何管理不同的Docker Compose配置?
后端
间彧33 分钟前
如何为Docker Compose中的服务配置健康检查,确保服务真正可用?
后端