# ai-test **Repository Path**: yun_long_wang/ai-test ## Basic Information - **Project Name**: ai-test - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-01 - **Last Updated**: 2025-12-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OpenAI对话服务项目 这是一个基于Spring Boot和OpenAI Java Client库的AI对话服务,支持通过REST API与OpenAI模型进行交互,支持单轮对话和连续对话。 ## 项目功能 - 提供REST API接口与OpenAI模型进行对话 - 支持单轮对话和连续对话模式 - 支持动态配置OpenAI服务参数 - 配置管理支持动态更新API密钥 - 完善的错误处理和响应封装 ## 技术栈 - Java 17 - Spring Boot 3.2.0 - OpenAI Java Client (com.theokanning.openai-gpt3-java) - Maven ## 快速开始 ### 1. 准备工作 - JDK 17 或更高版本 - Maven 3.6+ 或 Gradle 7+ - 有效的OpenAI API密钥 ### 2. 配置项目 编辑 `src/main/resources/application.properties` 文件,替换以下内容: ```properties ai.openai.api-key=YOUR_ACTUAL_OPENAI_API_KEY # 可选配置 ai.openai.model=gpt-3.5-turbo # 或 gpt-4 等其他可用模型 ai.openai.temperature=0.7 # 温度参数,控制输出的随机性 ``` ### 3. 构建项目 使用 Maven 构建项目: ```bash mvn clean package ``` ### 4. 运行应用 ```bash java -jar target/agent-flex-demo-0.0.1-SNAPSHOT.jar ``` 应用将在 http://localhost:8080 上运行。 ## API 接口 ### 健康检查 ``` GET /api/chat/health ``` ### 发送消息 (单轮对话) ``` POST /api/chat/send Content-Type: application/json { "message": "你好,请介绍一下你自己" } ``` ### 连续对话 ``` POST /api/chat/send Content-Type: application/json { "message": "今天天气怎么样?", "conversationHistory": [ { "role": "user", "content": "你好,请介绍一下你自己" }, { "role": "assistant", "content": "你好!我是一个基于OpenAI模型的AI助手,我可以回答问题、提供信息或进行对话。" } ] } ``` ### 更新 API 密钥 ``` POST /api/chat/config/apikey Content-Type: text/plain YOUR_NEW_OPENAI_API_KEY ``` ## 测试 ### 运行单元测试 ```bash mvn test ``` ### 功能测试 可以使用 curl、Postman 或其他 HTTP 客户端工具测试 API 接口。 示例 curl 命令: ```bash # 健康检查 curl http://localhost:8080/api/chat/health # 发送消息 (单轮对话) curl -X POST http://localhost:8080/api/chat/send \ -H "Content-Type: application/json" \ -d '{"message": "你好,请介绍一下你自己"}' # 连续对话示例 curl -X POST http://localhost:8080/api/chat/send \ -H "Content-Type: application/json" \ -d '{"message": "今天天气怎么样?", "conversationHistory": [{"role": "user", "content": "你好,请介绍一下你自己"}, {"role": "assistant", "content": "你好!我是一个基于OpenAI模型的AI助手,我可以回答问题、提供信息或进行对话。"}]}' ``` ## 注意事项 1. 本项目需要有效的OpenAI API密钥才能正常工作 2. 使用OpenAI API进行测试时,会产生费用,请合理控制使用频率 3. 实际部署时请确保API密钥的安全性,避免泄露 4. 本项目使用OpenAI Java Client库,与OpenAI API直接交互,不再依赖Agents-Flex框架 5. 在使用连续对话功能时,对话历史的长度会影响API调用的成本,请合理控制对话历史的长度 6. 客户端需要负责维护对话历史,每次请求时将完整的对话历史发送给服务端 ## License Apache License 2.0