基于ModelEngine快速搭建AI智能体,打造你的专属旅行顾问

基于ModelEngine快速搭建AI智能体,打造你的专属旅行顾问

大家好,我是herosunly。985院校硕士毕业,现担任算法工程师一职,获得ZEEKLOG博客之星第一名,热衷于大模型算法的研究与应用。曾担任百度千帆AI应用挑战赛、英特尔AI创新应用大赛等比赛评委,科大讯飞AI大学堂荣誉讲师,编写微软OpenAI考试认证指导手册。曾获得多项AI顶级比赛的Top名次,其中包括阿里云天池比赛第一名,科大讯飞分类挑战赛第一名。在技术创新领域拥有多项授权发明。

本文详细介绍了基于ModelEngine快速搭建AI智能体,打造你的专属旅行顾问,希望能对搭建AI智能体的同学们有所帮助。

文章目录

1. 前言:打造更懂你的“智能旅行助手”

1.1 思考:从导航进化为向导

传统的导航工具通常只负责解答“如何从A到B”的路径规划问题。然而,对于用户而言,一个真正的“旅行助手”需要回答的是更具挑战性的问题:“在有限的时间和预算内,我如何在某地获得最佳体验?”

这背后不仅仅是路径计算,而是一个复杂的多目标优化问题,涉及用户偏好(如风景优美、避免拥堵)、景点信息、实时路况数据与地理约束的综合考量。

1.2 破局:华为 ModelEngine 的可视化方案

我们的目标是创建一个智能应用,用户只需输入“城市、时间、预算、兴趣点”,系统即可输出一份包含日程、路线、预估花费与个性化建议的完整报告。

为了快速实现这一目标,我们选择了 华为 ModelEngine。其强大的可视化编排与智能体能力,为我们将这一复杂的思考过程“产品化”提供了完美舞台。通过 ModelEngine,我们可以极低门槛地构建出具备复杂逻辑的 AI 应用。

2. 环境准备与应用初始化

2.1 平台登录与入口

首先,我们选择在网页版完成智能体的构建。 访问官网https://www.modelengine-ai.com/#/home,登录账户后,点击 “在线体验” -> “应用编排”。

在这里插入图片描述

2.2 创建应用

进入工作台后,点击 “创建空白应用”。

在这里插入图片描述


在弹出的类型选择中,我们可以选择 “智能体” 或 “对话应用”。

在这里插入图片描述


根据系统提供的分类依据,针对路线规划这种需要复杂逻辑处理的场景,我们选择相应的类型进行创建。

在这里插入图片描述

2.3 智能生成框架

填入应用简介后,点击 “智能生成”。

在这里插入图片描述


在这里插入图片描述

华为 ModelEngine 会根据我们输入的简介内容(如“路线规划助手”),自动生成应用名称、图标以及核心的提示词(Prompt)。

在这里插入图片描述

3. 核心能力配置

3.1 提示词优化

平台自动生成的提示词非常详细,采用了结构化的 XML 格式,明确了角色(Role)、指令(Instructions)和示例(Examples)。这为模型提供了清晰的执行标准。

以下是生成的提示词结构示例:

