kristinaxm/kx-intellect
GitHub: kristinaxm/kx-intellect
一个基于 Spring Boot 和 Kotlin 构建的 GDPR 合规 AI 中间件,在前端应用与 LLM 之间提供安全的数据保护桥接。
Stars: 0 | Forks: 0
### **KX INTELLECT**
#### *符合 GDPR 的 AI 中间件*
##### `KX INTELLECT 是一个中间件服务,它通过 OpenRouter 在用户和大型语言模型 之间充当安全且符合 GDPR 标准的桥梁。`
/F
# Mac/Linux - 查找占用端口 8080 的进程
lsof -i :8080
# Mac/Linux - 终止进程
kill -9
```
### 429 请求过多
现象:
```
HTTP 429 Too Many Requests
```
原因:
```
Rate limit of 60 requests per minute exceeded.
```
解决方案:
```
Wait 60 seconds.
The rate limiter resets every minute.
```
### 503 服务不可用 / 熔断器已激活
```
"The AI service is currently unavailable... (Circuit breaker active)"
```
原因:
```
AI service failed repeatedly, and the Circuit Breaker opened.
```
解决方案:
```
Wait 30 seconds.
The system will test the service with 3 calls and close the circuit if successful.
```
### 前端中的 CORS 错误
现象:
```
Access to fetch at 'http://localhost:8080/api/v1/chat'
from origin 'http://localhost:5173'
has been blocked by CORS policy
```
原因:
```
The frontend origin is not allowed in the backend CORS configuration.
```
解决方案:
```
.allowedOrigins(
"http://localhost:5173",
"http://localhost:5174",
"http://localhost:5175"
)
```
### GitHub 登录重定向错误
现象:
```
redirect_uri_mismatch
```
原因:
```
Callback URL in GitHub OAuth settings does not match exactly.
```
解决方案:
```
Set the GitHub OAuth callback URL to:
http://localhost:8080/api/v1/auth/github/callback
Use your production URL when deployed.
```
现象:
```
HTTP 403 Forbidden
or
HTTP 404 Not Found
```
解决方案:
```
1. Verify the backend is running on port 8080
2. Allow Swagger endpoints in SecurityConfig.kt
3. Verify SpringDoc configuration in application.yml
4. Ensure SpringDoc dependency exists in build.gradle
5. Restart the backend
```
SecurityConfig.kt:
```
.requestMatchers(
"/swagger-ui.html",
"/swagger-ui/**",
"/api-docs/**",
"/v3/api-docs/**"
).permitAll()
```
application.yml:
```
springdoc:
api-docs:
path: /api-docs
swagger-ui:
path: /swagger-ui.html
```
build.gradle:
```
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.9")
```
### H2 控制台未显示
现象:
```
/h2-console returns 404 or blank page
```
解决方案:
application.yml:
```
spring:
h2:
console:
enabled: true
path: /h2-console
```
SecurityConfig.kt:
```
.requestMatchers("/h2-console/**").permitAll()
```
### 会话已过期 / 需要 GDPR 授权
现象:
```
"GDPR Notice: Please provide consent before continuing..."
```
原因:
```
Consent expired after 1 year or was deleted.
```
解决方案:
```
curl -X POST http://localhost:8080/api/v1/gdpr/consent \
-H "Content-Type: application/json" \
-d '{"sessionId":"your-session-id","dataStorageConsent":true}'
```
### 找不到 gradlew 命令
现象:
```
'gradlew' is not recognized as an internal or external command
```
解决方案:
```
# Mac/Linux
chmod +x gradlew
# Windows/Mac/Linux
./gradlew bootRun
```
### JDK 版本问题
现象:
```
Unsupported class file major version
or
MockK errors
```
解决方案:
```
java {
toolchain {
languageVersion = JavaLanguageVersion.of(21)
}
}
```
## 快速参考
```
┌──────────────────────────┬──────────────────────────────────────────────┐
│ Problem │ Quick Fix │
├──────────────────────────┼──────────────────────────────────────────────┤
│ JWT_SECRET missing │ export JWT_SECRET="..." │
│ Invalid API key │ Generate new key at openrouter.ai/keys │
│ Port 8080 in use │ Kill process or change port │
│ 429 Rate limit │ Wait 60 seconds │
│ 503 Circuit breaker │ Wait 30 seconds │
│ CORS error │ Add origin to CorsConfig │
│ GitHub callback error │ Check redirect URI │
│ Swagger 403 │ Add permitAll in SecurityConfig │
│ H2 404 │ Enable console in application.yml │
│ Consent expired │ Give consent again │
└──────────────────────────┴──────────────────────────────────────────────┘
```
### 总结
*KX INTELLECT 作为中间件*
如果没有中间件层,前端应用程序将直接调用 AI 提供商。这会将 API 密钥暴露给客户端,没有对话记忆、没有 GDPR 授权、没有 PII 加密、没有数据导出或删除、没有速率限制、没有熔断器保护,也没有审计日志。当 AI 服务失败时,用户会看到原始的异常信息。成本可能会失去控制。 **KX INTELLECT** 通过位于前端和 AI 提供商之间解决了所有这些问题。API 密钥在后端保持隐藏。该中间件管理最多五十条消息的基于会话的对话记忆,处理带有时间戳的 GDPR 授权,检测并使用 AES-256 GCM 加密个人信息,并提供完整的数据导出和“被遗忘权”端点。速率限制将请求限制为每分钟 60 个。熔断器在反复失败后开启,使调用在几毫秒内失败,而不是等待超时。带有指数退避的重试机制负责处理暂时性故障,回退机制则返回友好的错误消息。审计日志记录所有 GDPR 事件,而 PII 过滤器确保日志中永远不会出现敏感数据。 本项目作为一个学校项目构建,但完全开源且免费使用。它专注于安全性和 GDPR 合规性,使其成为任何希望安全集成 AI 的人的坚实基础。代码是模块化的,可以针对不同的用例进行扩展或自定义。对于生产部署,H2 数据库可以替换为 PostgreSQL 或 MySQL,并且应正确设置环境变量。 *随着 AI 在应用程序中变得越来越普遍,拥有一个安全且合规的中间件层变得至关重要。KX INTELLECT 正好提供了这一点,使开发者能够专注于构建功能,而无需担心数据隐私、安全漏洞或法律合规问题。*
如果没有中间件层,前端应用程序将直接调用 AI 提供商。这会将 API 密钥暴露给客户端,没有对话记忆、没有 GDPR 授权、没有 PII 加密、没有数据导出或删除、没有速率限制、没有熔断器保护,也没有审计日志。当 AI 服务失败时,用户会看到原始的异常信息。成本可能会失去控制。 **KX INTELLECT** 通过位于前端和 AI 提供商之间解决了所有这些问题。API 密钥在后端保持隐藏。该中间件管理最多五十条消息的基于会话的对话记忆,处理带有时间戳的 GDPR 授权,检测并使用 AES-256 GCM 加密个人信息,并提供完整的数据导出和“被遗忘权”端点。速率限制将请求限制为每分钟 60 个。熔断器在反复失败后开启,使调用在几毫秒内失败,而不是等待超时。带有指数退避的重试机制负责处理暂时性故障,回退机制则返回友好的错误消息。审计日志记录所有 GDPR 事件,而 PII 过滤器确保日志中永远不会出现敏感数据。 本项目作为一个学校项目构建,但完全开源且免费使用。它专注于安全性和 GDPR 合规性,使其成为任何希望安全集成 AI 的人的坚实基础。代码是模块化的,可以针对不同的用例进行扩展或自定义。对于生产部署,H2 数据库可以替换为 PostgreSQL 或 MySQL,并且应正确设置环境变量。 *随着 AI 在应用程序中变得越来越普遍,拥有一个安全且合规的中间件层变得至关重要。KX INTELLECT 正好提供了这一点,使开发者能够专注于构建功能,而无需担心数据隐私、安全漏洞或法律合规问题。*
标签:AES-256 GCM, AI中间件, AI安全, API文档, Chat Copilot, CISA项目, CORS, CSRF, DLL 劫持, GDPR合规, GitHub OAuth, H2数据库, JWT认证, Kotlin, LLM网关, OpenAPI, OpenRouter, PII检测, React, Resilience4j, Spring Actuator, Spring Boot, Swagger, Syscalls, Vite, 个人隐私信息保护, 企业级安全, 会话管理, 前后端分离, 大语言模型, 安全代理, 审计日志, 对话记忆, 应用监控, 微服务架构, 数据加密, 数据合规, 数据导出, 熔断器, 网络安全, 自定义脚本, 被遗忘权, 请求响应过滤, 重试机制, 限流, 隐私保护, 隐私计算