neo4j-labs/create-context-graph

AI agents with graph based reasoning memory, scaffolded in seconds

什么是 Create Context Graph?

Create Context Graph 是一个命令行向导,用于搭建一个完整的、特定领域的“知识图谱驱动”AI 应用。您告诉该工具:

  • 您关注的行业(医疗保健、金融、野生动物管理等),
  • 您想要哪个 LLM 代理框架(例如,Strands、PydanticAI、LangGraph、Claude SDK),以及
  • 您是需要托管的记忆服务(NAMS)还是自托管的 Neo4j 实例。

然后,CLI 会生成一个立即可运行的全栈项目:

  • FastAPI 后端,包含一个 LLM 代理,将对话上下文存储在 Neo4j 图(或由 Neo4j 支持的 NAMS)中。
  • Next.js + Chakra UI 前端,显示聊天窗口、交互式图视图、文档浏览器和决策追踪查看器。
  • 针对所选领域的 Neo4j 模式 和可选的演示数据。
  • 可选的连接器,用于将来自 SaaS 工具(GitHub、Slack、Notion 等)的真实数据导入图中。

所有这些都在几分钟内生成,让您可以试验“上下文图”——一种存储从LLM对话中提取的实体,并将其链接到文档、工具和决策的图。


谁可能使用它?

受众 为什么有帮助
产品团队 构建领域特定的 AI 助手(例如,医疗记录聊天机器人) 一键搭建整个技术栈——后端、前端、Neo4j 模式和数据导入。
数据工程师 / 知识图谱专家 想要在现有 SaaS 数据上尝试 LLM 驱动的实体提取 内置连接器从 GitHub、Slack、Notion、Linear 等拉取数据,并自动映射到图中。
研究人员 / 学生 探索图增强型 LLM 代理 现成的演示领域和合成数据让您专注于代理逻辑,而不是搭建基础设施。
Neo4j 客户 寻找“代理记忆”的参考实现 展示如何以生产级 FastAPI 服务组合 Neo4j、LiteLLM 和各种代理 SDK。

谁可能使用它?

受众 为什么有用
产品团队 构建特定领域的 AI 助手(例如,医疗记录聊天机器人) 一键搭建整个技术栈——后端、前端、Neo4j 模式和数据导入。
数据工程师 / 知识图谱专家 想要在现有 SaaS 数据上尝试 LLM 驱动的实体抽取 内置连接器从 GitHub、Slack、Notion、Linear 等拉取数据,并自动映射到图中。
研究人员 / 学生 探索图增强的 LLM 代理 现成的演示领域和合成数据让您专注于代理逻辑,而不是连接基础设施。
Neo4j 客户 寻找“代理记忆”的参考实现 展示如何在生产风格的 FastAPI 服务中结合 Neo4j、LiteLLM 和各种代理 SDK。

谁可能使用它?

受众 为什么有用
产品团队 构建特定领域的 AI 助手(例如,医疗记录聊天机器人) 一键搭建整个技术栈——后端、前端、Neo4j 模式和数据导入。
数据工程师 / 知识图谱专家 想要在现有 SaaS 数据上尝试 LLM 驱动的实体抽取 内置连接器从 GitHub、Slack、Notion、Linear 等拉取数据,并自动映射到图中。
研究人员 / 学生 探索图增强的 LLM 代理 现成的演示领域和合成数据让您专注于代理逻辑,而不是基础设施的搭建。
Neo4j 客户 寻找“代理记忆”的参考实现 展示如何在生产风格的 FastAPI 服务中结合 Neo4j、LiteLLM 和各种代理 SDK。

