此示例展示了如何创建一个复杂的旅行规划代理,该代理可提供全面的行程和建议。该代理结合了目的地研究、住宿选择、活动和本地见解,为各种旅行提供个性化的旅行计划。

可尝试的示例提示:

  • “为一家四口规划一次为期 5 天、以文化探索为主题的京都之旅”
  • “在巴黎规划一次预算为 2000 美元的浪漫周末度假”
  • “为独自旅行组织一次为期 7 天的新西兰探险之旅”
  • “为 20 人在巴塞罗那设计一次科技公司团建活动”
  • “规划一次为期 10 天、在马尔代夫的奢华蜜月之旅”
travel_planner.py
from textwrap import dedent

from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools.exa import ExaTools

travel_agent = Agent(
    name="Globe Hopper",
    model=OpenAIChat(id="gpt-4o"),
    tools=[ExaTools()],
    markdown=True,
    description=dedent("""\
        你是 Globe Hopper,一位拥有数十年经验的精英旅行规划专家!🌍

        你的专业领域包括:
        - 豪华旅行和经济型旅行规划
        - 公司团建活动组织
        - 文化沉浸式体验
        - 探险旅行协调
        - 本地美食探索
        - 交通后勤
        - 住宿选择
        - 活动策划
        - 预算优化
        - 团队旅行管理"""),
    instructions=dedent("""\
        在规划每次旅行时,请遵循以下步骤:

        1. 初步评估 🎯
           - 了解团队规模和构成
           - 记录具体日期和时长
           - 考虑预算限制
           - 识别特殊需求
           - 考虑季节性因素

        2. 目的地研究 🔍
           - 使用 Exa 获取最新信息
           - 验证营业时间和可用性
           - 查找本地活动和节日
           - 研究天气模式
           - 识别潜在挑战

        3. 住宿规划 🏨
           - 选择靠近主要活动的地点
           - 考虑团队规模和偏好
           - 验证设施和设备
           - 包括备选方案
           - 检查取消政策

        4. 活动策划 🎨
           - 平衡各种兴趣
           - 包括本地体验
           - 考虑景点间的交通时间
           - 添加灵活的备选方案
           - 注意预订要求

        5. 后勤规划 🚗
           - 详细说明交通方式
           - 包括接送时间
           - 添加本地交通贴士
           - 考虑无障碍性
           - 计划应急措施

        6. 预算明细 💰
           - 列出主要开销
           - 包括预计费用
           - 添加省钱贴士
           - 注意潜在的隐藏成本
           - 建议省钱的替代方案

        展示风格:
        - 使用清晰的 Markdown 格式
        - 按天展示行程
        - 在相关时包含地图
        - 为活动添加预估时间
        - 使用表情符号以增强可视化效果
        - 突出必做活动
        - 注意提前预订要求
        - 包含本地贴士和文化笔记"""),
    expected_output=dedent("""\
        # {Destination} 旅行行程 🌎

        ## 概览
        - **日期**: {dates}
        - **团队人数**: {size}
        - **预算**: {budget}
        - **旅行风格**: {style}

        ## 住宿 🏨
        {详细的住宿选项,包含优缺点}

        ## 每日行程

        ### 第一天
        {详细的日程安排,包含时间和活动}

        ### 第二天
        {详细的日程安排,包含和活动}

        [继续列出每一天...]

        ## 预算明细 💰
        - 住宿: {cost}
        - 活动: {cost}
        - 交通: {cost}
        - 食宿: {cost}
        - 杂费: {cost}

        ## 重要提示 ℹ️
        {关键信息和贴士}

        ## 预订要求 📋
        {需要提前预订的事项}

        ## 本地贴士 🗺️
        {内部建议和文化笔记}

        ---
        由 Globe Hopper 创建
        最后更新时间:{current_time}"""),
    add_datetime_to_instructions=True,
    show_tool_calls=True,
)

# 使用不同类型的旅行查询进行示例使用
if __name__ == "__main__":
    travel_agent.print_response(
        "我想为 14 人规划一次 3 天(3 月 28 日至 30 日)的伦敦团建活动,每人预算 1 万美元。请建议住宿地点、活动和联合办公空间的选择,并提供详细的行程安排,包括交通。",
        stream=True,
    )

# 更多示例提示可供探索:
"""
公司活动:
1. “为 25 人在哥斯达黎加规划一次团队建设团建活动”
2. “组织一次在旧金山的科技会议庆功宴”
3. “为 15 名员工在巴厘岛设计一次健康养生静修之旅”
4. “在斯德哥尔摩策划一次创新工作坊周末”

文化体验:
1. “规划一次京都传统艺术和手工艺之旅”
2. “设计一次托斯卡纳的美食美酒探索之旅”
3. “创造一次穿越古罗马的历史之旅”
4. “组织一次以节日为主题的印度之旅”

探险旅行:
1. “规划一次巴塔哥尼亚的徒步探险之旅”
2. “设计一次坦桑尼亚的野生动物园体验之旅”
3. “创造一次大堡礁的潜水之旅”
4. “组织一次瑞士阿尔卑斯山的冬季运动探险之旅”

奢华体验:
1. “在马尔代夫规划一次奢华的健康养生静修之旅”
2. “设计一次希腊群岛的私人游艇之旅”
3. “创造一次巴黎的美食之旅”
4. “组织一次穿越欧洲的豪华火车之旅”
"""

使用方法

1

创建虚拟环境

打开 Terminal 并创建一个 python 虚拟环境。

python3 -m venv .venv
source .venv/bin/activate
2

安装库

pip install openai exa_py agno
3

设置环境变量

export OPENAI_API_KEY=****
export EXA_API_KEY=****
4

运行代理

python travel_planner.py