AI 决策需要黑匣子:
为什么 Semantica 是开源的 Palantir
0.30 秒结论
如果只看一句话:Semantica 是 AI 决策的"黑匣子 + 法官"。它不替你做决策,那是 LLM 的活;它给每一次决策装上飞行记录仪、给每一次推理装上逻辑链条,让企业能在监管问"为什么"的时候,能用 W3C PROV-O 标准的图证据回答。
如果你正在做下面任何一件事,这篇文章值得读到最后:
- 在金融、医疗、法律、政府场景部署 LLM agent,需要事后能解释决策
- 运营多 agent 系统(如 TradingAgents 类),需要审计每一笔决策的因果链
- 考虑过 Snowflake Cortex / Databricks Genie / Vanna AI,但发现它们都不解决"为什么"问题
- 对企业 AI 治理框架(EU AI Act、中国《生成式 AI 服务管理办法》)的合规要求感到焦虑
"AI 能做决策"在 2024 年已经解决;"AI 决策可被审计"在 2026 年才是真问题。Semantica 是这个问题的开源答案。
1.商业痛点:为什么"决策审计"突然重要了
1.1 三个真实场景的恐惧
想象三个场景:
场景 A —— 消费金融。你的 AI 风控模型每天拒掉 1,000 笔贷款。其中 100 个用户申诉"凭什么拒我?"监管问"你的拒贷标准一致吗?有没有歧视?"—— 你翻出模型权重,发现里面是 1.2 亿个参数,谁也解释不清楚为什么这个人被拒、那个人通过。
场景 B —— 辅助医疗诊断。AI 给出"建议复查肺结节"的结论。患者家属问"为什么是结节不是炎症?"医生说"AI 说的"。3 个月后误诊了,谁负责?
场景 C —— 内容平台。AI 自动删了 10 万条 / 天的违规内容。商家申诉"我内容没违规凭什么删?"客服翻不出当时 AI 的 reasoning,因为 LLM 调用完上下文就丢了。
三个场景的共同点:决策是不可解释的、不可回放的、不可审计的。当 AI 决策直接影响人的金钱、健康、言论,事后无法回答"为什么"是不可接受的。
1.2 监管驱动 —— EU AI Act 已经生效
2024 年 8 月,EU AI Act 正式生效,对"高风险 AI 系统"(信贷、保险、医疗、招聘、教育、执法等)提出了强制性的"算法可解释、决策可追溯、人工可监督"要求。
中国紧随其后,《生成式人工智能服务管理暂行办法》(2023)虽然没有直接写"决策审计",但要求"提供者应当对生成式人工智能服务的使用情况及相关日志数据进行记录和保存"。
翻译成工程语言:你需要在每次 LLM 决策时记录"谁(agent)、何时(timestamp)、基于什么(输入数据 + 检索 + 工具调用)、得到什么(输出)、后果(用户反馈)—— 并且这条记录要在 3 个月后还能完整还原。
1.3 现有方案的真空
WrenAI、Text-to-SQL 工具(Vanna、Snowflake Cortex Analyst、Databricks Genie)解决的是"自然语言查数据",不是"AI 决策可审计"。LangChain、LangGraph 是"搭 agent 工作流"的框架,不解决决策持久化与审计。Palantir 商业版做决策治理但年费数十万美元。
这就是 Semantica 在 2025 年开始火起来的原因 —— 它精准切入"开源 AI 决策治理"这一空白。
普通日志(log line)只能记录"AI 在 t 时刻调用了 LLM,得到字符串 Y"。它无法回答:(a) 这个决策依赖了哪些历史决策?(b) 推理链条是否成立?(c) 三个月后能不能用同一份证据回放当时的推理?Semantica 把日志升级为"决策图节点 + W3C PROV-O + 哈希链",本质是给日志加了"DNA 双螺旋"结构。
2.技术解法:Semantica 怎么做到决策可追溯
2.1 一句话架构
Semantica 的核心架构可以浓缩成一句话:
"决策是一等图节点,不是日志行。"传统做法把 AI 决策写进日志(text file、log database)。Semantica 把决策写成图(graph node),节点之间通过"因果关系"(causal relationship)链接,整个图能用 SPARQL / Cypher 查询、能导出 W3C PROV-O 标准格式、能做反向追溯。
2.2 三个核心技术机制
机制 1:决策是图节点(Decision-as-Node)
每次 AI 决策通过
ContextGraph.record_decision()写入图,节点包含:decision_id = graph.record_decision( category="loan_denial", # 决策类别 scenario="DTI=31%, income=$85k", # 当时场景 reasoning="income meets threshold...", # LLM 输出 outcome="proceed_to_underwriting", confidence=0.88, # 置信度 metadata={"applicant_id": "A-7291"} )关键设计:这些字段不是 schema-on-read 的自由文本,而是
ProvenanceEntrydataclass,17 个强类型字段,覆盖 W3C PROV-O 标准里 Entity / / Agent / Activity / Bundle / Invalidation 全部概念。机制 2:三类封闭因果边(★ 强制语义学)
节点之间通过
add_causal_relationship()链接,只接受三种标签:
标签 语义 适用场景 CAUSED直接导致("earnings beat" → "买入 NVDA") 硬因果链 INFLUENCED间接影响("宏观数据" → "买入 NVDA") 软因果链 PRECEDENT_FOR作为先例("2024 类似交易" → "这次决策") 可借鉴的过去 为什么是封闭的?开放标签会让图查询退化成字符串匹配,效率低且无法推理。Semantica 在源码
context_graph.py:2734硬编码 whitelist,强制开发者"必须想清楚这是 CAUSED 还是 INFLUENCED"—— 这种"语义学约束"是给图治理带来秩序的关键。机制 3:哈希链防篡改
这是 Semantica 最精彩的设计。
ProvenanceEntry.checksum字段是 SHA-256 哈希,包含了上一条的 checksum:checksum_n = sha256( content_n + previous_checksum_(n-1) # ← 关键 )效果:
- 删除任何一条:链断了,后续所有 checksum 不匹配
- 修改任何一条:checksum 变了不匹配
- 在中间插入:
sequence_id不连续(必须 +1),被检测
verify_chain()给出三层独立信号:def verify_chain(): for entry in entries: if not verify_checksum(entry): # 信号 1:本行内容被改 if entry.sequence_id != expected + 1: # 信号 2:有 entry 被删除 if entry.previous_checksum != expected_previous: # 信号 3:链断对比传统 audit log:传统 log 假设"数据库本身不会被攻破",Semantica 即使数据库被攻破,也能检测出篡改。
2.3 Polyglot 持久层:7 个图存储 + 6 个向量库
Semantica 不绑定单一存储:
类别 支持的后端 何时选 RDF 三元组 Oxigraph / Blazegraph / Apache Jena / Eclipse RDF4J / Anzo 需要 W3C 语义网标准 LPG 属性图 Neo4j / FalkorDB / Apache AGE / AWS Neptune 已有图数据库栈 向量库 FAISS / Qdrant / Weaviate / Milvus / Pinecone / PgVector 需要 RAG / 相似度搜索 这是 Semantica 的"Data locality"承诺 —— "你的数据可以留在你现有的图数据库里,不必迁移到 Semantica 自带的存储"。
2.4 完整能力栈(10 大模块)
下面是 Semantica 在 README 里列出的全栈能力:
能力 一句话说明 Context Graphs 智能体知道/决策/推理的结构化图 Decision Intelligence 每个决策 = 一等图节点,可溯源、可查、可因果链 AI Governance SHACL 约束 / 冲突检测 / 合规规则 / OWL / SKOS 词表 Full Auditability W3C PROV-O + 哈希链,可导出 RDF/CSV/JSON Deterministic Reasoning Forward chain / Rete / Datalog / SPARQL(不依赖 LLM) Knowledge Pipeline 多源 ingestion + NER + 关系抽取 + KG 构造 Enterprise Data Databricks (Unity Catalog + Delta Lake) / Snowflake 原生 Graph Analytics 中心性 / 社区检测 / 链接预测 / 最短路径 Polyglot Storage RDF + LPG + 向量库,热插拔 Visualization 浏览器交互式图探索 + 决策时间线 3.它能赋能什么 —— 6 个真实场景
不是"AI 决策可审计"听起来高大上,我们来看看谁真的在用、解决什么问题:
场景 1:金融监管审计
信贷 AI 每天拒 1,000 笔。监管问"为什么"—— 用 Semantica 直接 SPARQL 查询决策图:
SELECT ?decision ?reason WHERE { ?decision a :LoanDenial ; :reasoning ?reason . } LIMIT 100答案直接给监管,3 分钟搞定。
场景 2:医疗诊断决策溯源
AI 给医生"建议复查"的依据是什么?用 Semantica 把 NER 提取的实体(症状 + 检验值 + 历史类似病例)+ 推理链 + 关联决策全部展示给医生。医生能信任,责任划分清晰。
场景 3:多 Agent 系统的共享 Context 层
5 个 LLM agent 协作(你公司可能跑过类似多 agent 系统)。它们各自的 in-memory state 难共享,调试时一问"为什么这个 agent 这么决定"就卡住。
Semantica 作为 shared context layer —— Agent A 写入决策图,Agent B 立刻看到 + trace。Agno / CrewAI 已原生支持,零代码改动。
场景 4:内容审核 / 风控申诉处理
内容平台 AI 自动删违规内容。用户申诉"凭什么删我"—— 客服翻不出 reasoning,因为 LLM 调用完上下文丢了。
用 Semantica:每次删除 = 一次决策入图,申诉处理人 1 键回放"当时 AI 用的规则版本 + 引用的法规条款 + LLM 的 reasoning + 类似内容历史决定"。
场景 5:研发知识管理(Context Graph 当企业大脑)
公司 100 个工程师 + 5 个 LLM agent —— Semantica 把所有代码决策、架构讨论、Bug 修复都建成图。新员工加入,"为什么用了 PostgreSQL?"
graph_rag一查就找到历史决策 + 因果链。替代 Confluence / Notion(更工程化)。场景 6:跟 TradingAgents / WrenAI 叠加(AI 决策审计 + 自动化)
如果你已经在跑多 agent 决策系统(TradingAgents 那类),Semantica 是完美审计后端:
# TradingAgents 生成决策 trade_decision = trading_agents.propagate("NVDA", "2026-05-10") # Semantica 立刻记录 graph.record_decision( category="trade", scenario=trade_decision.scenario, reasoning=trade_decision.reasoning, outcome=trade_decision.action, confidence=trade_decision.confidence ) # 3 个月后审计问"为什么买 NVDA" chain = graph.trace_decision_chain(decision_id) # 完整回放 rules_ok = graph.check_decision_rules(...) # 当时合规吗 graph.export_prov(...) # 出 W3C PROV-O 给监管三层组合是黄金栈:WrenAI 查数据 → TradingAgents 决策 → Semantica 审计。
4.优劣势:诚实评估
优势(7 个)
- W3C PROV-O 标准:不是私有格式,监管 / 法务 / 审计师都能用现成工具(Protege、SPARQL endpoint)
- 哈希链防篡改:sequence_id + previous_checksum 双保险,监管级可信
- Polyglot 持久化:7 个图存储后端,"数据不放出去"承诺
- 决策是一等图节点:不是 log line,是真能 SPARQL/Cypher 查询的图节点
- LLM 可选的推理:Rete / Datalog / SPARQL 引擎不依赖 LLM,保证推理一致性
- MCP server 完整:Agno / CrewAI 原生支持,开箱即用
- MIT 商用:vs Palantir 商业版 $10万+/年,Semantica 是真开源
劣势(6 个)
- 不是 query engine:想要"自然语言查数据"得自己接 WrenAI,Semantica 不擅长 NL2SQL
- 没有交易信号:它只记录 + 审计决策,不帮你"该不该买"
- GitHub 9.5k stars:比 TradingAgents 98k 小一个数量级,生态小
- 学习曲线陡:W3C PROV-O + Rete + Datalog + SHACL 都是学术概念,上手 1-2 周
- 文档偏学术:README 像论文,不像 product docs,新人 onboarding 难
- 性能瓶颈:每次决策 30-50ms 哈希链开销,高频场景不友好
该不该用 Semantica?用:金融/医疗/法律/政府强监管行业、多 agent 系统需要审计层、AI 决策需事后追溯。
不用:纯查询场景(用 WrenAI)、决策量 < 100/月(过度设计)、不在强监管行业。
5.实战路径 —— 读者怎么动手
如果你看完想试试,分 4 步:
Step 1:验证基础(10 分钟)
# 安装 pip install semantica # 验证(看 Python 版本 + faiss + config 都 ok) semantica doctor # Python 3.11.9 pass # semantica 0.6.5 pass # faiss vector store pass # Config file pass ~/.semantica/config.yamlStep 2:跑最小 demo(30 分钟)
from semantica.context import ContextGraph graph = ContextGraph(advanced_analytics=True) # 记录一个决策 decision_id = graph.record_decision( category="vendor_selection", scenario="Choose cloud provider for HIPAA workload", reasoning="AWS offers BAA, mature HIPAA tooling, and existing team expertise", outcome="selected_aws", confidence=0.93, ) # 问"为什么" chain = graph.trace_decision_chain(decision_id) # 因果链 similar = graph.find_similar_decisions("cloud vendor", max_results=5) # 相似先例 impact = graph.analyze_decision_impact(decision_id) # 下游影响 compliant = graph.check_decision_rules({"category": "vendor_selection"}) # 合规检查Step 3:接到你的多 agent 系统(半天)
如果你已经在跑 LangGraph / Agno / CrewAI:
- 在 agent 决策点调
graph.record_decision()- 用
graph.add_causal_relationship()链接相邻决策- 接 MCP server:
wren serve mcp暴露决策图给其他 agentStep 4:生产化(1 周)
- 替换 InMemoryStorage 为 Neo4j / Oxigraph
- 配
~/.semantica/config.yaml选 ontology 词表- 接公司 SSO + 审计 dashboard
- 每周跑
verify_chain()检测篡改读者清单:Semantica 适合谁
- ✅ 你在金融/医疗/法律/政府行业部署 LLM agent
- ✅ 你跑多 agent 系统(TradingAgents / Agno / CrewAI 类)需要审计层
- ✅ 你的客户 / 用户会申诉 AI 决策
- ✅ 你的系统每月 >1000 个 AI 决策需要审计
- ❌ 你只是想要"自然语言查数据"(用 WrenAI)
- ❌ 你的 AI 决策 < 100 个/月
- ❌ 你需要的是实时交易信号,不是审计
6.写在最后
AI 能做决策在 2024 年已经解决(GPT-4、Claude 3.5、Gemini 2.0 都够用)。AI 决策可被审计、可被解释、可被监管在 2026 年才是真问题。
Palantir 商业版用数十万美元帮企业解决了这个问题,但绝大多数团队根本付不起这个钱。Semantica 用 MIT 协议 + 9,500 颗星 + W3C PROV-O 标准 + 哈希链,把 AI 决策审计的门槛从 10 万美元降到 0 美元。
这是开源世界对闭源巨头的又一次胜利。但更重要的,它给了 AI 治理一个"不要等技术完美了再上"的现实选择 —— 现在你就可以开始记录、开始审计、开始给每一次 AI 决策装上飞行记录仪。
当你下一次部署 LLM agent 做重要决策之前,先问自己:3 个月后,监管 / 用户 / 你自己,能不能回答"为什么"?
如果答案是"不能",那 Semantica 可能是你下一个该装的东西。