# spring-ai-plus **Repository Path**: yudaocode/spring-ai-plus ## Basic Information - **Project Name**: spring-ai-plus - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-28 - **Last Updated**: 2026-06-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # spring-ai-plus Spring AI 的"plus"版本:**统一接入国内主流大模型**。基于 Spring AI 2.0,复用其 `ChatModel` / `ChatClient` 生态,国内厂商只需配 `api-key` 即可开箱使用。 - JDK 25 · Maven · Spring Boot 4 · Spring AI 2.0.0 - 首批支持(OpenAI 兼容协议):通义千问 Qwen、DeepSeek、智谱 GLM、月之暗面 Kimi ## 模块结构 ``` spring-ai-plus 父 pom(aggregator) ├─ spring-ai-plus-core 厂商目录 + ChatModel 工厂 + 统一注册表 ├─ spring-ai-plus-autoconfigure 自动装配:按配置动态注册每个厂商的 bean └─ spring-ai-plus-spring-boot-starter 一站式 starter(用户只引这一个) ``` 设计要点:4 家均为 OpenAI 兼容,因此复用 Spring AI 2.0 的 `OpenAiChatModel` (2.0 底层已切换为官方 OpenAI Java SDK),每家仅预置 `base-url` 与默认模型。 ## 快速开始 引入 starter: ```xml com.springai.plus spring-ai-plus-spring-boot-starter 0.0.1-SNAPSHOT ``` 配置(`application.yml`),map 的 key 即厂商 id: ```yaml spring: ai: plus: providers: qwen: { api-key: ${QWEN_KEY} } deepseek: { api-key: ${DEEPSEEK_KEY} } zhipu: { api-key: ${ZHIPU_KEY} } kimi: { api-key: ${KIMI_KEY} } # 可选覆盖: # deepseek: { api-key: ..., model: deepseek-reasoner, base-url: https://api.deepseek.com/v1 } ``` 使用方式一:按 id 注入具体 bean(bean 名为 `ChatModel` / `ChatClient`,并带 `@Qualifier("")`): ```java @Component class MyService { private final ChatClient deepseek; MyService(@Qualifier("deepseek") ChatClient deepseek) { this.deepseek = deepseek; } String ask(String q) { return deepseek.prompt().user(q).call().content(); } } ``` 使用方式二:注入统一注册表,运行时按 id 选择厂商: ```java @Component class RouterService { private final PlusChatRegistry registry; RouterService(PlusChatRegistry registry) { this.registry = registry; } String ask(String providerId, String q) { return registry.chatClient(providerId).prompt().user(q).call().content(); } } ``` ## 内置厂商目录 | id | 厂商 | base-url | 默认模型 | |----|------|----------|----------| | `qwen` | 通义千问 | dashscope.aliyuncs.com/compatible-mode/v1 | qwen-plus | | `deepseek` | DeepSeek | api.deepseek.com/v1 | deepseek-chat | | `zhipu` | 智谱 GLM | open.bigmodel.cn/api/paas/v4 | glm-4-plus | | `kimi` | 月之暗面 Kimi | api.moonshot.cn/v1 | moonshot-v1-8k | > 非内置厂商:只要兼容 OpenAI 协议,配置时显式提供 `base-url` 即可接入。 ## 构建 需要 JDK 25: ```bash export JAVA_HOME=$(/usr/libexec/java_home -v 25) mvn clean install ``` ## 路线图(暂未实现) 当前范围为"仅统一接入"。后续可扩展:更多厂商(豆包/混元/文心/讯飞等,含自定义签名鉴权)、 路由与容灾、多 key 轮询、用量统计、OpenAI 兼容网关。