聚点智行:WorkBuddy 辅助开发 AI 地图智能应用实战
一、从痛点到创意一个真实场景的启发作为一名经常组织朋友聚会的社交达人我遇到了一个看似简单却让人头疼的问题每次约饭大家都在问在哪见张三住在回龙观李四在东直门王五在南四环我在中关村 —— 四个人分散在北京四个方向提任何一个人的位置其他人可能都要跑很远传统导航只能解决怎么去但无法回答在哪汇合最公平需要在地图 App、美食 App、微信群之间反复横跳这个痛点让我想到了用 AI 地图能力一站式解决这个问题。创意的诞生在 WorkBuddy 的帮助下我从一开始的模糊想法逐步清晰“我想做一个多人聚会地点推荐的应用”↓ WorkBuddy 引导分析建议定位为「AI 驱动的多人智能汇合出行规划平台」核心功能包括自然语言交互用户用说话的方式描述需求智能汇合点算法计算最优集合点MCP Tool Calling 可视化让 AI 的思考过程透明可见腾讯地图 GL 3D 展示专业的地图渲染能力最终「聚点智行」这个项目诞生了。二、为什么选择 WorkBuddyAI 辅助开发的真实体验2.1 WorkBuddy 的核心能力在整个开发过程中WorkBuddy 扮演了多重角色角色WorkBuddy 的贡献技术顾问推荐腾讯地图 GL、MCP Server 等技术选型架构师设计 AI Intent 识别层 → MCP Tool Calling → 地图可视化的三层架构全栈工程师生成 1400 行高质量 HTML/JS/CSS代码文档助手自动生成 README、功能报告、参赛材料2.2 开发效率对比如果纯手工开发这个项目我预估需要架构设计2-3 天查阅文档、技术方案设计前端开发5-7 天地图集成、UI 实现、交互逻辑算法实现1-2 天汇合点算法、路线规划调试优化2-3 天文档编写1-2 天总计11-17 天使用 WorkBuddy 后需求沟通 架构设计1 小时与 WorkBuddy 对话代码生成 集成2 小时WorkBuddy 生成主体代码调试优化1 小时本地预览、微调细节文档生成30 分钟WorkBuddy 自动整理总计约 4.5 小时⏱️效率提升约 20-30 倍使用对话界面如下所示三、技术架构演进从 0 到 1 的设计过程3.1 初始方案 vs 最终方案最初的想法我的原始需求用户输入地址 → 后台计算中心点 → 返回结果WorkBuddy 引导的架构升级经过与 WorkBuddy 的多轮对话我们共同设计了更完善的架构┌─────────────────────────────────────────┐ │ 用户交互层 (UI) │ │ 自然语言输入框 快捷按钮 地图视图 │ └──────────────┬──────────────────────────┘ │ 用户输入帮 4 个人找汇合点 ▼ ┌─────────────────────────────────────────┐ │ AI Intent 识别层 (Agent) │ │ 意图分类汇合/搜索/导航/热力/行程规划 │ └──────────────┬──────────────────────────┘ │ Tool Calling (MCP 协议) ▼ ┌─────────────────────────────────────────┐ │ 腾讯位置服务 MCP Server │ │ ┌──────────┐ ┌──────────────────┐ │ │ │ geocoder │ │ placeSearchNearby│ │ │ └──────────┘ └──────────────────┘ │ │ ┌──────────────────┐ ┌─────────┐ │ │ │ directionDriving │ │ matrix │ │ │ └──────────────────┘ └─────────┘ │ │ ... 14 种地图工具 │ └──────────────┬──────────────────────────┘ │ 结构化数据返回 ▼ ┌─────────────────────────────────────────┐ │ 腾讯地图 JavaScript API GL (渲染层) │ │ • MultiMarker (高性能标记图层) │ │ • MultiPolyline (路线绘制) │ │ • MultiCircle (范围圆) │ │ • visualization.Heat (热力图) │ │ • InfoWindow (信息弹窗) │ └─────────────────────────────────────────┘3.2 关键技术决策在与 WorkBuddy 的对话中我们做了几个重要的技术决策决策 1为什么选择腾讯地图 GL 而不是普通版我的疑问“腾讯地图有普通版和 GL 版有什么区别”WorkBuddy 的建议GL 版本支持 WebGL 硬件加速适合以下场景3D 建筑渲染俯视视角效果震撼大量标记点MultiMarker 性能更好热力图、矢量图层等高级可视化流畅的缩放、旋转动画你的项目需要展示多人位置、路线连线、热力图等强烈建议使用 GL 版本。最终选择https://map.qq.com/api/gljs?v1.exp决策 2MCP Tool Calling 的价值我的疑问“为什么要用 MCP 协议直接调 API 不行吗”WorkBuddy 的解释MCP (Model Context Protocol) 是 AI Agent 与外部工具通信的标准协议。使用 MCP 的好处标准化所有工具调用都遵循统一格式可追溯AI 的每一步思考和工具调用都有日志可扩展新增工具只需注册到 MCP Server无需修改前端可视化可以实时展示 AI 调用了哪些工具、返回了什么结果这正是你项目的创新点让用户看到 AI 如何思考。决策 3零后端架构的可行性我的担忧“纯前端实现会不会不安全Key 暴露怎么办”WorkBuddy 的方案可以通过以下方式降低风险Referer 白名单在腾讯位置服务控制台设置域名限制配额管理设置每日调用上限防止恶意刷量生产环境代理正式部署时可用云函数做一层代理CloudBase Function对于参赛作品和 Demo纯前端架构的优势更明显零运维成本快速迭代便于评委和用户体验执行效果如下四、核心功能实战西直门一日行程完整案例这是整个项目中最让我自豪的功能——AI 智能行程规划。让我用一个真实案例带你完整体验 AI 是如何像真人管家一样思考的。4.1 用户需求一个典型的商务出行场景我的输入“我在西直门附近开会4 月 1 日晚 -2 日晚住酒店请帮我安排一天的吃喝住玩行程”这个需求看似简单实则需要 AI 理解多个隐含约束✅ 会议地点在西直门地理约束✅ 住宿要在会议地点附近步行可达✅ 时间范围4 月 2 日全天时间约束✅ 行程要包含住宿、三餐、景点、交通完整性约束4.2 AI 的思维链推理过程10 步完整拆解第①步解析用户需求AI 思考“用户需求西直门附近开会4 月 1 日晚 -2 日晚住酒店需安排一天的吃喝住玩行程。关键约束① 会议地点在西直门② 住宿需在西直门附近步行可达③ 时间范围4 月 2 日全天④ 行程需包含住宿推荐、三餐、游览景点、出行路线。”调用工具geocoder- 解析「西直门」坐标执行结果 解析完成西直门 → 坐标 (39.9434, 116.3497) 位于北京西城区地铁 2/4/13 号线交汇站技术解读这一步是地理编码Geocoding将自然语言中的地名转换为精确的经纬度坐标。西直门作为北京重要交通枢纽坐标解析精度直接影响后续所有推荐的准确性。第②步检索周边住宿选项AI 思考“以西直门为中心搜索 1km 范围内的酒店。筛选条件交通便利、近会议地点、多价位覆盖商务/经济/精品。优先靠近地铁和主要商圈的选项。”调用工具placeSearchNearby- 周边酒店 POI 检索radius1000mplaceDetail- 获取酒店详细信息执行结果 找到 3 家推荐酒店 1. 凯悦嘉轩 (★★★★★) - 高端商务 2. 如家 (★★★) - 经济型 3. 展览路精品 (★★★★) - 特色民宿 均在步行 5-15 分钟范围内代码实现思路// WorkBuddy 生成的周边搜索逻辑asyncfunctionsearchNearbyHotels(center,radius1000){constresultawaitmcpCall(placeSearchNearby,{keyword:酒店,location:${center.lat},${center.lng},radius:radius,page_size:10,});// 过滤和排序优先高评分、近距离returnresult.pois.filter(poipoi.rating4.0).sort((a,b)a.distance-b.distance);}第③步推理住宿选择依据AI 思考“综合考虑① 凯悦嘉轩最近0.3km设施最好适合商务出行② 如家性价比最高近地铁 4 号线③ 展览路精品安静靠近动物园景区。根据开会场景推荐凯悦嘉轩——既近会议地点又方便第二天游览。”推荐结果✅ 推荐住宿北京西直门凯悦嘉轩酒店 ¥688/晚含早餐 距会议地点 0.3km步行 5 分钟 近地铁 2/4/13 号线西直门站推理逻辑这是典型的多因素决策问题。AI 构建了一个简单的加权评分模型距离权重 40%越近越好价格权重 30%性价比评分权重 20%用户口碑设施权重 10%商务配套最终凯悦嘉轩综合得分最高。第④步规划早餐方案AI 思考“早餐时间07:30-08:30。酒店含早餐可直接在酒店用餐若想体验北京本地早餐庆丰包子铺0.4km是性价比极高的选择¥15/人5 分钟步行可达。建议如赶时间直接酒店早餐如时间充裕体验庆丰包子。”调用工具placeSearchNearby- 早餐 POI 搜索keyword早餐/包子执行结果 早餐方案二选一 ① 酒店自助早餐含早免费 ② 庆丰包子铺 (0.4km, ¥15/人) — 北京人气早餐人性化设计AI 没有武断地只给一个答案而是提供了弹性选择商务人士时间紧张 → 酒店早餐省时游客想体验当地文化 → 庆丰包子体验感第⑤步检索上午游览景点AI 思考“西直门附近步行/骑行可达的景点北京动物园 (1.2km, 熊猫必看)、北京天文馆 (1.5km)、北京展览馆 (0.9km, 免费)。4 月份天气适宜动物园户外活动最适合。天文馆适合午后球幕影院。规划路线会议地点→动物园→天文馆连续游览。”调用工具placeSearchNearby- 景区 POI 搜索radius3000mdirectionWalking- 步行路线规划酒店→动物园执行结果 上午行程 北京动物园 (9:00-11:30, 2.5 小时) ↓ 步行 1.2km 约 15 分钟 北京天文馆 (12:30 参加球幕影院)路线优化这里 AI 运用了贪心算法思想优先选择知名度最高的景点动物园熊猫馆选择邻近景点减少路途时间天文馆紧邻动物园考虑开放时间匹配动物园上午开放天文馆下午有球幕电影第⑥步安排午餐AI 思考“午餐时间约 12:00。动物园附近选项园内餐厅方便但偏贵园外’胡同里的烤鸭’(1.1km, ¥120/人)正宗北京烤鸭4 月旺季需提前预约。另一选项附近便餐¥40-60/人节省时间。推荐正宗北京烤鸭符合’吃’的打卡感适合 4 月旅行心情。”调用工具placeSearchNearby- 午餐 POI 搜索烤鸭/中餐厅执行结果 午餐推荐胡同里的烤鸭 ¥120/人 动物园附近步行 10 分钟 正宗北京烤鸭建议提前预约推荐策略AI 在这里体现了场景化推荐的智慧不是简单地找最近的餐厅而是考虑来北京旅游必吃烤鸭的文化属性价格适中¥120/人符合一日游预算第⑦步规划下午茶与漫游路线AI 思考“下午 14:00-17:00 是最舒适的游览时段。可选路线① 沿展览路步行回西直门途经北京展览馆打卡苏式建筑② 骑行/地铁南下去白塔寺历史街区2.8km③ 凯德购物中心休闲逛街。4 月春日建议白塔寺文化路线 胡同打卡体验老北京。Manner Coffee 下午茶很适合。”调用工具directionBicycling- 骑行路线天文馆→白塔寺placeSearchNearby- 咖啡/茶饮 下午茶选项执行结果 下午路线 天文馆 → 白塔寺街区 (骑行 15min, 2.8km) ↓ 胡同漫游 (2 小时) ↓ Manner Coffee 下午茶 (西直门凯德店)体验设计这段行程体现了 AI 对节奏把控的理解上午体力充沛 → 步行较多动物园 天文馆午后容易疲劳 → 骑行减少体力消耗傍晚需要休息 → 咖啡厅小憩第⑧步安排晚餐AI 思考“晚餐时间 18:30-20:00。回到西直门附近选项① 海底捞 (凯德店0.6km, ¥150/人)——服务好适合放松② 眉州东坡 (西四1.8km, ¥90/人)——品质川菜③ 西直门老北京涮肉 (0.2km, ¥80/人)——最近、本地特色。综合考虑一日游后宜选安静舒适的涮肉符合北京特色且距酒店最近步行 5 分钟。”调用工具placeSearchNearby- 晚餐 POI 搜索涮肉/火锅/中餐directionWalking- 步行白塔寺→西直门涮肉执行结果 晚餐推荐西直门老北京涮肉 ¥80/人 距酒店步行 5 分钟 本地人推荐正宗老北京味道决策智慧经过一天游玩AI 选择了最近0.2km减少最后一段路程负担最特色老北京涮肉强化旅行记忆点最舒适非网红店避免排队等待第⑨步计算全日行程路线总览AI 思考“汇总全天行程路线酒店→动物园→天文馆→午餐→白塔寺→Manner→晚餐→回酒店。总步行/骑行距离约 8.5km公交/地铁约 3 站全程可步行 骑行 地铁混合出行。明天离店时地铁 4 号线西直门站直达北京南站/首都机场等交通枢纽。”调用工具matrix- 多点距离矩阵计算directionDriving- 全日路线汇总规划执行结果️ 全日路线汇总 总距离约 8.5km 出行方式步行 共享单车 地铁 预计总出行时间1.5 小时技术亮点这里使用了距离矩阵 API一次性计算多个点之间的距离和耗时避免了多次单独调用的开销。第⑩步生成结构化行程单AI 思考“将所有规划结果整合为结构化行程单包含时间节点、地点、费用估算、交通方式。确保行程时间合理不过于紧凑留有弹性时间。总费用估算住宿 688 餐饮约 310 景点 75 其他 50 ≈ ¥1,123/人。”最终输出 西直门一日行程单 · 4 月 1 日晚 -2 日晚 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 预计总费用¥1,123/人 【4 月 1 日】 晚 入住酒店 北京西直门凯悦嘉轩酒店 · ¥688/晚 距会议地点步行 5 分钟 · 含早餐 【4 月 2 日】 07:30 早餐 庆丰包子铺 (0.4km) 或 酒店自助早餐 ¥15-60/人 09:30 北京动物园 步行 15 分钟 (1.2km) · 游览 2 小时 门票¥20 · 熊猫馆必去 12:00 午餐北京烤鸭 胡同里的烤鸭 (动物园旁 · 步行 10 分钟) ¥120/人 · 提前预约 13:30 北京天文馆 步行 5 分钟 (0.3km) · 球幕影院 1.5 小时 门票¥35 · 建议预约场次 15:00 骑行至白塔寺 共享单车骑行 15 分钟 (2.8km) ⛩️ 白塔寺历史街区·胡同漫游 2 小时 16:30 ☕ 下午茶 Manner Coffee(西直门凯德) · ¥35/杯 步行返回西直门途中 18:30 晚餐老北京涮肉 西直门老北京涮肉 (步行 5 分钟) ¥80/人 · 本地特色 【4 月 2 日】 晚 继续住宿 / 离店 酒店休息 · 4 号线西直门站可达北京南站/机场 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 全日费用明细 住宿¥688 餐饮¥310早餐 15 午餐 120 下午茶 35 晚餐 80 其他 60 景点¥75动物园 20 天文馆 35 其他 20 交通¥50共享单车 地铁 总计¥1,123/人技术实现// WorkBuddy 生成的行程单结构化数据constitinerary{title:西直门一日行程单,dateRange:4 月 1 日晚 -2 日晚,totalCost:1123,items:[{time:4 月 1 日 晚,type:accommodation,title:入住酒店,name:北京西直门凯悦嘉轩酒店,cost:688,distance:0.3km,tags:[商务,近地铁,含早],},{time:07:30,type:meal,title:早餐,options:[{name:酒店自助早餐,cost:0},{name:庆丰包子铺,cost:15,distance:0.4km},],tags:[北京特色],},// ... 更多节点],costBreakdown:{accommodation:688,meals:310,attractions:75,transport:50,},};4.3 地图可视化效果当 AI 完成上述 10 步推理后腾讯地图 GL 引擎会自动执行以下渲染操作可视化元素酒店标记蓝色图钉西直门凯悦嘉轩酒店位置景点标记绿色五角星动物园、天文馆、白塔寺餐厅标记橙色刀叉图标早餐、午餐、晚餐地点路线连线步行路线绿色实线骑行路线青色虚线全程轨迹蓝色箭头线信息窗口点击每个标记显示详情名称、费用、时间交互效果地图自动fitBounds()所有标记点确保全部可见按时间顺序依次弹出标记动画形成故事线右侧同步显示思维链推理过程卡片当我第一次看到这个完整的行程规划时真的被惊艳到了这哪里是 AI简直就是个贴心的私人旅行管家不仅考虑了地理位置的合理性还考虑了时间节奏的舒适性甚至考虑了预算控制和文化体验最重要的是我能清楚看到 AI 是如何一步步思考的这种透明感让我完全信任它的推荐。五、核心技术实现WorkBuddy 如何帮我写代码5.1 多人最优汇合点算法这是项目的核心算法需要找到一个位置使得所有人的出行距离之和最小。我的原始想法“取所有人位置的经纬度平均值”WorkBuddy 的实现// WorkBuddy 生成的加权地理重心算法functioncalcMeetingPoint(people){// 基础版几何中心constlatpeople.reduce((sum,p)sump.location.getLat(),0)/people.length;constlngpeople.reduce((sum,p)sump.location.getLng(),0)/people.length;returnnewTMap.LatLng(lat,lng);}// 进阶版Haversine 球面距离考虑地球曲率functionhaversineKm(a,b){constR6371;// 地球半径 (km)constdLat(b.getLat()-a.getLat())*Math.PI/180;constdLng(b.getLng()-a.getLng())*Math.PI/180;constxMath.sin(dLat/2)**2Math.cos(a.getLat()*Math.PI/180)*Math.cos(b.getLat()*Math.PI/180)*Math.sin(dLng/2)**2;returnR*2*Math.atan2(Math.sqrt(x),Math.sqrt(1-x));}六、总结做完这个项目我最大的感受是AI 让地图从「工具」进化为能思考、会对话的「大脑」。当用户输入帮 4 个人找汇合点时腾讯地图 JavaScript API GL 不再只是被动渲染坐标而是通过 MCP Tool Calling 主动理解需求、调用 geocoder 解析地址、用 matrix 计算距离矩阵、最后驱动 MultiMarker 和 MultiPolyline 在地图上绘制出最优方案。这种从你点什么它显示什么到你说需求它给方案的转变才是 AI Native 地图应用该有的样子。技术实现上我深度结合了腾讯位置服务 Map Skills 体系下的多个工具tencentmap-jsapi-gl-skill负责 3D 地图渲染和高性能图层管理tencentmap-webservice-skill提供 POI 搜索、路线规划、逆地理编码等能力而MCP Server则作为 AI Agent 与这些工具通信的标准协议。当 AI 接收到用户需求后它会像人类一样思考——先解析意图汇合/搜索/导航再决定调用哪些工具geocoder/placeSearchNearby/direction最后综合结果生成结构化行程单。这种感知→思考→行动的闭环让地图真正拥有了大脑。如果你也在探索 AI 地图的可能性我的建议是别把 MCP 当噱头要让它真正解决用户的焦虑。我的这款旅行地图智能体应用解决了行程规划问题之所以打动人不是因为调用了多少高大上的 API而是它像一个真正的旅行管家那样思考——考虑时间节奏、控制预算分配、甚至预判体力消耗。技术的终极价值永远在于它能给多少人带来便利和温暖。AI 地图的智能进化之路才刚刚开始。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2473282.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!