agent_chat_m1.sql 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. CREATE TABLE IF NOT EXISTS chat_messages (
  2. id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '主键',
  3. message_id CHAR(36) NOT NULL COMMENT '消息UUID,幂等键',
  4. thread_id CHAR(36) NOT NULL COMMENT '前端会话UUID',
  5. trace_id CHAR(36) NOT NULL COMMENT '本轮Agent链路UUID',
  6. parent_message_id CHAR(36) NULL COMMENT '关联的用户消息UUID',
  7. user_id BIGINT NOT NULL COMMENT '后台用户ID(sys_user.id)',
  8. role VARCHAR(16) NOT NULL COMMENT 'user或assistant',
  9. content LONGTEXT NOT NULL COMMENT '前端渲染内容',
  10. status VARCHAR(16) NOT NULL DEFAULT 'completed' COMMENT 'completed/failed/interrupted',
  11. occurred_at DATETIME(3) NOT NULL COMMENT '消息在Python侧产生时间',
  12. create_time DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '入库时间',
  13. UNIQUE KEY uk_chat_message_id (message_id),
  14. KEY idx_chat_user_thread_time (user_id, thread_id, occurred_at, id),
  15. KEY idx_chat_trace (trace_id),
  16. CONSTRAINT chk_chat_role CHECK (role IN ('user', 'assistant')),
  17. CONSTRAINT chk_chat_status CHECK (status IN ('completed', 'failed', 'interrupted'))
  18. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='Agent前端聊天消息';
  19. CREATE TABLE IF NOT EXISTS agent_intent_log (
  20. id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '主键',
  21. intent_log_id CHAR(36) NOT NULL COMMENT '对外意图日志UUID',
  22. trace_id CHAR(36) NOT NULL COMMENT '本轮Agent链路UUID',
  23. thread_id CHAR(36) NOT NULL COMMENT '前端会话UUID',
  24. message_id CHAR(36) NOT NULL COMMENT '关联用户消息UUID',
  25. user_id BIGINT NOT NULL COMMENT '后台用户ID(sys_user.id)',
  26. intent VARCHAR(32) NOT NULL COMMENT 'chitchat/order_query',
  27. confidence DECIMAL(5,4) NOT NULL COMMENT '置信度0到1',
  28. classifier_source VARCHAR(32) NOT NULL COMMENT 'LLM/RULE_FALLBACK',
  29. model_name VARCHAR(128) NULL COMMENT '分类模型名称',
  30. duration_ms BIGINT NULL COMMENT '分类耗时毫秒',
  31. status VARCHAR(16) NOT NULL DEFAULT 'success' COMMENT 'success/failed',
  32. error_message VARCHAR(1000) NULL COMMENT '失败摘要,不保存用户原文',
  33. create_time DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
  34. UNIQUE KEY uk_agent_intent_log_id (intent_log_id),
  35. UNIQUE KEY uk_agent_intent_message_user (message_id, user_id),
  36. KEY idx_agent_intent_trace (trace_id),
  37. KEY idx_agent_intent_thread_time (user_id, thread_id, create_time),
  38. CONSTRAINT chk_agent_intent CHECK (intent IN ('chitchat', 'order_query')),
  39. CONSTRAINT chk_agent_intent_source CHECK (classifier_source IN ('LLM', 'RULE_FALLBACK')),
  40. CONSTRAINT chk_agent_intent_confidence CHECK (confidence >= 0 AND confidence <= 1)
  41. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='Agent意图识别日志';