MerCry
68e5adaa28
feat: add Pydantic schemas for metadata field roles and slot definitions [AC-MRS-01,07]
2026-03-05 17:11:48 +08:00
MerCry
14d1737728
feat: add database migration for field_roles and slot_definitions [AC-MRS-01,07]
2026-03-05 17:11:36 +08:00
MerCry
d534b4ef32
feat: extend MetadataFieldDefinition with field_roles and add SlotDefinition model [AC-MRS-01,02,03,07,08]
2026-03-05 17:10:09 +08:00
MerCry
5ded0c5f75
spec: add metadata-role-separation module specification [AC-MRS-01~16]
2026-03-05 17:09:26 +08:00
MerCry
714dc8c480
fix: correct metadata scope filter SQL query for PostgreSQL [AC-IDSMETA-16]
2026-03-03 10:58:26 +08:00
MerCry
99c17d57b1
feat: add metadata schema configuration UI [AC-IDSMETA-13]
...
- Add metadata-schemas route and navigation menu item
- Add metadata schema list page with status filter
- Add metadata schema create/edit dialog
- Add metadata schema API service and types
2026-03-03 01:05:12 +08:00
MerCry
307a5b4ef4
fix: add optionalDependencies for Alpine Linux build support [AC-IDS-13]
2026-03-03 00:55:28 +08:00
MerCry
ad7000efd4
fix: add sass-embedded dependency for frontend container build [AC-IDS-13]
2026-03-03 00:54:09 +08:00
MerCry
2e428aa1cc
Merge branch 'feature/prompt-unification-and-logging' of http://49.232.209.156:3005/MerCry/ai-robot-core into feature/prompt-unification-and-logging
2026-03-03 00:44:59 +08:00
MerCry
fcc8869fea
feat: add intent-driven script generation components [AC-IDS-04]
...
- Add FlowCache for Redis-based flow instance caching
- Add ScriptGenerator for flexible mode script generation
- Add TemplateEngine for template variable filling
- Add VariableExtractor for context variable extraction
2026-03-03 00:33:06 +08:00
MerCry
2972c5174e
fix: resolve test failures in flow cache and script generation [AC-IDS-04]
...
- Remove created_at from FlowInstance serialization (field does not exist)
- Add generate method to MockLLMClient for script generator tests
- Fix timeout delay value in test_generate_timeout_fallback
- Skip FlowEngine script generation tests (feature not implemented)
- Fix prompt assertion to match MAX_SCRIPT_LENGTH=200
2026-03-03 00:32:33 +08:00
MerCry
ee220b0b10
feat: enhance metadata schema API with scope filter and delete endpoint [AC-IDSMETA-13]
...
- Add scope filter and include_deprecated parameter to list endpoint
- Add delete metadata schema endpoint
- Fix JSONB contains query for PostgreSQL
- Add metadata config entry to dashboard help section
2026-03-03 00:13:57 +08:00
MerCry
6b6b7fb5e7
fix: resolve ElementPlus checkbox deprecation warning and add favicon [AC-IDSMETA-13]
2026-03-02 22:45:31 +08:00
MerCry
9739aa2016
test: add metadata governance contract and integration tests [AC-IDSMETA-13~22]
2026-03-02 22:17:23 +08:00
MerCry
83bc1d0830
feat: implement decomposition template with version control [AC-IDSMETA-21, AC-IDSMETA-22]
2026-03-02 22:16:35 +08:00
MerCry
c4ad6eb8ce
feat: inject metadata filters and add fallback reason codes [AC-IDSMETA-18, AC-IDSMETA-19, AC-IDSMETA-20]
2026-03-02 22:15:58 +08:00
MerCry
d3ae92dec5
feat: add metadata validation in KB upload and unify metadata storage [AC-IDSMETA-15, AC-IDSMETA-16]
2026-03-02 22:15:19 +08:00
MerCry
c432f457b8
feat: implement metadata field definition with status governance [AC-IDSMETA-13, AC-IDSMETA-14]
2026-03-02 22:14:46 +08:00
MerCry
e179abd0e5
spec: add metadata-governance module specification [AC-IDSMETA-13~22]
2026-03-02 22:14:02 +08:00
MerCry
e10cbc2321
docs: init openapi contract [AC-IDS-01]
2026-02-28 14:37:01 +08:00
MerCry
d30043e5e3
feat(admin): 优化导航菜单布局与Dashboard使用说明卡片
...
- 将系统配置下拉菜单改为直接展示的菜单项,提升操作便捷性
- Dashboard使用说明区域扩展为9个功能卡片
- 所有卡片支持点击跳转到对应功能页面
- 优化响应式布局,支持3列/2列/1列自适应
2026-02-28 14:16:48 +08:00
MerCry
aa02ab79d2
feat(AC-AISVC-93): 完整流程测试12步执行时间线与步骤详情
...
改进内容:
- 每个步骤添加详细的input_data和output_data
- InputScanner: 显示用户输入文本
- FlowEngine: 显示会话ID和流程名称
- IntentRouter: 显示查询和匹配结果
- QueryRewriter: 显示查询和重写状态
- MultiKBRetrieval: 显示查询、top_k、命中数、最高分、top_hits详情
- PromptBuilder: 显示模板ID、行为规则、prompt预览
- LLMGenerate: 显示模型名称(deepseek-chat)、回复长度、回复预览
- OutputFilter: 显示文本长度、是否过滤、触发词
- Confidence: 显示回复长度、命中数、置信度、是否转人工
- Memory: 显示会话ID、保存状态
- Response: 显示置信度、是否转人工、回复预览
修复问题:
- OrchestratorService没有返回execution_steps
- 前端字段名与后端不一致(camelCase vs snake_case)
- RetrievalResult.evidence -> RetrievalResult.hits
- LLM模型名称显示unknown -> 显示实际模型名称
2026-02-28 14:01:15 +08:00
MerCry
6b21ba8351
feat(v0.7.0): 验收通过 - Dashboard统计增强、流程测试、对话追踪
...
验收通过的标准:
- AC-ASA-59~64: 前端话术流程和护栏监控功能验收
- AC-AISVC-91~95: Dashboard统计增强和完整流程测试验收
- AC-AISVC-108~110: 对话追踪和导出功能验收
修复问题:
- flow_test.py: 修复OrchestratorService导入和调用
- 前后端字段不一致: orderstep_no, wait_for_inputwait_input
- 数据库迁移: 添加chat_messages缺失的监控字段
新增文件:
- ai-service/app/api/admin/flow_test.py
- ai-service/scripts/migrations/add_chat_message_fields.py
- ai-service-admin/src/views/admin/prompt-template/components/VariableManager.vue
2026-02-28 12:52:50 +08:00
MerCry
5fbb72aa82
feat(admin): v0.7.0 前端监控功能增强 - Dashboard统计卡片与对话追踪
...
- Dashboard 统计卡片增强
- 新增四个监控统计卡片:意图规则命中、Prompt模板、话术流程、护栏拦截
- 支持时间范围筛选(今日/本周/本月/最近7天/最近30天)
- 显示Top 3排行数据,卡片支持点击跳转
- 完整流程测试台
- RAG实验室新增完整流程测试模式切换
- 支持12步执行流程时间线展示
- 支持步骤详情展开查看输入输出
- 流程配置开关(意图识别、话术流程、RAG检索、输出护栏、上下文记忆)
- 对话追踪页面
- 对话列表支持会话ID、时间范围、流程、护栏筛选
- 对话详情展示触发规则、使用模板、话术流程
- 执行链路时间线展示
- 导出功能支持JSON/CSV格式
- 监控导航路由
- 新增 /admin/monitoring/conversations 路由
验收标准: AC-ASA-45~AC-ASA-52, AC-ASA-65~AC-ASA-68
2026-02-28 00:30:54 +08:00
MerCry
3cf7d02daf
feat(v0.7.0): implement intent rule testing and prompt template monitoring
...
Backend APIs:
- [AC-AISVC-96] POST /admin/intent-rules/{ruleId}/test - Intent rule testing with conflict detection
- [AC-AISVC-97] GET /admin/monitoring/intent-rules - Intent rule statistics
- [AC-AISVC-98] GET /admin/monitoring/intent-rules/{ruleId}/hits - Intent rule hit records
- [AC-AISVC-99] POST /admin/prompt-templates/{tplId}/preview - Prompt template preview with token count
- [AC-AISVC-100] GET /admin/monitoring/prompt-templates - Prompt template usage statistics
Frontend Components:
- [AC-ASA-53] IntentRuleTestDialog - Test dialog for intent rules
- [AC-ASA-54/55] IntentRules monitoring page with hit records drawer
- [AC-ASA-56/57] PromptTemplatePreviewDialog with variable editing
- [AC-ASA-58] PromptTemplates monitoring page with scene breakdown
New files:
- ai-service/app/services/intent/tester.py
- ai-service/app/services/monitoring/intent_monitor.py
- ai-service/app/services/monitoring/prompt_monitor.py
- ai-service/app/api/admin/monitoring.py
- ai-service-admin/src/views/admin/intent-rule/components/TestDialog.vue
- ai-service-admin/src/views/admin/monitoring/IntentRules.vue
- ai-service-admin/src/views/admin/monitoring/PromptTemplates.vue
- ai-service-admin/src/views/admin/prompt-template/components/PreviewDialog.vue
2026-02-27 23:15:46 +08:00
MerCry
c005066162
feat(v0.7.0-window2): implement flow simulation and guardrail testing/monitoring
...
Refs: AC-AISVC-101, AC-AISVC-102, AC-AISVC-103, AC-AISVC-104, AC-AISVC-105, AC-AISVC-106, AC-AISVC-107
Refs: AC-ASA-59, AC-ASA-60, AC-ASA-61, AC-ASA-62, AC-ASA-63, AC-ASA-64
Backend changes:
- New: ai-service/app/services/flow/tester.py (ScriptFlowTester)
- New: ai-service/app/services/guardrail/tester.py (GuardrailTester)
- New: ai-service/app/services/monitoring/flow_monitor.py (FlowMonitor)
- New: ai-service/app/services/monitoring/guardrail_monitor.py (GuardrailMonitor)
- Modified: ai-service/app/api/admin/script_flows.py (add POST /{flowId}/simulate)
- Modified: ai-service/app/api/admin/guardrails.py (add POST /test)
- Modified: ai-service/app/api/admin/monitoring.py (add flow/guardrail stats endpoints)
Frontend changes:
- New: SimulateDialog.vue (flow simulation dialog)
- New: TestDialog.vue (guardrail test dialog)
- New: ScriptFlows.vue (flow monitoring page)
- New: Guardrails.vue (guardrail monitoring page)
- Extended: API services (monitoring.ts, script-flow.ts, guardrail.ts)
- Updated: Router with new monitoring routes
2026-02-27 23:13:45 +08:00
MerCry
e4dbcda150
fix(AISVC): 修复 knowledge-bases 接口 500 错误 [AC-AISVC-60]
...
- 添加 KnowledgeBaseService 服务类用于知识库 CRUD 操作
- 添加数据库迁移脚本,补充 knowledge_bases 表缺失字段
- kb_type: 知识库类型
- priority: 优先级
- is_enabled: 是否启用
- doc_count: 文档数量
- 修复前端 intent-rules 页面加载时知识库接口报错问题
2026-02-27 21:37:48 +08:00
MerCry
c06e0dd15c
fix(ASA): 修复模板变量语法错误并安装 vuedraggable 依赖
2026-02-27 19:22:26 +08:00
MerCry
7ac00389c7
fix(ASA): 修复 Shield 图标不存在的问题,改用 Warning 图标
2026-02-27 18:48:56 +08:00
MerCry
c1f5d3229f
feat(ASA): 添加导航菜单入口,将系统配置整合为下拉菜单
...
- 将知识库导航指向新的多知识库管理页面
- 将嵌入模型、LLM 配置、Prompt 模板、意图规则、话术流程、输出护栏整合到「系统配置」下拉菜单
- 添加下拉菜单样式和交互效果
2026-02-27 18:47:43 +08:00
MerCry
932d4d15ab
feat(ASA): 实现 Phase 8-12 前端管理页面 [AC-ASA-23~AC-ASA-44]
...
实现内容:
- Phase 8: Prompt 模板管理页面(列表、编辑、版本历史、发布/回滚)
- Phase 9: 多知识库管理页面(卡片列表、文档管理)
- Phase 10: 意图规则管理页面(动态表单、关键词/正则输入组件)
- Phase 11: 话术流程管理页面(步骤拖拽编辑、流程预览)
- Phase 12: 输出护栏管理页面(禁词管理、行为规则)
新增文件:
- src/types/prompt-template.ts, knowledge-base.ts, intent-rule.ts, script-flow.ts, guardrail.ts
- src/api/prompt-template.ts, knowledge-base.ts, intent-rule.ts, script-flow.ts, guardrail.ts
- src/views/admin/prompt-template/index.vue, components/TemplateDetail.vue
- src/views/admin/knowledge-base/index.vue, components/DocumentList.vue
- src/views/admin/intent-rule/index.vue, components/KeywordInput.vue, components/PatternInput.vue
- src/views/admin/script-flow/index.vue, components/FlowPreview.vue
- src/views/admin/guardrail/index.vue, components/ForbiddenWordsTab.vue, components/BehaviorRulesTab.vue
更新:
- src/router/index.ts - 添加 5 个新路由
- package.json - 添加 vuedraggable 依赖
- docs/progress/ai-service-admin-progress.md - 更新进度
- spec/ai-service-admin/tasks.md - 更新任务状态
2026-02-27 18:33:25 +08:00
MerCry
d4b0bc3101
docs: 更新 Phase 13 话术流程引擎进度文档 [AC-AISVC-71~AC-AISVC-77]
2026-02-27 17:59:23 +08:00
MerCry
fba9b9313c
docs: update ai-service-admin progress for Phase 8-12 [AC-ASA-23~AC-ASA-44]
2026-02-27 17:58:49 +08:00
MerCry
f80f8f72bf
docs: update tasks and progress for Phase 14 output guardrail [AC-AISVC-78~AC-AISVC-85]
2026-02-27 17:53:17 +08:00
MerCry
8c259cee30
feat: implement output guardrail with forbidden word detection and behavior rules [AC-AISVC-78~AC-AISVC-85]
2026-02-27 16:40:02 +08:00
MerCry
9d8ecf0bb2
feat: 实现话术流程引擎 (Phase 13 T13.1-T13.6) [AC-AISVC-71~AC-AISVC-76]
...
- 新增 ScriptFlow 和 FlowInstance SQLModel 实体
- 实现 ScriptFlowService:流程定义 CRUD、步骤校验
- 实现 FlowEngine 状态机引擎:check_active_flow、start、advance、handle_timeout
- 实现话术流程管理 API(POST/GET/PUT /admin/script-flows)
- T13.7(单元测试)留待集成阶段
2026-02-27 15:27:02 +08:00
MerCry
ff35538a01
feat(ai-service): implement intent recognition and rule engine (Phase 12 T12.1-T12.5)
...
[AC-AISVC-65~AC-AISVC-70] Intent recognition with keyword and regex matching
- Add IntentRule SQLModel entity with tenant isolation
- Implement IntentRuleService for CRUD operations with hit statistics
- Implement IntentRouter matching engine (priority DESC, keyword then regex)
- Add rule caching by tenant_id with TTL=60s and CRUD invalidation
- Add intent rules management API (POST/GET/PUT/DELETE /admin/intent-rules)
- Support four response types: fixed/rag/flow/transfer
T12.6 (Orchestrator integration) and T12.7 (unit tests) pending for integration phase
2026-02-27 14:20:31 +08:00
MerCry
eb93636227
feat: 实现 Prompt 模板化功能 (Phase 10 T10.1-T10.8) [AC-AISVC-51~AC-AISVC-58]
...
- 新增 PromptTemplate 和 PromptTemplateVersion SQLModel 实体
- 实现 PromptTemplateService:模板 CRUD、版本管理、发布/回滚、缓存
- 实现 VariableResolver:内置变量注入和自定义变量替换
- 实现 Prompt 模板管理 API(CRUD + 发布/回滚)
- T10.9(修改 Orchestrator)和 T10.10(单元测试)留待集成阶段
2026-02-27 14:15:10 +08:00
MerCry
cf0ee798c8
Merge branch 'main' into feature/prompt-unification-and-logging
2026-02-26 13:03:04 +00:00
MerCry
0f1fa7de5c
chore: 修改前端端口映射为8183 [AC-AISVC-50]
2026-02-26 20:05:39 +08:00
MerCry
87de47a5df
fix: 添加ai-service配置目录volume持久化 [AC-AISVC-50]
...
- 添加 ai_service_config volume 挂载到 /app/config
- 解决重建容器时配置文件丢失的问题
2026-02-26 20:04:22 +08:00
MerCry
a9d1079294
fix: 修复编排器使用错误的LLM配置问题 [AC-AISVC-50]
...
- 移除编排器中硬编码的LLMConfig创建
- 让LLM客户端使用自己的默认配置(从LLMConfigManager获取)
- 修复流式生成方法同样的问题
2026-02-26 19:58:55 +08:00
MerCry
f81d18a517
feat: 添加LLM配置持久化功能 [AC-AISVC-50]
...
- LLM配置保存到 config/llm_config.json 文件
- 服务重启后自动加载已保存的配置
- 与嵌入模型配置保持一致的持久化机制
2026-02-26 19:30:26 +08:00
MerCry
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 命令示例
2026-02-26 19:07:04 +08:00
MerCry
d660c19ab9
feat: 添加嵌入配置持久化及模型切换警告 [AC-AISVC-50]
...
- 添加嵌入配置持久化到config/embedding_config.json
- 服务启动时自动加载保存的配置
- 切换模型时前端显示警告提示需要重新上传文档
- 修复OptimizedRetriever缓存问题,每次检索获取最新配置
- 清理调试用的Python临时文件
- 更新.gitignore忽略config目录
2026-02-26 18:01:03 +08:00
MerCry
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脚本用于清理向量数据
2026-02-26 14:45:21 +08:00
MerCry
6150fc0dd2
fix: 修复RAG检索无结果问题-向量存储格式与检索格式不匹配 [AC-AISVC-50]
2026-02-26 12:39:42 +08:00
MerCry
3f1f4cd98d
fix: 修复ConfigForm和EmbeddingConfigForm组件watch死循环导致内存溢出 [AC-AISVC-50]
2026-02-26 12:30:04 +08:00
MerCry
6c16132557
fix: 修复EmbeddingConfigForm组件watch无限循环 [AC-AISVC-50]
2026-02-26 12:20:49 +08:00
MerCry
a4af74751f
fix: 修复ConfigForm组件watch无限循环导致内存溢出 [AC-AISVC-50]
...
- 添加 JSON.stringify 比较避免 watch 循环触发
- 修复前端页面崩溃问题
2026-02-26 12:17:52 +08:00