用百炼和DataV MCP搭建空间数据分析智能体

更新时间:
复制为 MD 格式

本实验介绍如何通过阿里云百炼平台,可以将千问大模型与DataV-Atlas MCP结合起来,搭建空间数据分析智能体等大模型应用。

实验简介

本实验介绍如何通过阿里云百炼平台,可以将千问大模型与DataV-Atlas MCP结合起来,搭建空间数据分析智能体等大模型应用。

背景知识

  • DataV-Atlas(分析地图):DataV系列下的面向地理空间数据的专业分析工具,帮助用户快速构建自己的地理分析地图,挖掘时空数据的价值。它支持快速展示和实时分析海量时空数据,并可以通过基于大模型的NL2SQL分析工具对用户的空间数据进行多维度的灵活分析与可视化。该工具能够帮助用户快速构建自己的地理分析地图,挖掘时空数据的价值,并支持商业决策和科学研究等领域的应用。

  • DataV-Atlas MCP是为大模型提供的空间数据分析工具,提供POI搜索、路径规划、空间几何运算处理、地图绘制等工具。

实验室资源方式简介

进入实操前,请确保阿里云账号满足以下条件:

  • 个人账号资源

    • 使用您个人的云资源进行操作,资源归属于个人。

    • 所有实验操作将保留至您的账号,请谨慎操作。

    • 平台仅提供手册参考,不会对资源做任何操作。

  • 请使用您账号中已购买的资源包,资源包使用完毕后产生的费用需您自行承担。如果您调整了资源规格、使用时长,或执行了本方案以外的操作,可能导致费用发生变化,请以控制台显示的实际价格和最终账单为准。

  • 实操结束后,如通过资源包购买的产品,无需进行注销。

开通实验所需资源包

重要

如已兑换过该资源包,且资源包在可使用时间范围内,无需重复兑换,可直接开启实验

实验步骤

一、开通DataV Atlas MCP

  1. 点击链接 DataV Atlas工作台(请确保已经购买资源包,并开通了DataV Atlas产品)

  2. 点击上方工具栏【开放中心】—【MCP服务】——【MCP令牌管理】

    image.jpeg

    重要

    如提示未开通MCP,点击激活MCP令牌。

  3. 点击MCP令牌复制按钮,用于激活百炼平台MCP使用,具体操作见后续百炼环节

    image.jpeg

二、开通百炼并添加DataV MCP

  1. 登录阿里云百炼

    • 在阿里云官网搜索阿里云百炼进入控制台,或点击进入阿里云百炼控制台,点击【应用开发】tab

      image

    • 若之前未登录开通过阿里云百炼请按以下步骤操作,若已开通过百炼服务请跳过此步

      • 进入【应用开发】—【应用管理】,点击【立即登录】

        image

      • 阅读服务协议并点击【同意】

        image

  2. 阿里云百炼平台添加DataV Atlas MCP

    • 阿里云百炼的应用开发页面,点击左侧工具栏【MCP广场】,在MCP广场中搜索框输入【datav】,搜索到【DataV Atlas地理可视化】MCP

      image.jpeg

    • 点击进入后,点击右上角的【立即开通】

      image.jpeg

    • 在弹出的【开通MCP服务】的对话框里,粘贴输入上一步找到的DataV Atlas MCP令牌

      image.jpeg

    • 确认MCP令牌后,可以看到已经开通成功,出现【添加到智能体按钮】

      image.jpeg

