# 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 兼容网关。