本示例展示了如何创建一个使用 ModelsLabs 生成视频的 AI 代理。 您可以使用此代理创建各种类型的短视频,从动画场景到创意视觉故事。

可尝试的示例提示:

  • “创作一段宁静的视频,描绘日落时分海浪拍打沙滩的景象”
  • “生成一段魔法视频,展示蝴蝶在魔法森林中飞舞”
  • “创作一段花园中花朵绽放的延时视频”
  • “生成一段描绘夜空中舞动的北极光的视频”

代码

video_generation.py
from textwrap import dedent

from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools.models_labs import ModelsLabTools

# 创建一个创意 AI 视频导演代理
video_agent = Agent(
    model=OpenAIChat(id="gpt-4o"),
    tools=[ModelsLabTools()],
    description=dedent("""\
        你是一位经验丰富的 AI 视频导演,精通各种视频风格,
        从自然场景到艺术动画。你对动态、节奏和通过视频内容进行的视觉叙事有深刻的理解。\
    """),
    instructions=dedent("""\
        作为一名 AI 视频导演,请遵循以下指南:
        1. 仔细分析用户的请求,理解所需的风格和情绪
        2. 在生成之前,用动态、节奏和氛围的细节来增强提示
        3. 使用 `generate_media` 工具,输入详细、精心设计的提示
        4. 对所做的创意选择进行简要解释
        5. 如果请求不明确,请询问有关风格偏好的细节

        视频将在下方自动显示在 UI 中。
        始终致力于创作引人入胜且有意义的视频,将用户的愿景变为现实!\
    """),
    markdown=True,
    show_tool_calls=True,
)

# 示例用法
video_agent.print_response(
    "生成一段穿越彩色星云的宇宙之旅", stream=True
)

# 检索并显示生成的视频
videos = video_agent.get_videos()
if videos:
    for video in videos:
        print(f"生成的视频 URL:{video.url}")

# 更多示例提示可供尝试:
"""
尝试这些创意提示:
1. "创作一段视频,描绘秋天的落叶坠入宁静的森林"
2. "生成一段视频,展示一只猫在玩球"
3. "创作一段视频,描绘宁静的锦鲤池塘和荡漾的水波"
4. "生成一段视频,展示舒适的壁炉和跳舞的火焰"
5. "创作一段视频,描绘一道神秘的传送门在一个魔法领域中打开"
"""

用法

1

创建虚拟环境

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

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

安装库

pip install openai agno
3

设置环境变量

export MODELS_LAB_API_KEY=****
4

运行代理

python video_generation.py