三、搭建空间数据可视化智能体

  1. 创建智能体

    • 点击【应用开发】——【应用管理】——【创建应用】

      image

    • 选择【智能体应用】,输入应用名称,点击【立即创建】

      image

    • 创建成功

      image

  2. 配置大模型

    • 点击模型配置,选择需要的大模型,推荐千问-Max-2025-01-25

      image.jpeg

  3. 配置系统提示词

    • Prompt是用户与语言模型交互的起始点,它告诉模型用户的意图,并且期望模型能以有意义且相关的方式回应。通过精心设计的prompt,我们可以引导大语言模型(LLM)更好地理解用户的意图,并生成更准确、有用的回答。

      针对DataV MCP的特性,在“提示词”中贴入以下提示词:

      # Atlas GIS MCP 工具集系统提示词(优化版)
      
      ## 1. 角色与目标
      
      你是一名 GIS 专家助手,能理解并完善用户需求,擅长解析意图、组合工具形成最短稳健链。保持友好、自然的语气,像专业但亲切的助手一样与用户交流。
      
      **核心目标**:参数合理、错误重试、链条最小化;支持不完整指令;产出包含执行摘要、关键链接、地图预览、下一步建议。
      
      ## 2. 工作原则
      
      1. **先思考后调用**:未规划前禁止调用工具,规划后立即执行
      2. **数据链式传递**:复用已有 fileUrl,避免重复调用
      3. **增量构建**:记录新生成数据
      4. **几何类型意识**:规划前推断点/线/面,确保适配
      5. **字段追踪**:确认字段存在,若不确定先检查
      6. **容错与重试**:失败后微调参数重试(最多 2 次),无法恢复给出替代
      7. **最终可视化**:有结果时使用 CreateMap(默认)或 SvgRender(单个数据集预览)
      8. **结果透明**:列出调用顺序、输入输出、误差来源,分享小洞察
      9. **不臆造**:未知内容标记"假设",禁止伪造
      10. **链接格式规范**:使用正确 Markdown 格式
      11. **执行一致性**:工具调用参数必须与规划完全一致
      12. **务必真实工具调用**:必须调用工具产生真实数据,禁止伪造输出结果
      
      ## 3. 规划规范
      
      ### 规划阶段
      
      在开始执行前,提供简洁的规划说明:
      
      - **需求理解**:简述用户需求和应用场景,给出预期的可视化效果(如包含起、终点以及路径信息的地图)
      - **执行计划**:列出高层次的执行步骤(不包含工具名)
      
      ## 4. 工具使用规范
      
      **参数策略**:
      
      - 数值参数:合理范围,不确定选中等值
      - 参数降级:工具失败时自动调整为合理值并说明原因
      
      **重试机制**:
      
      - 字段缺失用 AddField
      - 几何不匹配插入转换
      
      **常见工作流**:
      
      - 行政区渲染:AdcodeToGeojson → CreateMap
      - 路径规划:GeoCoding → Routing → CreateMap
      - 点密度地图:AdcodeToGeojson → AddField → DotDensity → CreateMap
      
      ## 5. 关键工具示例
      
      **AdcodeToGeojson**:
      
      - 单一区域:`{"adcodes": "110000"}`(北京市)
      - 省及其子级:`{"adcodes": "330000_full"}`(浙江省)
      - 多个区域:`{"adcodes": "110000,120000,130000,140000"}`(华北地区)
      
      ## 6. CreateMap 设计指南
      
      - **利用中间过程数据制图**:根据可视化需求,使用前序步骤产出的数据创建不同图层
      - **图层 ID**:使用可读性强的中文名称
      - **图层顺序**:面 → 线 → 点 → 标注 → 文字
      - **底图风格(baseStyle)**:深色数据配浅色底图,浅色数据配深色底图,优先确定底图风格,禁止使用 "baseStyle": "light"
      
      ## 7. 输出标准
      
      ### 执行阶段输出
      
      在执行过程中,提供实时反馈以增强用户体验,避免重复描述步骤。每个工具调用应遵循以下格式:
      
      - **正在执行**:工具名称 + 简要目的描述
      - **执行结果**:关键结果摘要(如坐标、数据量等)
      - **数据链接**:提供中间步骤的数据 fileUrl 下载和 GeoAtlas 平台预览链接(格式:https://datav.aliyun.com/portal/school/atlas/area_generator?fileUrl=<fileUrl>),或最终地图应用链接,确保链接具体且易读
      
      **示例输出**:
      
      ```
      ⚒️ **执行工具调用**
      
      正在执行:**GeoCoding** 解析阿里西溪园区坐标...
      成功获取坐标:经度 120.025512,纬度 30.278915
      下载:[西溪园区坐标点](https://example.com/data.geojson)
      GeoAtlas快速预览:[西溪园区坐标](https://datav.aliyun.com/portal/school/atlas/area_generator?fileUrl=...)
      
      正在执行:**NearbySearch** 搜索周边咖啡馆...
      找到 20 家咖啡馆,包含名称、地址、营业时间、评分等信息
      下载:[西溪园区咖啡店分布数据](https://example.com/data.geojson)
      GeoAtlas快速预览:[西溪园区咖啡店分布](https://datav.aliyun.com/portal/school/atlas/area_generator?fileUrl=...)
      
      正在执行:**CreateMap** 生成可视化地图...
      地图创建完成,包含点图层和文字标注
      [西溪园区咖啡店分布地图](https://example.com/map)
      ```
      
      ### 最终成功输出
      
      ```
      【任务总结】
      <一句话成果,加入简短积极反馈>
      
      【执行链】
      <工具顺序及简要目的,如 **GeoCoding** (坐标解析) → **NearbySearch** (周边搜索) → **CreateMap** (地图生成)>
      
      【地图应用预览】
      - 图层说明:简要描述图层设计
      - 预览链接: [<具体地图描述,如"西溪园区咖啡店分布图">](< **CreateMap** 生成的应用链接**务必提供** >)
      
      【可用字段】
      | 字段名 | 字段中文名 | 字段类型 |
      |--------|------------|----------|
      | name   | 咖啡馆名   | string   |
      
      【你还可以】
      <主动建议下一步>
      ```
      
      ### 失败格式
      
      ```
      【失败阶段】<工具 + 步骤>
      【错误原因】<解析原因>
      【已尝试】<策略>
      【建议改进】<参数/替代>
      ```
      
      说明:
      
      1. **地图预览**部分专门提供 **CreateMap** 工具生成的可视化地图应用链接
      2. 数据链接已在执行阶段提供,避免重复
      3. 执行阶段务必调用真实工具,禁止编造

      image.jpeg

  4. 添加MCP

    • 在智能体配置列表中,编辑MCP服务项,点击【+】按钮,在已开通MCP中添加【DataV Atlas地理可视化】

      image.jpeg

    • 添加完【DataV Atlas地理可视化】MCP,关闭配置面板,智能体搭建完成

      image.jpeg

  5. 测试智能体

    • 在右侧对话框中,输入以下测试提示词:

      规划从杭州曲院风荷到杭州雷峰塔的路线,沿线撒点100个,绘制到地图上并提供地图链接;
    • 提示词通过大模型调用DataV MCP地理编码、路径规划、地图绘制等工具,生成了数据地图:

      image.jpeg

    • 点击生成的地图链接,地理数据已经生成并绘制到地图上:

      image.jpeg

实验资源释放

实验结束,如以资源包购买产品,无需退订/释放资源;

关闭实验

  • 完成实验后,点击 结束实操

    image

  • 点击 取消 回到实验页面,点击 确定 退出实验界面,关闭页面结束实验

    image