贡献指南
代码格式化和 Javadoc
在提交 PR 之前,请运行以下命令以确保正确的格式化和 Javadoc 处理
./mvnw spring-javaformat:apply javadoc:javadoc -Pjavadoc
-Pjavadoc
是一个 profile,用于启用 Javadoc 处理,从而在开发时避免冗长的构建时间。
贡献新的 AI 模型实现
本节概述了贡献新的 AI 模型实现的步骤。AI 模型差异很大,具有不同的输入和输出——从将文本输入转换为文本输出的聊天模型,到从文本描述生成图像的文本到图像模型。复杂的模型甚至可以处理多种类型的输入和输出,例如结合文本、图像和视频以产生混合媒体输出。
要贡献新模型,请遵循以下步骤
-
创建低级客户端 API 类:如果没有适合该 AI 模型的现有 Java 客户端,您需要开发一个低级客户端 API 类。这通常涉及使用 Spring Framework 中的
RestClient
类,类似于OpenAiApi
类。 -
创建模型实现 确保您的客户端符合通用模型 API。如果您的模型的输入和输出受支持,请使用现有的请求和响应类。否则,为通用模型 API 创建新类并建立一个新的 Java 包。在记录个人身份信息 (PII) 时,使用
PII_MARKER
Slf4j 标记进行标记。 -
实现自动配置和 Spring Boot Starter:此步骤涉及创建必要的自动配置和 Spring Boot Starter,以便轻松地在 Spring Boot 应用程序中实例化新模型。
-
编写测试:所有新类都应附带全面的测试。现有测试可以作为构建和实现测试的有用参考。
-
文档化您的贡献:确保您的文档遵循现有格式。有关建议的结构和格式示例,请参阅 Open AI 聊天文档。
通过遵循这些指南,我们可以极大地扩展框架支持的模型范围,同时遵循通用的实现和文档模式。