diff --git a/README.md b/README.md index 00b25c6..6586aa3 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ ```java - 2024.01.2 + 2024.01.3 diff --git a/README.zh_CN.md b/README.zh_CN.md index 3186224..574eed3 100644 --- a/README.zh_CN.md +++ b/README.zh_CN.md @@ -46,7 +46,7 @@ ```java - 2024.01.2 + 2024.01.3 diff --git a/docs/docs/release/latest.md b/docs/docs/release/latest.md index d400b97..114f28d 100644 --- a/docs/docs/release/latest.md +++ b/docs/docs/release/latest.md @@ -12,7 +12,7 @@ title: 2024.01.3 (latest) - 支持新模型 `gpt-4o` -### Google Gemini +## Google Gemini --- diff --git a/pom.xml b/pom.xml index 88317d4..036f548 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ org.devlive.sdk openai-java-sdk - 2024.01.3 + 2025.1.0 openai-java-sdk diff --git a/src/main/java/org/devlive/sdk/core/provider/AssistantServiceProvider.java b/src/main/java/org/devlive/sdk/core/provider/AssistantServiceProvider.java new file mode 100644 index 0000000..3b3cebf --- /dev/null +++ b/src/main/java/org/devlive/sdk/core/provider/AssistantServiceProvider.java @@ -0,0 +1,58 @@ +package org.devlive.sdk.core.provider; + +import org.devlive.sdk.openai.entity.beta.AssistantsEntity; +import org.devlive.sdk.openai.entity.beta.QueryEntity; +import org.devlive.sdk.openai.response.beta.AssistantsResponse; + +/** + * Assistant服务提供者接口 + * 负责处理AI助手相关的操作 + */ +public interface AssistantServiceProvider +{ + /** + * 创建AI助手 + * 创建一个新的Assistant实例 + * + * @param configure Assistant配置参数 + * @return Assistant创建响应结果 + */ + AssistantsEntity createAssistant(AssistantsEntity configure); + + /** + * 获取AI助手列表 + * 返回所有可用的Assistant列表 + * + * @param configure 查询配置参数 + * @return Assistant列表响应结果 + */ + AssistantsResponse listAssistants(QueryEntity configure); + + /** + * 获取AI助手信息 + * 获取指定Assistant的详细信息 + * + * @param assistantId Assistant ID + * @return Assistant信息响应结果 + */ + AssistantsEntity getAssistant(String assistantId); + + /** + * 更新AI助手 + * 更新指定Assistant的配置信息 + * + * @param assistantId Assistant ID + * @param configure 更新的配置参数 + * @return 更新操作响应结果 + */ + AssistantsEntity updateAssistant(String assistantId, AssistantsEntity configure); + + /** + * 删除AI助手 + * 删除指定的Assistant实例 + * + * @param assistantId Assistant ID + * @return 删除操作响应结果 + */ + AssistantsResponse deleteAssistant(String assistantId); +} diff --git a/src/main/java/org/devlive/sdk/core/provider/CompletionServiceProvider.java b/src/main/java/org/devlive/sdk/core/provider/CompletionServiceProvider.java new file mode 100644 index 0000000..b1ccee8 --- /dev/null +++ b/src/main/java/org/devlive/sdk/core/provider/CompletionServiceProvider.java @@ -0,0 +1,31 @@ +package org.devlive.sdk.core.provider; + +import org.devlive.sdk.openai.entity.ChatEntity; +import org.devlive.sdk.openai.entity.CompletionEntity; +import org.devlive.sdk.openai.response.ChatResponse; +import org.devlive.sdk.openai.response.CompleteResponse; + +/** + * 补全服务提供者接口 + * 负责处理文本补全和聊天补全相关的功能 + */ +public interface CompletionServiceProvider +{ + /** + * 创建文本补全请求 + * 根据给定的提示生成文本补全 + * + * @param configure 补全配置参数 + * @return 补全响应结果 + */ + CompleteResponse createCompletion(CompletionEntity configure); + + /** + * 创建聊天补全请求 + * 进行多轮对话形式的文本生成 + * + * @param configure 聊天配置参数 + * @return 聊天响应结果 + */ + ChatResponse createChatCompletion(ChatEntity configure); +} diff --git a/src/main/java/org/devlive/sdk/core/provider/FileServiceProvider.java b/src/main/java/org/devlive/sdk/core/provider/FileServiceProvider.java new file mode 100644 index 0000000..61862f7 --- /dev/null +++ b/src/main/java/org/devlive/sdk/core/provider/FileServiceProvider.java @@ -0,0 +1,55 @@ +package org.devlive.sdk.core.provider; + +import org.devlive.sdk.openai.entity.FileEntity; +import org.devlive.sdk.openai.response.FileResponse; + +/** + * 文件服务提供者接口 + * 负责处理文件上传、下载、删除等操作 + */ +public interface FileServiceProvider +{ + /** + * 获取文件列表 + * 返回所有已上传的文件信息 + * + * @return 文件列表响应结果 + */ + FileResponse listFiles(); + + /** + * 上传文件 + * 将文件上传到服务器 + * + * @param configure 文件上传配置参数 + * @return 文件上传响应结果 + */ + FileEntity uploadFile(FileEntity configure); + + /** + * 删除文件 + * 从服务器删除指定文件 + * + * @param fileId 要删除的文件ID + * @return 删除操作响应结果 + */ + FileResponse deleteFile(String fileId); + + /** + * 获取文件信息 + * 获取指定文件的元数据信息 + * + * @param fileId 文件ID + * @return 文件信息响应结果 + */ + FileEntity getFile(String fileId); + + /** + * 获取文件内容 + * 下载指定文件的实际内容 + * + * @param fileId 文件ID + * @return 文件内容 + */ + Object getFileContent(String fileId); +} diff --git a/src/main/java/org/devlive/sdk/core/provider/FineTuningServiceProvider.java b/src/main/java/org/devlive/sdk/core/provider/FineTuningServiceProvider.java new file mode 100644 index 0000000..2276ad7 --- /dev/null +++ b/src/main/java/org/devlive/sdk/core/provider/FineTuningServiceProvider.java @@ -0,0 +1,55 @@ +package org.devlive.sdk.core.provider; + +import org.devlive.sdk.openai.entity.FineTuningEntity; +import org.devlive.sdk.openai.response.FineTuningResponse; + +/** + * 模型微调服务提供者接口 + * 负责处理模型微调相关的操作 + */ +public interface FineTuningServiceProvider +{ + /** + * 获取微调任务列表 + * 返回所有微调作业的信息 + * + * @return 微调任务列表响应结果 + */ + FineTuningResponse listJobs(); + + /** + * 创建微调任务 + * 启动一个新的模型微调作业 + * + * @param configure 微调配置参数 + * @return 微调任务创建响应结果 + */ + FineTuningResponse createJob(FineTuningEntity configure); + + /** + * 获取任务事件 + * 获取指定微调任务的事件列表 + * + * @param jobId 任务ID + * @return 任务事件响应结果 + */ + FineTuningResponse getJobEvents(String jobId); + + /** + * 获取任务信息 + * 获取指定微调任务的详细信息 + * + * @param jobId 任务ID + * @return 任务信息响应结果 + */ + FineTuningEntity getJob(String jobId); + + /** + * 取消任务 + * 取消正在进行的微调任务 + * + * @param jobId 任务ID + * @return 取消操作响应结果 + */ + FineTuningEntity cancelJob(String jobId); +} diff --git a/src/main/java/org/devlive/sdk/core/provider/ImageServiceProvider.java b/src/main/java/org/devlive/sdk/core/provider/ImageServiceProvider.java new file mode 100644 index 0000000..ac7e038 --- /dev/null +++ b/src/main/java/org/devlive/sdk/core/provider/ImageServiceProvider.java @@ -0,0 +1,38 @@ +package org.devlive.sdk.core.provider; + +import org.devlive.sdk.openai.entity.ImageEntity; +import org.devlive.sdk.openai.response.ImageResponse; + +/** + * 图像服务提供者接口 + * 负责处理图像生成、编辑和变体创建相关的功能 + */ +public interface ImageServiceProvider +{ + /** + * 创建图像 + * 根据文本描述生成新的图像 + * + * @param configure 图像生成配置参数 + * @return 图像生成响应结果 + */ + ImageResponse createImage(ImageEntity configure); + + /** + * 编辑图像 + * 对已有图像进行编辑修改 + * + * @param configure 图像编辑配置参数 + * @return 图像编辑响应结果 + */ + ImageResponse editImage(ImageEntity configure); + + /** + * 创建图像变体 + * 基于输入图像生成相似但不同的新图像 + * + * @param configure 变体生成配置参数 + * @return 图像变体响应结果 + */ + ImageResponse createImageVariations(ImageEntity configure); +} diff --git a/src/main/java/org/devlive/sdk/core/provider/ModelServiceProvider.java b/src/main/java/org/devlive/sdk/core/provider/ModelServiceProvider.java new file mode 100644 index 0000000..a0d318e --- /dev/null +++ b/src/main/java/org/devlive/sdk/core/provider/ModelServiceProvider.java @@ -0,0 +1,27 @@ +package org.devlive.sdk.core.provider; + +import org.devlive.sdk.openai.entity.ModelEntity; +import org.devlive.sdk.openai.response.ModelResponse; + +/** + * 模型服务提供者接口 + * 负责处理AI模型相关的操作,包括获取模型列表和模型详情 + */ +public interface ModelServiceProvider +{ + /** + * 获取可用模型列表 + * 返回所有当前可用的AI模型信息 + * + * @return 包含模型列表的响应对象 + */ + ModelResponse listModels(); + + /** + * 获取指定模型的详细信息 + * + * @param modelId 模型ID + * @return 模型的详细信息 + */ + ModelEntity getModel(String modelId); +}