它是如何工作的?

  1. 向导 – create-context-graph 会询问几个提示(领域、框架、记忆后端、演示数据、连接器)。您也可以使用标志以非交互方式运行它。
  2. 领域本体 – 选择(或从自由文本描述生成)一个描述实体类型、关系和工具定义的 YAML 文件。这驱动代码生成。
  3. 模板渲染 – Jinja2 模板将本体转换为:
    • Neo4j 模式(schema.cypher)
    • 用于 FastAPI API 的 Pydantic 模型
    • 特定于代理的工具包装器
    • 可视化图的前端组件。
  4. 记忆层 – 生成的後端接上 neo4j-agent-memory 库(v0.4)。它可以连接:
    • NAMS – 托管的 Neo4j 后端记忆服务(默认)。只需 NAMS API 密钥。
    • 自托管 Neo4j – 连接本地或 Aura 实例的 bolt 连接,提供完整的 Cypher、GDS 和关系支持。
  5. LLM 集成 – 代理使用兼容 LiteLLM 的提供程序字符串,因此您可以接入 Anthropic、OpenAI、Bedrock、Ollama 等。实体提取默认为 Claude‑haiku 或 GPT‑4o‑mini。
  6. 前端 – 一个 Next.js 应用显示:
    • 流式聊天(服务器发送事件)
    • 实时工具调用可视化
    • 交互式图形视图(展开节点、拖拽/缩放、属性面板)
    • 文档浏览器和代理推理步骤的追踪查看器。
  7. 数据导入 – 如果您选择了连接器,脚手架会包含脚本(import_data.py)和 make import 目标,用于将所选 SaaS 服务的数据拉取到 Neo4j 中。

生成的项目里有什么?

my-app/
├─ backend/               # FastAPI 服务
│  ├─ app/main.py        # 入口点
│  ├─ app/agent.py       # LLM 代理(框架特定)
│  ├─ app/memory.py      # Neo4j 或 NAMS 记忆集成
│  ├─ app/context_graph_client.py   # Neo4j 的 CRUD 辅助函数
│  ├─ app/gds_client.py  # 可选的图数据科学调用
│  └─ connectors/        # SaaS 导入代码(如果选择)
├─ frontend/              # Next.js + Chakra UI 界面
│  ├─ components/ChatInterface.tsx   # 流式聊天 UI
│  ├─ components/ContextGraphView.tsx # 交互式图
│  └─ …
├─ data/ontology.yaml     # 用于生成的领域定义
├─ data/fixtures.json     # 合成演示实体(如果使用 --demo)
├─ cypher/schema.cypher   # 约束与索引
├─ docker-compose.yml     # 用于自托管模式的可选 Neo4j 容器
├─ Makefile               # install、start、seed、import、test …
└─ README.md              # 项目专属文档

何时选择托管内存 vs 自托管内存

功能 NAMS(托管) 自托管 Neo4j
设置 无需安装 Neo4j,只需 API 密钥 运行 Docker/Aura,配置 bolt URL
写入能力 仅创建实体;关系以 markdown 块形式存储在 description 中 完整的 Cypher 写入、原生边、GDS 算法
可扩展性 托管服务,限于 Neo4j 支持的 REST API 您控制集群大小、复制等
成本 Neo4j Labs 内存服务按需付费 取决于您的 Neo4j 部署
用例 快速演示、原型开发、个人知识库 需要复杂图查询或分析的生产级应用

快速入门示例(Python,NAMS)

uvx create-context-graph my‑app \
  --domain healthcare \
  --framework strands \
  --nams‑api‑key sk‑nams‑…

cd my‑app
make install          # pip install + npm install
make start            # launches FastAPI + Next.js

访问 http://localhost:3000 查看 UI,访问 http://localhost:8000/docs 查看 API。


限制与注意事项

  • NAMS 后端无法创建原生 Neo4j 关系或运行任意 Cypher;生成的应用程序通过以 Markdown 编码边来解决此问题。
  • 某些高级图数据科学(GDS)功能仅在自托管模式下可用。
  • 默认之外的内存提供程序需要您提供 LiteLLM 字符串,并可能需要 API 密钥。
  • 该项目是实验性的——由 Neo4j Labs 维护,但不受官方支持。

总结

Create Context Graph 将少量选择(领域、代理框架、内存后端)转化为一个功能完备的 AI 增强图应用,只需几分钟。它非常适合任何想要探索 LLM 代理如何在不从头编写底层代码的情况下,在 Neo4j 知识图谱上存储和推理的人。


有用链接(来自仓库)

相关

  • 项目
  • 项目
  • 项目
  • 项目