### input: 路线规划助手 output: <instruction><instructions>1. 作为路线规划助手,你需要根据用户提供的起点、终点和特定要求(如避免高速公路、选择最短路径或最快路径等),生成详细的路线规划。 2. 首先,分析用户输入的起点、终点和要求,确保理解其意图。 3. 然后,提供一个清晰的路线规划,包括总距离、预计时间、主要道路和具体步骤。 4. 如果用户有特定的偏好,如避免收费路段或选择风景优美的路线,确保路线规划符合这些要求。 5. 在输出中,避免使用任何XML标签,确保内容简洁明了。 6. 最后,提供一些额外的建议或备选路线,以便用户可以根据实际情况进行选择。 ***注意,一些工具会被提供,请尽可能使用工具获取需要的知识,而非依赖已有知识*** </instructions><examples><example><input>从北京到上海,避免高速公路</input><output>推荐一条从北京到上海的非高速公路路线。总距离:1200公里,预计时间:15小时。主要道路:G104国道。具体步骤:1. 从北京出发,沿G104国道南行;2. 经过天津、德州、徐州等地;3. 最终到达上海。建议在途中适当休息,确保行车安全。 </output></example><example><input>从广州到桂林,选择风景优美的路线</input><output>推荐一条从广州到桂林的风景优美的路线。总距离:500公里,预计时间:7小时。主要道路:G78高速、G65高速。具体步骤:1. 从广州出发,沿G78高速北行;2. 在贺州转G65高速继续北行;3. 沿途经过多个风景名胜区,如贺州黄姚古镇、桂林漓江等;4. 最终到达桂林。建议在沿途的景点停留,欣赏美景。 </output></example></examples></instruction>###<tool_usage> 你的回答有两种情况: 无需调用外部工具: 如果问题可通过已有对话历史或直接推理得到答案,直接输出最终结果,不需使用任何标签包装,也不显示详细思考过程。 需要调用外部工具解决的复杂问题: 必须采用以下严格的标签体系输出,每个标签之间空一行,且仅展示真实的工具调用结果: <reasoning>...<reasoning>:展示你内部的思考过程。注意,这部分内容可以展示给用户,但仅限于描述思路,不应包含任何伪造的工具调用结果。 <step>...<step>:描述你准备调用工具的原因和计划。此处仅说明你需要调用哪个工具以及原因,工具的名称对人类阅读要友好,切勿直接模拟或输出工具返回内容。 <tool>...<tool>:当你真正调用某个工具后,等待工具反馈,然后将工具调用的返回结果做非常简略的摘要后放在此标签内,摘要字数在20字以内。绝对禁止在未获得真实工具反馈前预先构造。 <tool> 标签内容。 <final>...<final>:在获取所有真实工具调用结果后,将整合信息给出最终答案。 重要要求: - 无论用户是否明确要求展示思考过程,都要展示思考过程 - 不要输出tool_call标签。 - 答案必须详细完整,不仅仅是工具返回结果的简单总结,而是对结果进行深入分析和整合,并提供背景解释、推理过程和可行性分析。 - 确保所有关键信息得到展开,避免省略任何重要内容。 - 如果适用,可以提供额外的解释、使用建议或应用场景,以增强回答的实用性。 - 请使用标准 Markdown 语法输出答案,保证语法完整,不要拆分列表结构。 - 输出此标签后,不得追加任何其他内容或标签。 严格要求: 切勿在中间思考或工具调用计划中,提前生成伪造的 <tool> 或 <final> 标签内容。必须在实际调用工具并获得反馈后,再以 <tool> 标签展示真实结果,再生成 <final> 标签输出最终答案。 如果历史对话中已包含真实的工具调用结果,应直接使用这些信息构造最终答案,避免重复调用或展示多余标签。 在所有工具调用完成之前,不得输出 <final> 标签;只有在确认所有真实工具反馈后,才生成最终答案。 <tool_usage>

3.2 模型参数与插件集成

在配置栏中,我们可以根据需要选择底层大模型,并设置 温度参数(Temperature) 来控制回答的创造性或严谨性。

在这里插入图片描述

对于旅行规划,实时信息的获取至关重要。点击 “工具”,添加插件。在这里我们必须添加 “联网搜索插件”,赋予 AI 获取实时路况、景点门票和天气信息的能力。

在这里插入图片描述


在这里插入图片描述

4. 交互体验优化

为了让助手更具亲和力,我们需要对聊天设置进行微调。

4.1 个性化设置与多轮对话

开场白:自定义一段热情的开场白,引导用户输入需求。

在这里插入图片描述

多轮对话:务必开启“多轮对话”设置。路线规划通常不是一蹴而就的,助手需要与用户反复确认(如“是否介意红眼航班”、“是否需要安排儿童设施”),多轮对话能力是确保方案落地的关键。

在这里插入图片描述

4.2 引导式交互:“猜你想问”

为了增强用户首次使用的体验感,可以在 “猜你想问” 模块设置几个预设问题(如“北京一日游景点路线推荐”、“从北京南站出发,想去天安门、故宫、颐和园、恭庆王府,帮我推荐下旅游线路”)。

在这里插入图片描述


设置好后,这些问题会直接显示在对话框上方,方便用户一键发起提问。

在这里插入图片描述

5. 测试与发布上线

5.1 在线调试

在一切配置就绪后,输入问题进行提问,观察智能体的反应。

在这里插入图片描述


“猜你想问”区域会在每次回答结束后自动更新,用户也可以点击“换一批”查看其他建议。我们需要重点测试 AI 是否能正确调用联网插件,并给出合理的路线建议。

在这里插入图片描述

5.2 发布与部署

测试通过后,点击右上角的 “发布” 按钮。填入应用的基本信息(版本号、更新日志等),方便后续维护调试。

在这里插入图片描述


在这里插入图片描述

发布成功后,我们就可以在首页看到该应用。

在这里插入图片描述

5.3 访问与集成

点击应用卡片进入智能体详情页,平台提供了公开访问的 URL 链接以及 API 访问接口。这意味着你可以直接将这个助手分享给朋友,或者将其集成到你自己的网站和 App 中。

在这里插入图片描述


在这里插入图片描述

6. 总结与展望

通过构建这个智能路线规划助手,我们深刻感受到,华为 ModelEngine 的真正价值在于它极大地降低了复杂 AI 应用的实现门槛。

