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。 |
它是如何工作的?
- 向导 –
create-context-graph会询问几个提示(领域、框架、记忆后端、演示数据、连接器)。您也可以使用标志以非交互方式运行它。 - 领域本体 – 选择(或从自由文本描述生成)一个描述实体类型、关系和工具定义的 YAML 文件。这驱动代码生成。
- 模板渲染 – Jinja2 模板将本体转换为:
- Neo4j 模式(
schema.cypher) - 用于 FastAPI API 的 Pydantic 模型
- 特定于代理的工具包装器
- 可视化图的前端组件。
- Neo4j 模式(
- 记忆层 – 生成的後端接上 neo4j-agent-memory 库(v0.4)。它可以连接:
- NAMS – 托管的 Neo4j 后端记忆服务(默认)。只需 NAMS API 密钥。
- 自托管 Neo4j – 连接本地或 Aura 实例的 bolt 连接,提供完整的 Cypher、GDS 和关系支持。
- LLM 集成 – 代理使用兼容 LiteLLM 的提供程序字符串,因此您可以接入 Anthropic、OpenAI、Bedrock、Ollama 等。实体提取默认为 Claude‑haiku 或 GPT‑4o‑mini。
- 前端 – 一个 Next.js 应用显示:
- 流式聊天(服务器发送事件)
- 实时工具调用可视化
- 交互式图形视图(展开节点、拖拽/缩放、属性面板)
- 文档浏览器和代理推理步骤的追踪查看器。
- 数据导入 – 如果您选择了连接器,脚手架会包含脚本(
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 知识图谱上存储和推理的人。
有用链接(来自仓库)
- 文档站点 – https://create-context-graph.dev/
- Neo4j‑agent‑memory – https://github.com/neo4j-labs/agent-memory
- 社区帮助 – GitHub Issues、Neo4j Community Forum
- 许可证 – 请参阅仓库(Neo4j Labs 项目通常为 MIT 风格)
相关
- 项目
- 项目
- 项目
- 项目