当前位置: 首页 > news >正文

网站建设和维护要点重庆cms建站模板

网站建设和维护要点,重庆cms建站模板,哪里网站建设联系,网站开发案例详解 源代码目录 1. 配置 2 .搭建项目 3. 查看对应依赖 3.1 OpenAI 依赖 3.2 配置 OpenAI API 密钥 application.properties application.yml 4. openai实战 5. 运行和测试 6. 高级配置 示例:配置模型和参数 解释: 7. 处理异常和错误 示例:…

目录

1. 配置

2 .搭建项目

3. 查看对应依赖

 3.1 OpenAI 依赖

3.2 配置 OpenAI API 密钥

application.properties

application.yml

4. openai实战

5. 运行和测试

6. 高级配置 

示例:配置模型和参数

解释:

7. 处理异常和错误

示例:全局异常处理

8.监控和日志

示例:添加日志

9.性能优化

示例:异步调用

总结


1. 配置

  • Project:Maven
  • Language:Java
  • SpringBoot:3.4.3
  • Dependencies:

    • Spring Web

    • Spring Boot DevTools(可选,用于开发热部署)

2 .搭建项目

idea里面选择File->New-Project

选择SpringBoot 项目,Language选择java,type选择Maven

Jdk选择对应的版本最低使用17,packaging类型根据自身部署习惯选择jar或者war都可以

选择完成后会跳转如下界面,选择AI,OpenAI勾选即可。

至此项目搭建完成

3. 查看对应依赖

 3.1 OpenAI 依赖

<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-openai-spring-boot-starter</artifactId><version>1.0.0-M6</version>
</dependency>

3.2 配置 OpenAI API 密钥

在 application.properties 或 application.yml 中配置 OpenAI 的 API 密钥。

application.properties

spring.ai.openai.api-key=your-openai-api-key

application.yml

spring:
  ai:
    openai:
      api-key: your-openai-api-key

4. openai实战

创建一个服务类来封装与 OpenAI 的交互逻辑

public class ChatAiController {private static final Logger log = LogManager.getLogger(ChatAiController.class);private final ChatClient chatClient;public ChatAiController(ChatClient.Builder build) {this.chatClient = build.defaultSystem("测试").build();}@GetMapping("/chat")public String chatAI(@RequestParam(value = "message") String message){System.out.println(this.chatClient.prompt().user(message).call().content());return this.chatClient.prompt().user(message).call().content();}
}

5. 运行和测试

启动 Spring Boot 应用程序,并通过 API 端点测试 OpenAI 功能

请求示例:

GET /chat?message=Hello, how are you?

响应示例:

 "I'm just a computer program, so I don't have feelings, but thanks for asking! How can I assist you today?"

6. 高级配置 

Spring AI 提供了多种配置选项,可以根据需求调整 OpenAI 的行为。

示例:配置模型和参数

解释:
  • model:指定使用的模型,如 gpt-3.5-turbo 或 gpt-4

  • temperature:控制生成文本的随机性(0 到 1 之间,值越高越随机)。

  • max-tokens:限制生成文本的最大长度。

7. 处理异常和错误

在实际应用中,处理 API 调用中的异常和错误是非常重要的。你可以使用 Spring 的异常处理机制来捕获和处理这些异常

示例:全局异常处理
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.http.ResponseEntity;
import org.springframework.http.HttpStatus;@ControllerAdvice
public class GlobalExceptionHandler {@ExceptionHandler(Exception.class)public ResponseEntity<String> handleException(Exception ex) {return new ResponseEntity<>("An error occurred: " + ex.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);}
}

8.监控和日志

为了确保 API 调用的稳定性和可维护性,建议添加监控和日志记录。

示例:添加日志
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;@Service
public class OpenAiService {private static final Logger logger = LoggerFactory.getLogger(OpenAiService.class);private final ChatClient chatClient;@Autowiredpublic OpenAiService(ChatClient chatClient) {this.chatClient = chatClient;}public String generateChatResponse(String message) {logger.info("Generating chat response for message: {}", message);return chatClient.call(message);}
}

9.性能优化

对于高并发的场景,可能需要考虑性能优化,如缓存、异步调用等。

示例:异步调用
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import java.util.concurrent.CompletableFuture;@Service
public class OpenAiService {private final ChatClient chatClient;@Autowiredpublic OpenAiService(ChatClient chatClient) {this.chatClient = chatClient;}@Asyncpublic CompletableFuture<String> generateChatResponseAsync(String message) {return CompletableFuture.completedFuture(chatClient.call(message));}
}

总结

通过以上步骤,你可以快速创建一个 Spring Boot 项目并集成 OpenAI 的功能。根据实际需求,你可以进一步扩展和优化这些功能,例如添加日志、异常处理、性能优化等

http://www.dtcms.com/a/424711.html

相关文章:

  • 做外汇需要了解的网站网页制作有什么软件
  • 做棋牌网站建设云南网站开发公司找哪家
  • 文案网站策划书织梦网站系统删除
  • Linux开发工具(一)
  • 虚拟资源站码支付wordpress合江县住房建设规划局网站
  • 国企网站建设标准房地产市场发展趋势
  • 网站 用户粘度无人区高清免费看完整版
  • 做数据可视化的网站汕头网站开发找哪里
  • 【MySQL】深分页的性能优化,游标方案和覆盖索引+延迟回表方案
  • 进入深圳市住房和建设局网站胶州市城乡建设局网站
  • 进口倾角传感器代理与水平监测传感器厂家的选择指南
  • 自定义手机网站建设图片分类展示网站源码
  • 基于python数据挖据的教学监控系统的设计与应用
  • 网络舆情监测系统:洞察网络舆论的利器
  • AI 超级智能体全栈项目阶段三:自定义 Advisor 与结构化输出实现以及对话记忆持久化开发
  • 网站后台模板夜间正能量网站入口网址不用下载
  • 主机屋建网站源码房山建站公司
  • xtuoj 整数分类
  • 精品网站设计欣赏网站站内关键词优化
  • 免费分类信息网站大全全网搜索指数查询
  • 科技网站建设做seo是要先有网站吗
  • Xilinx FPGA上电和配置
  • 网站制作百度cc在线代理
  • 深圳建设网站制作网站修改需要什么
  • 包头天亿网站建设公司北京专业做网站推广
  • Linux 缓冲区与glibc库
  • 网站建设公司怎么挣钱门户模板
  • YOLOv8 —— Anchor-Free 设计
  • 网站建设套餐128000网站设计方案怎么写
  • 唐山专业网站建设公司山西省建设局官方网站