GeoAgent
GeoAgent 是一个基于 DeerFlow / LangGraph 的本地化 GIS 智能体工作台。当前项目面向国土空间规划、规划体检、空间数据浏览、专题图草稿制作和报告材料生成等场景,重点不是通用联网问答,而是把本地知识库、PostGIS 空间数据库、专题图工作台、文档生成和资料库成果管理组织成一个可复核的工作流。
当前定位
GeoAgent 由三个主要运行面组成:
- 聊天工作流:用户通过对话提出分析、制图、资料引用和报告生成需求。
- 工作台能力:专题图、空间数据、资料库、设置页等界面承载可视化编辑和复核。
- 后端托管能力:RAGFlow 检索、PostGIS 只读访问、MapSpec 草稿、PNG 导出、Word/Excel 文档生成和资产聚合。
当前项目强调:
- 所有空间数据库访问默认只读。
- 通用数据源摘要只接受结构化、有限额参数;原始 SQL、写操作、CTE、多语句和 SQL 注释变体会在执行器调用前阻断。
- 专题图先生成草稿,经过人工复核后再导出 PNG。
- 资料库只展示安全资产摘要,不展示本地路径、数据库连接串、SQL、token、原始 geometry 或 coordinates。
- 运行态能力优先通过后端 API 和系统内置工具托管,不要求用户手工导出 Shapefile/GeoJSON。
- 被中断或供应商返回异常工具名的调用会在再次请求模型前修复为可恢复错误,避免空工具名破坏后续对话。
- 超大工具输出在无法持久化时按硬字符上限截断,日志后接长 JSON/base64 单行也不会因换行对齐反向扩张上下文。
- 模型熔断器在半开探测遇到配额或认证类不可重试错误后会释放探测位,后续请求不会永久快速失败。
- 工具安全白名单显式配置为空时拒绝全部工具,不会因空数组被当成“未配置”而放行。
- 运行结束且流历史已清理后,SSE 或等待接口重连会识别终态,不会创建只发心跳的僵尸流。
- 未配置标题模型时,本地生成的会话标题连同省略号严格遵守
title.max_chars。 - 交互式工具调用结束后若模型返回空白终态,运行时只自动重试一次;再次空白会写入可见错误并把本次 run 标记为失败,不会伪装成成功。
- 内置联网工具返回的网页、搜索摘要和图片搜索文本会转义保留标签与伪造的用户输入边界,避免远程内容冒充系统上下文;本地命令和文件内容不做改写。
- Memory 更新模型读取的现有事实与摘要会在 Prompt 副本中递归转义,用户可编辑内容不能闭合
<current_memory>;原始内存对象和落库值不被改写。 - Memory 事实注入主智能体时会转义事实正文、分类和纠错来源中的结构控制字符,同时保留 element-text 中安全的单双引号和原始落库内容。
- Memory 的用户上下文与历史摘要注入主智能体时采用同一元素正文转义规则,六类摘要字段均不能闭合
<memory>数据块。 - 用户可安装 Skill 的名称、描述、位置和 Subagent 加载的 SKILL.md 正文只在 Prompt 渲染时转义,不能伪造框架标签;磁盘内容和安全单双引号保持原值。
- 自定义 Agent 与 AgentSpec 的 SOUL 人格正文进入系统 Prompt 前按元素正文转义,不能闭合
<soul>或伪造系统提醒,原始配置内容不被改写。 - 自定义 Subagent 的可编辑描述进入
<subagent_system>前会转义结构控制字符;内置 Subagent 的可信常量描述保持原样。 - LocalSandbox 反向隐藏宿主路径时要求完整目录段边界,不会把同前缀兄弟目录误写为不可读取的容器路径,也不会在输出恰好以挂载根结尾时泄露宿主路径。
当前能力
知识库
- RAGFlow 本地知识库检索。
- 设置页查看知识库连接状态。
- 资料库展示知识库资源摘要。
空间数据
- PostGIS 图层列表、字段描述、样例预览。
- OpenLayers 图层预览。
- bbox 范围加载、简化和分页式 features 读取。
- 字段画像能力,用于分类图例覆盖和中文标签补齐。
专题图
- 从用户意图、主图层、参考图层和表达策略生成 MapSpec 草稿。
- 工作台支持图名、用途、图层显隐、图层顺序、分类样式、图例、复核项编辑。
- 草稿保存到后端草稿库,支持 revision、review status、review items 和导出记录。
- 人工复核完成后可创建 PNG 导出。
- 聊天消息、工作台和资料库之间可以互相跳转。
资料库
/workspace/library按成果 / 数据源 / 模板 / 过程组织工作区资产。- 专题图成果、生成文档、生成附件、知识库资源、空间资源、模板文件、过程文件统一展示。
- 专题图成果详情支持 PNG 预览、下载、打开工作台和来源对话入口。
- 聊天输入区可通过“添加内容 -> 引用资料库”把资产作为安全引用带入对话。
文档生成
- Word 文档生成。
- Excel/表格类附件展示和下载。
- 上传表格托管解析支持
.xlsx、.xlsm和 UTF-8/BOM.csv;旧版.xls必须先转换格式。 - 城市体检审议报告只采用成功提取正文、表格或图表的业务资料,忽略同名派生 Markdown;全部材料不可读或不受支持时停止生成。
- 资料库统一管理生成成果。
Built With
- agent
- geo
Log in or sign up for Devpost to join the conversation.