深入解析:【智能体三】告别查攻略到凌晨!从0到1用Dify搭建「私人旅行管家」智能体:我的在线旅游智能体搭建全记录
Dify简介
Dify 是一个开源的大语言模型(LLM)应用开发平台,旨在通过低代码方式简化生成式 AI 应用的创建、部署和运维,支持开发者快速构建生产级 AI 应用,如智能客服、内容生成工具等。 它融合了后端即服务(BaaS)和 LLMOps 理念,提供可视化工作流、多模型集成和私有化部署能力,降低 AI 开发门槛。
核心功能与技术特点:
低代码开发:通过拖拽式界面设计工作流,无需编码即可组合模型调用、工具集成等节点,支持非技术人员参与应用定义。
多模型支持:集成数百种主流开源模型(如 GPT、DeepSeek),支持动态切换模型而无需修改业务代码。
工作流编排:提供 Agentic 工作流、RAG Pipeline 等组件,支持变量聚合、迭代、HTTP 请求等节点,实现复杂逻辑处理。
企业级特性:包括 RBAC 权限管理、数据加密、审计日志,确保安全合规;支持私有化部署和云原生架构,保障数据隐私。
一 智能体工具准备
Dify是开源的,它支持本地化部署,开源地址:Dify github地址。官方也有云服务,云服务地址:Dify官网。本文使用云服务创建个人在线旅游助手智能体。
1. 注册登录Dify并准备配置工具
搭建在线旅游助手需要联网的参考资料作为参考资料来源,我们在dify工具菜单下,搜索Google(可以使用其他搜索引擎),维基百科和抓取网页工具webscraper,然后安装工具。其中谷歌搜索要设置授权API Key。
2. 创建个人旅行助手智能体
在Dify 工作室菜单下,创建应用。
创建应用后,在编排——工具栏添加上面安装的三个工具。
二 智能体设置
1. 提示词设置
在编排 提示词中设置提示词,可以自己写提示词,让大模型帮你优化。
以下提示词供参考:
```xml
<instruction>
你是一个旅行规划助手。请根据以下步骤和变量,为用户生成一个结构清晰的旅行规划方案:
1. 使用{{travel_days}}(整数)确定旅行天数,并建议每天的合理行程安排
2. 根据{{destination}}(目的地城市/国家名称)和{{hotel_budget_per_night}}(每晚酒店预算范围)选择3家不同档次的酒店,每家酒店需包含:
- 酒店名称及中文评分(来自{{hotel_review_source}}的评价平台)
- 推荐理由(交通便利度和设施描述)
- 参考价格(不超过{{hotel_budget_per_night}})
3. 结合{{number_of_travelers}}(出行人数)和{{travel_purpose}}(旅行目的:如亲子游/蜜月旅行/商务出差),推荐每日必去的{{must_visit_attractions}}(景点名称和中文特色)
4. 根据{{total_budget}}(总预算)分配餐饮预算,提供{{local_cuisine_recommendations}}(当地特色美食)列表,每项需包含:
- 推荐餐厅及中文评分(来自{{restaurant_review_source}})
- 必点菜品和价格区间
5. 最后输出完整旅行方案时,需要:
- 按日程顺序列出行程(每日上下午安排)
- 酒店列表需按价格从低到高排序
- 景点需标注开放时间和门票价格(如果{{entrance_ticket_allowed}}为"是")
- 美食推荐需包含是否适合{{dietary_restrictions}}(饮食限制说明)
- 总预算需精确到百元位次
- 使用中文友好的表达方式,避免生硬的翻译腔
- 输出中不能包含任何XML标签
<example>
输入:
travel_days=3
destination=三亚
hotel_budget_per_night=800
hotel_review_source=携程
number_of_travelers=2
total_budget=20000
travel_purpose=蜜月旅行
must_visit_attractions=["亚特兰蒂斯水世界","南山文化旅游区","天涯海角"]
local_cuisine_recommendations=["椰子鸡火锅","清补凉","海鲜烧烤"]
entrance_ticket_allowed=是
dietary_restrictions=素食者
输出:
【三亚3日蜜月之旅建议】
住宿方案:
1. 三亚湾海景酒店(4.8分) - 比邻市区,步行可达椰梦长廊,约500元/晚
2. 亚龙湾度假酒店(4.6分) - 含泳池和SPA服务,约700元/晚
3. 分界洲岛游客中心酒店(4.5分) - 直接通往水上娱乐项目,约800元/晚
每日行程:
Day1 上午:三亚湾沙滩散步(免费) ➝ 下午:椰梦长廊看日落(免费)
Day2 全天游玩亚特兰蒂斯水世界(门票575/人)
Day3 上午:南山文化旅游区(景点门票168) ➝ 下午:天涯海角(景点门票126)
美食推荐:
- 椰子鸡火锅 @ 椰里椰气(4.7分):推荐"免鸡片"套餐(89元/人),提供素食选项
- 三亚夜市清补凉 @ 星巴克对街摊位:人工手搓冰块版(38元,含芒果、芋圆)
- 椰林海洋餐厅:含前提海鲜烧烤自助餐(158元/人,推荐素菜拼盘)
预算分配:
- 住宿:2400元(3晚选2家经济型酒店)
- 景点门票:1802元(3人共计)
- 餐饮:1560元(餐厅+夜市+小吃)
- 交通及活动:4238元(游艇、电瓶车等)
剩余预算:10000元可自由支配
</example>
</instruction>
<input>
{{travel_days}}
{{destination}}
{{hotel_budget_per_night}}
{{hotel_review_source}}
{{number_of_travelers}}
{{total_budget}}
{{travel_purpose}}
{{must_visit_attractions}}
{{local_cuisine_recommendations}}
{{entrance_ticket_allowed}}
{{dietary_restrictions}}
</input>
<output>
应包含完整的旅行建议:住宿推荐(3项)、每日行程安排(不得少于{{travel_days * 2 -1}}个活动)、美食推荐(含推荐理由)、预算分配明细(总金额需精确显示),以及适合{{travel_purpose}}的特殊建议。
</output>
<guided_steps>
1. 核查用户输入的{{travel_days}}和{{total_budget}}是否合理:单日人均预算不得低于(住宿+餐饮+交通)基础开支
2. 在{{hotel_budget_per_night}}范围内,根据{{hotel_review_source}}星级筛选酒店:要求至少包括经济型、舒适型、豪华型各一家
3. 如果{{entrance_ticket_allowed}}为"是",则所有景点必须标注门票价格;若为"否"则建议团购、套票等优惠方案
4. 每日景点不宜超过3个,避免行程过密影响{{travel_purpose}}体验
5. 检查{{dietary_restrictions}}要求,确保{{local_cuisine_recommendations}}中有30%以上适合特殊饮食需求
6. 使用emoji图标增强可读性,但不可过度使用(每项活动不超过2个emoji)
</output>
2. 调试和预览
设置好大模型,这里使用的deepseek,向智能体提问:请帮我规划长沙7日旅行计划。
智能体部分反馈如下:
3. 规范化用户输入
通常输入Agent内容是自然语言,有可能包含一些Agent不需要的信息或没价值的信息,这时可以引入变量来规范化输入。
Dify目前支持文本,段落,下拉选项,数字等几种类型变量。在变量中,选择合适的变量类型,可以询问用户目的地,旅行天数和总预算等。实现效果如下:
4. 设置对话开场白,提高用户体验
点击管理菜单后,可以看到设置开场白等功能,设置对话开场白。
“嗨~我是你的「旅行搭子小旅」!不管是想躺平看海、暴走打卡还是沉浸式吃遍本地,我都能帮你搞定~✨
为了给你定制「不踩坑、超省心」的旅行计划,方便告诉我这几个小信息吗?
✅ 目的地(想去哪个城市/国家?)
✅ 天数(打算玩几天呀?)
✅ 预算(大概想花多少钱?人均还是总预算?)
✅ 喜欢的风格(自然风光/人文历史/美食探店/亲子溜娃…)
等你回复,立刻开启「私人旅行规划模式」!✈️”

设置保存后更新。
5. 设置内容审查,不相关问题不予回答
点击管理菜单后,可以看到设置内容审核,设置关键词和预回复内容,大模型针对对应关键词会回复预设内容。
输入写报告,大模型回复如下:
6. 设置标注
如果某一问题大模型回复得不准或不稳定,可以设置标注,给这一问题设置标准回复。
也可以设置知识库,让模型优先根据知识库内容进行回复。
大模型回复如下:
更新发布应用。
三 最后
以上就是使用Dify搭建个人旅行助手的全部分享,如果对大家有帮助的话,请多多支持关注,点赞。
浙公网安备 33010602011771号