← 返回列表

Hanjeok Agent:可追溯的旅行指南智能体

hyunolike/hanjeok-agent · A travel guide agent for Hanjeok: ask where it's crowded, watch each lookup, and get an answer that cites only what it fetched. LangGraph, Neo4j GraphRAG, MCP.

GitHub原文发布 未知首次收录 2026-10-15上架 2026-10-15 07:02

☆ 收藏查看项目 ↗

ELI5:它是什么,解决什么问题

Hanjeok Agent 是面向 Hanjeok 旅行服务的智能体,用于回答“某地某日是否拥挤”这类问题。它先用规则解析问题中的地点与日期,再通过受校验的查询步骤在 Neo4j 知识图谱与 Hanjeok 只读接口中检索,并在界面上逐步展示每次查询。最终答案只允许引用本次问题实际获取到的记录或政策文档,经由引用校验后才展示;答案与替代地点排序均沿用 Hanjeok 服务的原始排序,模型不自行排序。项目还提供路径可视化、两种检索策略的对比评测页面,以及通过 MCP 暴露的只读工具。

核心能力与快速开始

★ 1 · Python

能做什么
以 LangGraph 驱动的多步查询智能体,按规则解析问题中的地点与日期,并判断问题是否在可回答范围内;从七个受校验的查询中选择并执行只读检索,循环最多三轮,单次问答总时长上限 60 秒。检索基于 Neo4j 5.26 知识图谱与 neo4j-graphrag 的 VectorCypherRetriever,使用本地 multilingual-e5-large 嵌入做相似度搜索,并可结合关联链接。所有答案必须通过引用闸门校验,未在本次问题中获取到的引用会导致退回修复一次,再次失败则不展示答案;列表与替代项保持 Hanjeok 服务的原始排名。前端提供四个页面:问答时逐步展示查询,答案附引用标签,路径视图以图和列表展示涉及的地点和文档,以及展示两种检索策略对比的评测页。另有 MCP 服务器以 stdio 暴露四个只读工具,供其他程序调用。
适用场景
适用于希望获得可核查答案的旅行信息查询场景,例如询问某景点在指定日期是否拥挤、寻找替代地点,并能查看每个结论依据的记录与政策文档。也适合作为 GraphRAG + LangGraph 智能体工程实践的参考实现,包括规则优先的问题解析、受校验查询、引用门控、基于规则的禁止行为计数与检索策略对比评测。
项目形态
可直接使用的工具
部署方式
README 说明部署在 Google Cloud Run(服务与 Neo4j 在同一容器)与 Vercel,构建使用 Cloud Build;仓库包含 Dockerfile、docker-compose 与部署文档(docs/deploy.md)。本地可仅运行前端(回放录制响应),或配合 Docker、Python 3.13 与 uv 运行合成数据版服务。未说明成本与配额等细节。
主要依赖
本地运行前端需要 Node 22 与 pnpm;运行服务需要 Python 3.13、uv 与 Docker;回答问题时需要 NVIDIA_API_KEY(模型为 NVIDIA NIM nemotron)。评测使用 RAGAS;追踪使用 Langfuse,未配置其密钥时关闭。
使用限制
空闲后首次提问约需等待 30 秒(服务缩容到零);模型密钥与其他项目共享,限流会拖慢或导致问答失败;两字地名匹配偏保守(如“지도”在“在地图上显示”中仍被识别为岛屿);访问记录与用量限制保存在内存中,因此服务只运行单实例。已发布评测仅基于 12 个问题、40 个虚构地点的合成导出,尚未完成真实数据的 60 题评测与 RAGAS 分数。作者还提示曾有错误答案通过引用校验(如称替代项按“最近优先”排列、在未获取预报的情况下称某海滩“今天很安静”),虽已补充提示规则,但尚未纳入六条禁止行为规则统计。指南角色图片由 Codex 生成,未做商标与 AI 版权审查。
许可证
MIT
最近推送
2026-10-14 19:07

资料检查:2026-10-15 07:00 · 卡片整理:2026-10-15 07:00
卡片由 AI 根据仓库资料整理,未进行安装或运行验证

职业应用

程序员

作为可参考的 GraphRAG 智能体实现,用于学习如何用 LangGraph 编排带引用校验的检索流程、用 Neo4j 做相似度检索,并通过 MCP 暴露只读工具供其他程序调用。

查看内容依据
Three parts are libraries rather than this repository's own code: LangGraph's stream, `interrupt` and checkpointer carry the steps, the "which place do you mean?" pause, and a visit's earlier questions; neo4j-graphrag's `VectorCypherRetriever` does the similarity search; and an MCP server exposes four read-only tools so another program, eventually the Hanjeok backend, can ask the agent.

官方使用入口 ↗

由 AI 根据来源材料整理,未进行安装或运行验证

产品经理

参考其产品需求文档、规格说明与评测页面设计,了解如何定义智能体的可回答范围、引用校验规则和检索策略对比评测。

查看内容依据
[`specs/002-hanjeok-guide-agent/`](specs/002-hanjeok-guide-agent/) | Specification, research decisions, data model, contracts, tasks | | [`docs/prd/`](docs/prd/hanjeok-guide-agent.md) | Product requirements (Korean) |

官方使用入口 ↗

由 AI 根据来源材料整理,未进行安装或运行验证

这是基于来源内容整理的摘要。原文链接失效后,本页摘要和讨论仍会保留。

讨论 0

登录后参与讨论,阅读资讯无需注册。

还没有评论,来分享第一个看法。