[AC-AISVC-50] 合入第一个稳定版本 #2

Merged
MerCry merged 32 commits from feature/prompt-unification-and-logging into main 2026-02-26 13:03:31 +00:00
Owner
No description provided.
MerCry added 31 commits 2026-02-26 13:02:58 +00:00
adc78a6b9b feat: 添加Docker容器部署配置 [AC-AISVC-01]
- 添加 ai-service 后端 Dockerfile (Python 3.11 + uv)
- 添加 ai-service-admin 前端 Dockerfile (Node 20 + nginx)
- 添加 docker-compose.yaml 编排文件 (含postgres/qdrant)
- 添加 nginx.conf 前端反向代理配置
- 添加 .dockerignore 文件
- 添加 .env.example 环境变量示例
f2d29dc2c4 feat: 添加Ollama服务支持嵌入模型部署 [AC-AISVC-01]
- docker-compose.yaml 添加 Ollama 容器
- 更新 .env.example 添加 Ollama 配置
- README 添加模型拉取步骤和架构图更新
d8f440077a fix: 修正DeepSeek配置示例并更新Docker Compose语法 [AC-AISVC-01]
- DeepSeek使用deepseek作为provider而非openai
- 更新所有docker-compose命令为docker compose (V2语法)
b6218dec1a feat: 调整前端端口为8181并添加宿主机Nginx配置示例 [AC-AISVC-01]
- 前端端口从3000改为8181(避免与常用端口冲突)
- 添加 deploy/nginx.conf.example 宿主机Nginx配置示例
- 更新README添加Nginx配置说明
7c8e4b6dc7 feat: 调整端口映射,后端8182供Java渠道侧调用 [AC-AISVC-01]
- 后端端口从8080改为8182(宿主机映射)
- 前端端口8181保持不变
- 更新宿主机Nginx配置示例,支持前后端分离代理
- 容器间通信使用内部网络,无需修改
1000158550 fix: 修复Docker部署健康检查路径和API Key配置 [AC-AISVC-01]
- 修正docker-compose.yaml中健康检查路径从/health改为/ai/health
- 在middleware中添加/ai/health到API Key和租户检查的跳过列表
- 添加前端.env.example配置文件说明API Key配置方法
- 更新README添加API Key配置步骤说明
ee2c7c0d0c feat: 添加API Key认证功能 [AC-AISVC-50]
- 新增 ApiKey 模型和数据库表
- 新增 ApiKeyService 服务,支持内存缓存验证
- 新增 ApiKeyMiddleware 中间件,验证所有请求
- 应用启动时自动创建默认 API Key
- 新增 /admin/api-keys 管理接口
97e7fd0992 feat: 添加API Key认证系统和修复Qdrant搜索问题 [AC-AISVC-50]
- 新增 API Key 数据库模型和服务
- 新增 ApiKeyMiddleware 认证中间件
- 新增 /admin/api-keys 管理接口
- 前端支持 VITE_APP_API_KEY 环境变量
- 修复 optimized_retriever.py 中 Qdrant 搜索调用方式
- 更新 Dockerfile 支持构建时传入 API Key
- 更新 docker-compose.yaml 支持前端 API Key 配置
b11b5a027f fix: 更新数据库脚本添加chat_messages缺失字段 [AC-AISVC-50]
- init_db.sql 添加 prompt_tokens, completion_tokens, total_tokens 等字段
- 新增 migrate_add_columns.sql 用于现有数据库迁移
a4af74751f fix: 修复ConfigForm组件watch无限循环导致内存溢出 [AC-AISVC-50]
- 添加 JSON.stringify 比较避免 watch 循环触发
- 修复前端页面崩溃问题
fd04ed2cef fix: 修复RAG检索多个问题并更新嵌入模型配置 [AC-AISVC-50]
主要修复:
1. 修复ConfigForm和EmbeddingConfigForm组件watch死循环导致内存溢出
2. 修复向量存储格式与检索格式不匹配问题
3. 修复两阶段检索和混合检索互斥问题
4. 修复RRF融合时vector字段丢失问题
5. 修复embedding_full未归一化导致相似度计算错误
6. 修复嵌入模型配置表单不显示参数问题

功能增强:
- 添加with_vectors参数支持返回向量用于重排序
- 新增两阶段+混合检索组合策略
- 更新README嵌入模型配置说明,推荐nomic-embed-text-v2-moe
- 添加cleanup_qdrant.py脚本用于清理向量数据
d660c19ab9 feat: 添加嵌入配置持久化及模型切换警告 [AC-AISVC-50]
- 添加嵌入配置持久化到config/embedding_config.json
- 服务启动时自动加载保存的配置
- 切换模型时前端显示警告提示需要重新上传文档
- 修复OptimizedRetriever缓存问题,每次检索获取最新配置
- 清理调试用的Python临时文件
- 更新.gitignore忽略config目录
15016d3448 fix: 适配qdrant-client 1.17.0 API变更,search方法改为query_points [AC-AISVC-50]
- qdrant-client 1.10+ 版本移除了 search() 方法,改用 query_points()
- 使用 collection_exists() 替代 get_collections() 检查集合存在
- 更新返回结果处理:results.points 替代 results
- 更新 pyproject.toml 版本约束为 >=1.9.0,<2.0.0
- 修正 README.md 中的 docker 命令示例
f81d18a517 feat: 添加LLM配置持久化功能 [AC-AISVC-50]
- LLM配置保存到 config/llm_config.json 文件
- 服务重启后自动加载已保存的配置
- 与嵌入模型配置保持一致的持久化机制
a9d1079294 fix: 修复编排器使用错误的LLM配置问题 [AC-AISVC-50]
- 移除编排器中硬编码的LLMConfig创建
- 让LLM客户端使用自己的默认配置(从LLMConfigManager获取)
- 修复流式生成方法同样的问题
87de47a5df fix: 添加ai-service配置目录volume持久化 [AC-AISVC-50]
- 添加 ai_service_config volume 挂载到 /app/config
- 解决重建容器时配置文件丢失的问题
MerCry added 1 commit 2026-02-26 13:03:06 +00:00
MerCry merged commit 60bf649d96 into main 2026-02-26 13:03:31 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: MerCry/ai-robot-core#2
No description provided.