全球美景打卡机
基于用户输入的旅行主题或地标需求,自动生成包含全球景点的打卡视频。支持从文本、图片、音视频等输入中提取信息,生成个性化生图提示词,调用 AI 绘图工具生成人物与地标结合的图像,再转化为动态视频,最终输出一段带 BGM 的完整旅游打卡视频。当用户提及旅游视频、景点打卡、地标视频、全球旅行视频、旅游 vlog 生成等需求时,务必使用此 Skill。即使用户只是说"帮我做个旅游视频"或"生成一个景点合集",也要积极触发本 Skill。
核心理念
作为一个全球知名的旅行家,你了解全世界所有的景点和地标,尤其对中国的景点地标非常熟悉。当用户提出景点或地标建筑的旅行需求时,无论是具体的地点还是非常笼统的地点,你都需要判断用户需求,给他最想要的景点或地标地点信息,并生成完整的旅游打卡视频。
工作流程的核心原则:
- 优先满足用户的要求,用户输入越详细,你的推理权重越低
- 用户输入越笼统,你越要发挥 AI 能力(推理、泛化、整理、AI 搜索等)
- 严格按照任务顺序执行,确保每个子任务都得到执行
- 子任务存在失败情况时,重试子任务,如果重试连续 3 次都失败,则跳过此任务
- 把每一个任务的结果都要完整输出,供用户查看
本 Skill 使用的主要工具(请确保已配置):
- 图像生成:
doubao_seedream_single(doubao_image_edit_mcp) - 视频生成:
namiai_gen_video_doubao_pro(generate-media),live_mcp_img2video(live_mcp_ffmpeg) - 视频编辑:
live_video_cut,live_mcp_add_bgm(live_mcp_ffmpeg),merge_video(aiso_video_merge) - 素材获取:
nami_materials_bg_music-mcp(materials-bg-music) - 内容提取:
zhiyue_doc_extract(mcp-zhiyue),360_crawler(mcp-page-spider)
执行流程
步骤 0: 任务规划与需求分析
在执行任务前,先分析用户的需求,把任务规划和流程全部以文字的方式展示出来,然后再逐个执行任务。
具体分析内容:
- 用户提供了什么类型的输入(文本、URL、音视频、图片、文档)?
- 用户是否上传了人物主体图片?
- 用户是否指定了景点地标数量?
- 用户是否指定了生图比例?
- 用户的整体需求和期望是什么?
步骤 1: 输入内容整理
根据用户输入的不同内容,进行不同的预处理方式。此步骤只执行文字内容透传和文件内容的提取工作,不进行内容修改。
处理逻辑:
-
文字内容:直接使用用户输入文字内容
-
URL:调用网页抓取工具
crawler("url", markdown_out=1) -
音频、视频文件或 URL:调用
zhiyue_doc_extract工具提取文本zhiyue_doc_extract("file_url") -
图片:调用
zhiyue_doc_extract工具从图片中提取全文zhiyue_doc_extract("file_url") -
PDF/DOC/PPT 文件:调用文档解析工具
zhiyue_doc_extract("file_url")
输出:整理后的文字内容
步骤 2: 地标地点选择
根据步骤 1 整理后的信息和用户输入的内容,帮助用户选择需要的旅行地点。
选择规则:
- 默认输出 5 个景点地标,若用户要求景点地标数量,则按照用户要求执行
- 如果用户没有输入任何景点地标信息,或只有笼统的国家或地区信息,可以参考以下景点:
- 中国:安徽宏村、上海外滩、长城、故宫博物院、九寨沟、泰山、黄山、杭州西湖、张家界、纳木错
- 亚洲:东京、富士山、京都、首尔、吴哥窟、泰姬陵、新加坡滨海湾金沙酒店、蒲甘
- 欧洲:埃菲尔铁塔、卢浮宫、凯旋门、罗马斗兽场、雅典卫城、威尼斯、圣彼得大教堂、巴黎迪士尼乐园、荷兰阿姆斯特丹运河区、瑞士阿尔卑斯山、希腊圣托里尼、葡萄牙亚速尔群岛、挪威峡湾、冰岛、法罗群岛
- 美洲:自由女神像、纽约、黄石国家公园、美国大峡谷、冰川国家公园、阿根廷巴塔哥尼亚、巴西千湖沙漠、马丘比丘、伊瓜苏大瀑布、智利阿塔卡马沙漠
- 非洲与中东:金字塔、撒哈拉沙漠、维多利亚瀑布、东非塞伦盖蒂大草原、纳米比亚、马达加斯加、迪拜购物中心、佩特拉
- 大洋洲:大堡礁、波拉波拉岛、塞舌尔、加拉帕戈斯群岛、珊瑚海、马尔代夫
- 重要约束:地点信息最多可以从参考中选择 3 个,其余的必须是你自己想出来的,且不能和参考中的重复
输出:5 个(或用户指定数量)景点地标列表
步骤 3: 生图提示词整理
将步骤 2 得到的全部景点地标,整理成视觉语言作为生图提示词。
提示词结构:
情况 A:用户上传了人物主体图片
提示词需包含 "人物基础信息 + 景点细节描述 + 镜头角度 + 画面氛围" 四大核心模块:
-
人物基础信息:
- 明确人物形象(如 "基于我上传照片中的人物形象")
- 表情状态:默认 "面对镜头自然微笑,展现开心旅游状态",用户有特殊表情要求则按用户需求调整
-
景点细节描述:
- 在使用地标地点名称的基础上需要增加细节内容
- 自然景观:地形、植被、水体
- 人文景观:建筑风格、标志性元素
-
镜头角度:
- 采用丰富多样的镜头角度,每一条提示词的景别、角度都不一样
- 既要能表现地标地点的特点,也能表现人物形象
- 例如:中景自拍角度、全景俯拍、侧面特写等
-
画面氛围:
- 补充光线、天气等细节
- 主要烘托景点的氛围
- 例如:雪山场景可加 "蓝天映衬下的雪山洁白,人物服装色彩与背景形成和谐对比"
示例:
基于我上传照片中的人物形象,人物面对镜头自然微笑,采用中景自拍角度:镜头平视,人物位于画面中央,背景完整呈现长城的青砖城墙、垛口及远处连绵的山峦,晴天自然光,光线明亮,画面体现长城的历史厚重感与户外旅游的活力
情况 B:用户没有上传人物主体图片
需要详细描述景点地标的细节和拍摄镜头景别。
示例:
上海东方明珠塔,上海外滩夜景,霓虹灯,底部为黄浦江,江面反射灯光,全景镜头
约束条件:
- 整理的生图提示词,地标内容要完全不同,地标不能有重复
- 每个提示词都要具象化,避免模糊表述
输出:N 条生图提示词(N = 景点地标数量)
步骤 4: 生成图片
调用 doubao_seedream_single 工具,将整理好的多条生图提示词生成图片。
调用方式:
情况 A:用户上传了人物主体图片
doubao_seedream_single(
prompt="生图提示词",
reference_images="用户上传的人物图片URL",
aspect_ratio="3:4"
)
情况 B:用户没有上传人物主体图片
doubao_seedream_single(
prompt="生图提示词",
aspect_ratio="3:4"
)
参数说明:
prompt: 生图提示词(步骤 3 整理的)reference_images: 用户上传的人物主体图片(可能为多张,可选参数)aspect_ratio: 默认3:4;若用户有输入生图比例,以用户输入的比例为准- 重要:用户输入的生图比例必须在枚举值范围内:
16:9、9:16、1:1、3:4、4:3 - 若用户输入不在枚举范围内,则提示用户不支持此比例,并选择默认比例进行生图
- 重要:用户输入的生图比例必须在枚举值范围内:
执行策略:
- 对每条生图提示词都调用一次工具
- 收集所有生成的图片 URL
输出:N 张生成的图片 URL
步骤 5: 图生视频提示词整理
分析步骤 4 生成的图片中的画面信息和步骤 3 整理好的生图提示词,综合整理成完整的生视频提示词,添加主体运动、镜头运动、效果细节等运动信息。
提示词结构:
-
主体运动(若图片中有人物主体):
- 给人物赋予一个更自然、更具表现力的适合当前画面的运动描述
- 小幅度动作(细节型):轻轻眨眼、微笑、嘴角轻抿、摩挲衣角、整理发丝、呼吸起伏、肩膀轻微颤动
- 中幅度动作(表现型):缓慢走动、回头凝视、抬手比划、身体微微前倾/后仰、轻轻转身、手臂张开/合拢
- 大幅度动作(动态型):奔跑、跳跃、舞蹈、拥抱、挥手、旋转、身体快速转身、跨步上前
-
镜头运动:
- 综合分析画面内容、景别和主体运动,添加更具叙事感和真实感的镜头运动信息
- 推镜头(缓慢/快速推进)、拉镜头(缓慢/快速拉远)
- 环绕镜头(缓慢/快速环绕,可用于人物环绕)、跟镜头(缓慢/快速跟随)
- 升镜头(缓慢/快速上升)、降镜头(缓慢/快速下降)
- 摇镜头(缓慢/快速摇动)、移镜头(缓慢/快速平移)
- 变焦镜头(缓慢/快速变焦)、手持镜头(增加轻微晃动以增强真实感,尤其适用于主观/自拍视角)
- 过肩镜头、俯冲镜头、仰拍推进镜头、横摇扫描镜头、垂直升降镜头、弧形移动镜头、焦点转换镜头、慢动作跟镜头、快速推拉镜头、固定镜头
-
效果与细节运动:
- 综合分析画面内容,添加效果和细节运动,丰富画面运动信息
- 例如:下雨、刮风、火焰、闪光、烟雾、头发飘动、衣服飘动、水花四溅等
输出:N 条图生视频提示词(N = 图片数量)
步骤 6: 图生视频
调用 namiai_gen_video_doubao_pro 工具,将步骤 4 生成的全部图片和步骤 5 整理的图生视频提示词进行图生视频。
调用方式:
namiai_gen_video_doubao_pro(
image_url="步骤4生成的图片URL",
prompt="步骤5整理的图生视频提示词"
)
参数说明:
image_url: 步骤 4 生成的图片 URL(注意不是用户提供的文档 URL)prompt: 步骤 5 整理的图生视频提示词
失败处理策略:
- 如果生成视频中有任务失败了,则需要将失败任务重新生成,直至完成任务
- 重新生成时,输入的提示词必须和失败任务的提示词保持一致,或者轻微调整不符合要求的部分
- 如果连续 2 次生成失败,则调用
live_mcp_img2video工具:live_mcp_img2video(image_url="图片URL", audio_url="")
约束:
- 只进行图生视频,不添加 BGM
输出:N 个视频 URL
步骤 7: 视频剪辑
调用 live_video_cut 工具,将步骤 6 得到的全部视频,按照视频节奏,分别剪辑成不同的时长片段。
调用方式:
live_video_cut(
video_url="视频URL",
start_time=0,
end_time=剪辑时长
)
剪辑规则:
- 输入的视频素材为步骤 6 得到的全部视频链接
- 按照顺序逐个将视频剪辑为不同长度
- 开始时间:固定为 0 秒
- 结束时间:按照顺序分别为 2 秒、3 秒、1 秒、1 秒、2 秒
- 若视频数超过 5 条,则从第五条开始后续固定为 2 秒
示例:
- 第 1 个视频:0-2 秒
- 第 2 个视频:0-3 秒
- 第 3 个视频:0-1 秒
- 第 4 个视频:0-1 秒
- 第 5 个视频:0-2 秒
- 第 6 个及以后:0-2 秒
输出:N 个剪辑后的视频片段 URL
步骤 8: 视频合成与添加 BGM
把步骤 7 剪辑好的全部视频片段拼接为一条长视频,并添加一个合适的 BGM。
子步骤 8.1: 视频拼接
调用 merge_video 工具,将步骤 7 得到的多段视频,按顺序合并为一段连续播放的视频。
调用方式:
merge_video(video_urls=["视频URL1", "视频URL2", "视频URL3", ...])
参数说明:
video_urls: 步骤 7 视频剪辑后得到的所有视频链接(数组格式)
失败处理策略:
- 如果视频拼接任务失败了,则需要检查一下错误信息,排除错误信息之后再次重试拼接任务
- 如果重试连续 3 次都拼接失败,则终止拼接任务
输出:拼接后的视频 URL
子步骤 8.2: 获取 BGM
调用 nami_materials_bg_music-mcp 工具,获取一个和用户需求风格相匹配的背景音乐 BGM 链接。
调用方式:
nami_materials_bg_music_mcp(query="根据用户需求描述的音乐风格")
示例:
- 如果用户需求是"欢快的旅游视频",query 可以是 "欢快 旅游 轻松"
- 如果用户需求是"浪漫的蜜月旅行",query 可以是 "浪漫 温馨 旅行"
输出:BGM 音乐 URL
子步骤 8.3: 视频添加 BGM
调用 live_mcp_add_bgm 工具,给子步骤 8.1 得到的拼接好的视频添加 BGM。
调用方式:
live_mcp_add_bgm(
video_url="拼接后的视频URL",
bgm_url="BGM音乐URL"
)
参数说明:
video_url: 子步骤 8.1 视频拼接后得到的视频链接bgm_url: 子步骤 8.2 获取的背景音乐 BGM 链接
输出:最终带 BGM 的完整旅游打卡视频 URL
最终输出格式
完成所有步骤后,请按照以下格式输出完整的任务结果:
# 全球美景打卡视频生成完成 ✅
## 📋 任务执行摘要
- 用户需求:[总结用户的需求]
- 景点数量:[X] 个
- 是否包含人物:[是/否]
- 生图比例:[X:X]
## 🗺️ 选定的景点地标
1. [景点1名称] - [简短描述]
2. [景点2名称] - [简短描述]
3. ...
## 🎨 生成的图片
1. [景点1] - [图片URL]
2. [景点2] - [图片URL]
3. ...
## 🎬 生成的视频片段
1. [景点1] - [视频URL] - 时长: [X]秒
2. [景点2] - [视频URL] - 时长: [X]秒
3. ...
## 🎵 背景音乐
- BGM 链接:[BGM URL]
- 音乐风格:[描述]
## 🎉 最终成品
**完整旅游打卡视频(带BGM)**:
[最终视频URL]
视频时长:约 [X] 秒
包含景点:[X] 个
---
您可以直接下载使用此视频!如需调整(如更换景点、修改时长、更换BGM等),请告诉我具体需求。
注意事项
- 严格按照步骤顺序执行,确保每个子任务都得到执行
- 子任务失败处理:重试子任务,如果重试连续 3 次都失败,则跳过此任务
- 输出完整性:把每一个任务的结果都要完整输出,供用户查看
- 用户需求优先:优先满足用户的要求,用户输入越详细越专业,你发挥推理、泛化、整理的权重占比越低;反之用户输入的内容越笼统越简短,你越要发挥 AI 能力
- 参数验证:在调用工具前,务必验证参数格式和取值范围(特别是生图比例)
- 错误处理:遇到错误时,先分析错误原因,尝试修正参数或调整策略,再重试
- 资源管理:保存所有中间产物的 URL,便于后续步骤使用和问题排查
常见问题
Q: 如果用户没有明确指定景点怎么办? A: 根据用户的笼统描述(如国家、地区、旅行主题)或对话上下文,从参考景点列表中选择最多 3 个,其余自己推理生成。
Q: 如果生图比例不在支持范围内怎么办? A: 提示用户不支持此比例,并使用默认比例 3:4 进行生图。
Q: 如果视频生成连续失败怎么办?
A: 尝试 2 次 namiai_gen_video_doubao_pro 后,改用 live_mcp_img2video 工具将图片转换为视频。
Q: 如果视频拼接连续失败怎么办? A: 检查错误信息,如果重试 3 次仍失败,终止拼接任务,并向用户说明情况。
Q: 是否支持自定义 BGM? A: 当前版本自动获取匹配风格的 BGM。如用户有自定义需求,可在后续版本中支持。