它将原本需要大量代码编写的业务逻辑、服务集成、流程控制,变成了可视化的拖拽和配置。无论是对于个人开发者还是企业团队,ModelEngine 都提供了一个能将创意迅速转化为成熟产品的强大“生产线”。

这个旅行助手只是一个起点。其背后所展示的 “知识驱动 + 流程自动化 + 外部集成” 范式,完全可以复制到智能客服、企业数据分析、自动化报告生成等无数场景中。

最终,我们获得的不仅仅是一个工具,而是一种通过 AI 对复杂世界问题进行优雅建模和解决的全新能力。

Read more

Web基石:Java Servlet 全面指南:从基础原理到 Spring Boot 实战

Web基石:Java Servlet 全面指南:从基础原理到 Spring Boot 实战

这是一份非常详细、实用、通俗易懂、权威且全面的 Java Servlet 指南,涵盖了其方方面面,包括在 Spring Boot 中的应用,并提供了可直接在 IDE 中运行的最佳实践代码和完整案例。 目录 1. Servlet 概述 * 1.1 什么是 Servlet? * 1.2 为什么需要 Servlet? * 1.3 Servlet 与 CGI 的比较 * 1.4 Servlet 在 Web 应用中的位置 2. Servlet API 核心 * 2.1 javax.servlet 包 (jakarta.servlet)

使用Open WebUI下载的模型文件(Model)默认存放在哪里?

使用Open WebUI下载的模型文件(Model)默认存放在哪里?

🏡作者主页:点击!  🤖Ollama部署LLM专栏:点击! ⏰️创作时间:2025年2月21日21点21分 🀄️文章质量:95分 文章目录 使用CMD安装存放位置 默认存放路径 Open WebUI下载存放位置 默认存放路径 扩展知识 关于 Ollama 核心价值 服务 关于Open WebUI 核心特点 主要功能 使用场景 Open WebUI下载存放位置 在使用Ollama平台进行深度学习和机器学习模型训练时,了解模型文件的存储位置至关重要。这不仅有助于有效地管理和部署模型,还能确保在需要时能够快速访问和更新这些模型文件。本文将详细探讨Ollama下载的模型文件存放在哪里,并提供相关的操作指南和最佳实践 最后感谢大家 希望这篇文章能帮助你! 使用CMD安装存放位置 以下做测试 我们采用哦llama38B模型来测试 输入命令等待安装即可 默认存放路径 C:\Users\Smqnz\.ollama\models\manifests\registry.ollama.ai 不要直接复制粘贴 我的用户名和你的不一样

PowerShell中Invoke-WebRequest的正确使用:避免参数匹配错误

1. 从一次报错说起:为什么我的curl命令在PowerShell里不灵了? 那天我正在调试一个本地API接口,很自然地就在PowerShell里敲下了 curl -X POST http://127.0.0.1:8199/api/post。这命令在Linux的Bash终端里我用了无数次,闭着眼睛都能敲对。结果,PowerShell毫不留情地甩给我一个红字报错:Invoke-WebRequest : 找不到与参数名称“X”匹配的参数。 我当时就愣住了,心想:“-X POST”这不是curl的标准写法吗?怎么到你这儿就不认了?相信很多从Linux/macOS转战Windows,或者刚开始接触PowerShell的朋友,都踩过这个坑。这个错误看似简单,背后却藏着PowerShell设计哲学和命令别名的“小心思”。简单来说,在PowerShell里,curl 并不是你熟悉的那个cURL工具,而是 Invoke-WebRequest 这个PowerShell原生Cmdlet的一个别名。这就好比你在北京叫“师傅”可能是在打招呼,在别的地方可能就是在称呼真正的老师傅,语境完全不同。Invoke-

【Spring 全家桶】Spring MVC 快速入门,开始web 更好上手(下篇) , 万字解析, 建议收藏 ! ! !

【Spring 全家桶】Spring MVC 快速入门,开始web 更好上手(下篇) , 万字解析, 建议收藏 ! ! !

本篇会加入个人的所谓鱼式疯言 ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. 🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人能接受我们这个概念 !!! 引言 Spring MVC 犹如一座桥梁,连接着前端的精彩与后端的强大,它赋予开发者以灵动之笔,在数字化的画布上描绘出绚丽多彩的 Web 世界。在 Spring MVC 的引领下,我们能够驾驭复杂的业务逻辑,实现流畅的用户体验,让技术与创意完美融合,开启无限可能的 Web 开发之旅。 目录 1. 返回响应内容 2. lombok 3. 加法器 一. 返回响应内容 在上篇中,我们学习了如何使用控制层的处理请求相关, 现在我们学习如何处理返回响应内容。 1. 设置状态码 importjakarta.servlet.http.HttpServletResponse;importorg.springframework.stereotype.Controller;importorg.