项目 Graphiti 图谱 API
为项目写入图谱 episode、查询异步任务和执行语义检索。所有项目端点接受平台支持的组合认证,并要求调用方具有项目访问权限;功能未启用或管理员配置不完整时会 fail-closed。
GET /projects/:projectId/graph/status
返回项目图谱功能状态、配置可用性和上游 Graphiti 服务状态。
POST /projects/:projectId/graph/episodes
向项目图谱提交 episode。请求成功后返回异步 jobId,客户端应继续查询任务状态。
GET /projects/:projectId/graph/jobs/:jobId
读取指定图谱任务的处理状态、结果或失败信息;任务必须属于当前项目。
POST /projects/:projectId/graph/search
只接受当前权威视图:mode 省略时默认为 current,显式值也只能是 current;as_of、history 或携带 asOf 返回 400 graph_search_current_only。
服务端使用当前 active Memory generation 的 provider ref 执行语义搜索,再用 Postgres 在同一事务快照验证 artifact、contribution、current source version 以及真实 Database/File 权威行。缺少控制面、active generation 或数据库验证失败时返回稳定 503,绝不回退到原始 Graphiti namespace 结果。
响应为:
json
{
"generationId": "uuid",
"results": [
{
"uuid": "provider-artifact-ref",
"fact": "...",
"evidence": [
{
"sourceType": "database | file",
"sourceVersionId": "uuid",
"locator": {}
}
]
}
]
}通过 /graph/episodes 手工提交的 Graph Lab episode 没有 Memory provenance,不会进入可信搜索结果。