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
相关推荐
颜酱几秒前
08 | 把维度值同步到 Elasticsearch(生成阶段)
人工智能·python·langchain
小马哥crazymxm1 分钟前
Arxiv论文周选 (2026-W28)
论文阅读·人工智能·科技
ASKED_20192 分钟前
一文阐述国内网络环境下使用NIM方法
人工智能·系统架构
GlobalHRTalk3 分钟前
埃及名义雇主EOR业务概述与市场发展优势分析
大数据·运维·人工智能
董员外7 分钟前
RAG 系统进化论(二):Naive RAG,检索增强生成的最小闭环
前端·人工智能·后端
Zeeland7 分钟前
Agent 能完成一个任务,但它能持续追一个三个月的目标吗?
人工智能·github·openai
Sunlly8 分钟前
一次消息如何变成多步行动:拆开 OpenClaw 的 Agent Loop
人工智能
黄华SJ520it15 分钟前
甄味康商城系统开发|大健康新零售解决方案
人工智能·零售·系统开发
掘金一周24 分钟前
看看大家每月的成本有多少 | 沸点周刊 7.30
前端·人工智能·后端
Zzj_tju26 分钟前
如何复现一篇 LLM 论文:环境、数据、权重、seed 和日志
人工智能·自然语言处理