登录(admin 或普通账号,各产品独立 JWT;可开启 TOTP 双因子)
├─ AIP(18080):
│ ├─ 自然语言查数(NLQ)→ 看 SQL/结果/图表(执行前自动注入 RLS/CLS)
│ ├─ 决策证据链 /decision(检索→核验→综合,逐条引用)
│ ├─ 知识库(多格式解析,文档—章节—片段分层树)+ 实体关系抽取 /entity-extract
│ ├─ 元数据语义标注 /schema-annotation + 会话记忆 /memory-manage
│ └─ 多智能体编排 /orchestrate + 工作流
├─ Foundry(18081):
│ ├─ 对象查询(按字段+过滤,OOL)与 对象化 SQL 工作台 /foundry/sql
│ ├─ 指标查询(GMV/AOV 等聚合,ValueType 13 类标准值类型)
│ ├─ 数据集 /foundry/datasets + 数据同步 /foundry/sync + 质量画像
│ ├─ Notebook /foundry/notebook + 块式报表 /foundry/reports + 可视化仪表盘
│ ├─ 实体消解 Fusion /foundry/fusion + 流事件规则 /foundry/stream
│ └─ 统一搜索(顶部全局搜索框,跨对象/指标/数据集/仪表盘融合排序)
└─ Gotham(18083):
├─ 图探索(展开/最短路径/中心度/社群/PageRank 等 10 算法)
├─ 图谱域(行级图谱化导入 /gotham/graph-mapping、图分区压缩 /gotham/graph-partition、时序图分析 /gotham/temporal)
├─ 地图视图 + 时间轴 + 多视图联动 + 全局搜索
├─ 模式识别命中(规则库)
└─ 生成情报报告(HTML/PDF/Word)+ 协作项目/任务/评论
入口:顶部导航「智能查询」/chat。
| 字段 | 值 |
|---|---|
| intent | data_query(confidence 0.5) |
| 数据源 | aip_demo_warehouse |
| SQL | SELECT SUM(sales_amount) AS total_sales FROM orders; |
| rows | [["6470.5"]] |
| chart_type | metric_card |
| 审计 | NLQ_QUERY SUCCESS(含 sql 与 rows) |
POST /api/v1/chat body: {"query":"查询订单总金额"}
| 能力 | 入口/API | 说明 |
|---|---|---|
| 决策证据链 | /decision、POST /api/v1/decision/answer | 5 步链:拆解→三路检索(RAG/实体/结构化 NLQ)→LLM 核验→仅基于证据综合→确定性引用;答案带 [n] 引用,/api/v1/ai-audit?trace_id= 全流程审计回放 |
| 实体/关系抽取 | /entity-extract、POST /api/v1/knowledge/documents/:id/extract | 文档→LLM 抽取实体与关系(JSON 限定 schema),人工确认/拒绝闭环,抽取成果接入检索增强(RAG 第五通道) |
| 知识库分层树 | /knowledge-tree、GET /api/v1/knowledge/documents/:id/outline | PDF/Word 多格式解析,构建「文档—章节—片段」三层大纲,检索结果可回溯标题路径 |
| 元数据语义标注 | /schema-annotation、POST /api/v1/datasources/:id/infer-relationships | 自动推断字段关系(FK/语义/join 路径)与语义类型并给置信度,支持人工确认修正 |
| 会话记忆 | /memory-manage、GET /api/v1/chat/sessions | 上下文压缩 + 记忆持久化,跨轮更连贯;DELETE /api/v1/chat/sessions/:sid/memory 清空单会话记忆 |
| 多智能体编排 | /orchestrate | 四策略(sequential/parallel/leader_follow/debate)+ LLM 任务分解/融合 |
| 工作流 | 管理后台「工作流」 | 节点式 DAG(8 类节点)+ cron/webhook 触发 |
| 评测监控 | 管理后台「评测/监控」 | 20 条黄金用例离线评测(EA/EM/SV)+ 在线指标 |
| 知识库检索 | 管理后台「知识库」 | 文档 + 分块 + 混合检索(语义 0.6 + 关键词 0.4,v5 双表合并去重) |
边界:意图识别为关键词规则;Text2SQL 依赖外部 LLM(无 key/离线时降级);一次只查一个数据源;工作流 send_notification 通知支持三渠道——internal(审计留痕)/ feishu(飞书私聊)/ email(SMTP 邮件),feishu / email 需管理员先在管理后台配置好凭证。
入口:侧边栏「对象查询」/foundry/query,接口 POST /api/v1/objects/:id/query。
{
"fields": ["order_id", "amount"],
"filters": [{"field": "amount", "op": "gte", "value": 100}]
}
fields 选择返回列;filters 支持 op:eq/gt/gte/lt/lte/ne + 布尔组合 and/or/not;翻译引擎自动参数白名单防注入、link 自动 JOIN、RLS/CLS 注入(与安全标记隐藏列合并生效)。内置演示对象:customer(1) / order(2) / product(3)。限制:OOL 轻量版(单对象、traverse ≤3 层、禁点号)。
入口:侧边栏「SQL 工作台」/foundry/sql,接口 POST /api/v1/ontology/sql/translate|execute。
curl -X POST http://127.0.0.1:18081/api/v1/ontology/sql/execute \
-H "Authorization: Bearer <token>" -H "Content-Type: application/json" \
-d '{"sql":"SELECT order_id, amount FROM order LIMIT 10"}'
| 指标 | 显示名 | 口径 | 演示值 |
|---|---|---|---|
| total_gmv | 总销售额 | SUM(amount) | 6470.5 |
| aov | 客单价 | SUM(amount)/COUNT(*) | — |
POST /api/v1/metrics/query body: {"name":"total_gmv"} # 返回 rows=[[6470.5]]
指标查询翻译为 SQL 时注入属性级只读权限(口径由指标定义锁定)。v5 指标字段支持 13 类标准值类型(ValueType),计算属性可引用本体函数(POST /api/v1/ontology/functions/:name/test 在线测试)。
入口:侧边栏「数据集」/foundry/datasets、「数据同步」/foundry/sync、「数据质量」/foundry/quality。
| 能力 | 入口/API | 说明 |
|---|---|---|
| 数据集 | GET/POST /api/v1/datasets、POST /api/v1/datasets/upload | 数据源拉数(platform_ds)或 CSV/JSON 上传构建数据集,版本发布与历史追溯、数据预览、基础画像与血缘记录 |
| 数据同步 | POST /api/v1/sync/targets、POST /api/v1/sync/targets/:id/run | 全量重写 / 水位线断点续传增量同步,成功自动联动血缘与质量画像刷新,进度可轮询 |
| 质量画像 | POST /api/v1/quality/profiles/:id/run、GET /api/v1/quality/profiles/:id/scores | 完整性/唯一性/有效性/时效性四维加权评分,低于阈值自动进入质量问题闭环 |
入口:侧边栏「Notebook 分析」/foundry/notebook。文本 / SQL / 图表三类单元格混排,可逐块或全量运行(POST /api/v1/notebooks/:id/cells/:cid/run、POST /api/v1/notebooks/:id/run);SQL 单元复用对象化查询的安全翻译 + RLS/CLS + 编辑态叠加,chart 块直接复用引用 SQL 块结果集(不重算)。
入口:侧边栏「智能报表」/foundry/reports。按文本 / 图表 / 表格块编排(GET/POST /api/v1/reports),定时生成快照(POST /api/v1/reports/:id/run)+ 邮件 / 站内多渠道分发(POST /api/v1/reports/:id/dispatch);快照历史 GET /api/v1/reports/:id/runs、预览 GET /api/v1/report-runs/:id/snapshot;报表与指标血缘自动记录。
入口:侧边栏「实体消解」/foundry/fusion。规则分桶 + 相似度匹配发现疑似重复实体(POST /api/v1/fusion/projects/:id/run),阈值外 LLM 复核;人工确认/拒绝闭环(POST /api/v1/fusion/matches/:id/confirm|reject),合并结果可写回原数据或输出新数据集。
Foundry 顶栏全局搜索框(防抖),接口 GET /api/v1/nexus/search?q=&scopes=&limit=。融合对象 / 指标 / 数据集 / 仪表盘 / Notebook 多域结果,RRF 融合排序(1/(60+rank)),同 URI 跨 scope 累加去重;URI 直接映射功能页路由跳转,对象级可见性自动注入。
入口:侧边栏「语义检索」/foundry/search,接口 POST /api/v1/ontology/semantic-search。
{"query":"order","scopes":["object","metric"]}
scopes 可选 object/metric/属性等;返回匹配项(含命中原因),对象级可见性注入;输入"销售额""客户""订单"即可命中对应对象与指标。
入口:Gotham ▾ → 情报工作台 /gotham。SVG 自绘图谱(person/org/ship 分色圆形节点 + 有向边),顶部显示节点/边统计。演示图谱(10 节点 + 8 边):graph:person:zhy(张远,玄武集团)、graph:org:xuanwu(玄武集团,密级 secret)、graph:org:tianhe(天河贸易)、graph:ship:taihe(泰和轮)等。
| 操作 | 入口(页面) | API | 说明 |
|---|---|---|---|
| 展开 | 图分析 → 展开(1-3 度) | GET /api/v1/analysis/graph/expand?node=graph:person:zhy&depth=2&limit=20 | BFS 展开,返回 nodes+levels |
| 最短路径 | 图分析 → 最短路径 | GET /api/v1/analysis/graph/path?from=graph:person:zhy&to=graph:org:tianhe | 返回 path + distance(不可达 distance=-1) |
| 中心度 | 图分析 → 中心度 | GET /api/v1/analysis/graph/centrality?kind=degree | degree/betweenness,归一化 0-1 |
| 社群 | 图分析 → 社群着色 | GET /api/v1/analysis/graph/community | 连通分量 + Louvain,输出 Q |
| PageRank | 图分析 | GET /api/v1/analysis/graph/pagerank | 影响力排序 |
| 节点详情 | 点击节点 | GET /api/v1/graph/nodes/:id | 属性面板(敏感字段脱敏) |
| 邻居高亮 | 点击节点 | GET /api/v1/graph/nodes/:id/neighbors?depth=2 | 高亮关联节点 |
图分析引擎 10 支算法仅 admin 角色可执行。硬上限:展开 limit≤1000、深度 1-3 度,超限 422 GOTHAM_EXPAND_LIMIT_EXCEEDED;路径节点≤100。实测:展开 zhy depth=2 → nodes≥1、levels≥1;最短路径 zhy→tianhe → distance≥1;中心度 entries≥5;社群 communities≥1。
| 操作 | 入口(页面) | API | 说明 |
|---|---|---|---|
| 行级图谱化导入 | /gotham/graph-mapping | GET|PUT /api/v1/ingestion/sources/:id/graph-mapping、POST /api/v1/ingestion/sources/:id/map-to-graph | 数据导入后按映射自动构建实体节点与关系边;外键映射自动建议 mapping-suggest;任务化执行看进度 |
| 图分区与压缩 | /gotham/graph-partition | POST /api/v1/analysis/graph/partition、GET /api/v1/analysis/graph/partitions | 多层折叠 Louvain 社区发现 + 小社区归并,输出社区分布统计与可视化 |
| 时序图分析 | /gotham/temporal | POST /api/v1/analysis/graph/temporal/subgraph|trend|path | 按时间窗口提取子图、关系趋势统计(day/week/month 桶)与带时间的路径分析 |
入口:/gotham/map。
| 操作 | 页面功能 | API |
|---|---|---|
| 要素列表 | 地图要素(点/线) | GET /api/v1/map/features |
| 框选查询 | 矩形范围命中 | GET /api/v1/map/features/bbox?minLng=&minLat=&maxLng=&maxLat= |
| 半径查询 | 圆范围命中 | GET /api/v1/map/features/radius?lng=&lat=&radiusKm= |
| 区域聚合 | 按地区统计 | GET /api/v1/map/aggregate/regions |
| 热力图/轨迹 | 图层能力 | GET /api/v1/map/heatmap|trajectory |
演示要素 6 个(5 点 1 线:北京/上海/广州/青岛/深圳 + 华北-华东航线)。实测 bbox(115-118/39-41) 命中北京要素(graph:person:zhy)。
入口:/gotham/timeline。事件列表 GET /api/v1/timeline/events;范围查询 GET /api/v1/timeline/events/range?start=2026-07-01&end=2026-08-31;周/日桶聚合 GET /api/v1/timeline/aggregate?start=&end=&bucket=week;预测/周期/对比接口可用。演示事件 9 条(meeting/movement/transaction/registration/incident),严重度 critical/high/medium/low。Time-Wheel 时间轮盘未落地(以 aggregate/forecast/periods 接口实现)。
入口:/gotham/views。将图谱视图 A 与地图视图 B 建立联动,在 A 上设置过滤器后自动广播到 B。
| 操作 | API | 说明 |
|---|---|---|
| 创建会话 | POST /api/v1/views/sessions(view_type=graph/map/entity) | 建立视图会话 |
| 建立联动 | POST /api/v1/views/links(source_session_id→target_session_id) | 联动关系 |
| 应用过滤 | POST /api/v1/views/sessions/:id/filter(exprs 数组,白名单校验) | 过滤广播,返回 target_count |
| 联动结果 | GET /api/v1/views/sessions/:id/linked?target=map | 目标视图命中数 |
实测:graph 会话过滤 {"field":"region","op":"eq","value":"北京"} → 广播到 map 会话 target_count≥1。
GET /api/v1/search?q=张远 — 四域并发(实体/图节点/时间轴/地理),每域 topN、总数上限 40。
内置规则:
| 规则 | 类型 | 逻辑 |
|---|---|---|
| 高频事件预警 | frequency | 30 天内 incident 事件 ≥3 起 |
| 大额资金异常 | anomaly | person 实体 amount > 100000 |
操作:创建规则 POST /api/v1/patterns/rules → 评估 POST /api/v1/patterns/rules/:id/evaluate → 全量评估 POST /api/v1/patterns/evaluate-all → 命中列表 GET /api/v1/patterns/hits?rule_id=,可 acknowledge/resolve;告警看板 + WebSocket 广播。
入口:/gotham/reports。
| 操作 | 页面/API | 说明 |
|---|---|---|
| 报告列表 | GET /api/v1/reports | 含内置演示《玄武集团关联网络情报简报》 |
| 生成报告 | POST /api/v1/reports/generate | 按实体生成(汇总实体/事件/命中数据) |
| HTML 导出 | GET /api/v1/reports/:id/html | 浏览器直接打开 |
| PDF 导出 | GET /api/v1/reports/:id/pdf | 文件头 %PDF |
| Word 导出 | GET /api/v1/reports/:id/docx | 文件头 PK |
| 发布/归档 | POST /api/v1/reports/:id/publish|archive | 状态流转 + 版本回滚 |
{
"title": "张远关联情报简报",
"report_type": "entity",
"sections": [{"kind": "entity", "entity_id": "graph:person:zhy"}]
}
报告为块结构(heading/paragraph/table/kv + 嵌入对象快照),覆盖关键实体、重点事件、研判结论(置信度/关注级别/作者)。
入口:/gotham(协作区)。项目/成员/任务/评论/活动/通知/共享视图,WebSocket 实时通知——把结论推进为团队行动。
| 能力 | 状态 |
|---|---|
| Gotham RLS/CLS(scopeFilter) | ○ 未实现(ABAC deny 兜底) |
| Gotham Time-Wheel 时间轮盘 | ○ 未落地(以 timeline 接口实现) |
| Gotham 实体解析 AI 增强层 | ◐ 默认关闭(仅相似度算法) |
| AIP NLQ 主链路 RLS/CLS 注入 | ✅ v5 已实现(注入失败拒绝执行) |
| AIP 多轮对话 / 会话记忆 | ✅ v5 已实现(上下文压缩 + 记忆持久化) |
| AIP What-if / 主动洞察推送 | ○ 未实现 |
| 报告 PDF 正式排版 | ◐ 无中文字体时退化为 ASCII |
| 跨产品语义层联动 | ○ 未打通(两库独立) |
| XLSX 文件上传建数据集 | ○ 未实现(明确报错降级,请另存 CSV/JSON) |
| MCP 协议接入 | ◐ 默认关闭(需管理员配置启用) |
| 现象 | 处理 |
|---|---|
| AIP 查询无结果/生成失败 | 确认 .env 配置 LLM Key(无 Key 时 NLQ 部分降级,数据源/查询仍可用);换直白关键词 |
| AIP 数字口径对不上 | 到 Foundry 指标管理核对定义;两库语义未打通,跨库对账分别查 |
| 登录要求输入动态口令 | 管理员开启了双因子认证:需先在有 TOTP 二维码的账号设置页完成绑定(标准 30s 轮换),或用备份通道联系管理员关闭 |
| Gotham 访问机密节点被拒 | ABAC deny 一票否决:需管理员调整角色/策略(见《管理员使用说明》第 6 节) |
| 图分析报 403 | 图分析接口仅 admin 角色可用:联系管理员赋权 |
| 图展开超限 422 | limit 上限 1000、深度 1-3 度:分批展开 |
| 地图 bbox 查不到 | 确认经纬度范围包含演示要素(北京 116.40/39.90) |
| 报告 PDF 打不开 | 确认文件头 %PDF;若是 JSON 错误说明报告数据不完整 |
| 全局搜索点不到目标页 | 统一搜索可跳转至功能页面,部分页面尚未支持按关键词自动定位(已知限制) |
| 前端联调 Gotham 接口 404 | Vite 开发模式需 VITE_PROXY_TARGET=http://127.0.0.1:18083;生产走网关 /gotham-api 前缀 |