GeminiTools 是一组工具,允许 Agent 与 Google AI API 服务进行交互以生成图像和视频。

前提条件

在使用 GeminiTools 之前,请确保已安装 google-genai 库并已配置凭据。

  1. 安装库:

    pip install google-genai agno
    
  2. 设置凭据:

    • 对于 Gemini API:
      export GOOGLE_API_KEY="your-google-genai-api-key"
      
    • 对于 Vertex AI:
      export GOOGLE_CLOUD_PROJECT="your-google-cloud-project-id"
      export GOOGLE_CLOUD_LOCATION="your-google-cloud-location"
      export GOOGLE_GENAI_USE_VERTEXAI=true
      

初始化

导入 GeminiTools 并将其添加到 Agent 的工具列表中。

from agno.agent import Agent
from agno.tools.models.gemini import GeminiTools

agent = Agent(
    tools=[GeminiTools()],
    show_tool_calls=True,
)

使用示例

GeminiTools 可用于多种任务。以下是一些示例:

图像生成

image_generation_agent.py
from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools.models.gemini import GeminiTools
from agno.utils.media import save_base64_data

agent = Agent(
    model=OpenAIChat(id="gpt-4o"),
    tools=[GeminiTools()],
    show_tool_calls=True,
)

agent.print_response(
    "Create an artistic portrait of a cyberpunk samurai in a rainy city",
)
response = agent.run_response
if response.images:
    save_base64_data(response.images[0].content, "tmp/cyberpunk_samurai.png")

视频生成

视频生成需要 Vertex AI。

video_generation_agent.py
from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools.models.gemini import GeminiTools
from agno.utils.media import save_base64_data

agent = Agent(
    model=OpenAIChat(id="gpt-4o"),
    tools=[GeminiTools(vertexai=True)],
    show_tool_calls=True,
    debug_mode=True,
)

agent.print_response(
    "Generate a 5-second video of a kitten playing a piano",
)
response = agent.run_response
if response.videos:
    for video in response.videos:
        save_base64_data(video.content, f"tmp/kitten_piano_{video.id}.mp4")

工具包函数

FunctionDescription
generate_image根据文本提示生成图像
generate_video根据文本提示生成视频

开发者资源