elksmmx 1 неделя назад
Родитель
Сommit
3c8c47ce0a
1 измененных файлов с 10 добавлено и 9 удалено
  1. 10 9
      agent/tools/builtin/nanobanana.py

+ 10 - 9
agent/tools/builtin/nanobanana.py

@@ -1,8 +1,9 @@
 """
-NanoBanana Tool - 通过 OpenRouter 提取图像不变特征
+NanoBanana Tool - 图像特征提取与图像生成
 
-该工具将单张图像发送给多模态模型(可配置为 NanoBanana 对应模型),
-返回结构化的不变特征,并将结果保存为 JSON 文件。
+该工具可以提取图片中的特征,也可以根据描述生成图片。
+支持通过 OpenRouter 调用多模态模型,提取结构化的图像特征并保存为 JSON,
+或基于输入图像生成新的图像。
 """
 
 import base64
@@ -213,7 +214,7 @@ def _normalize_model_id(model_id: str) -> str:
     return m
 
 
-@tool(description="使用 OpenRouter 多模态模型(NanoBanana 兼容)提取图像不变特征")
+@tool(description="可以提取图片中的特征,也可以根据描述生成图片")
 async def nanobanana_extract_features(
     image_path: str = "",
     image_paths: Optional[List[str]] = None,
@@ -225,20 +226,20 @@ async def nanobanana_extract_features(
     image_output_path: Optional[str] = None,
 ) -> ToolResult:
     """
-    提取图像中的不变特征并保存为 JSON
+    可以提取图片中的特征,也可以根据描述生成图片
 
     Args:
         image_path: 输入图片路径(单图模式,可选)
         image_paths: 输入图片路径列表(多图整体模式,可选)
-        output_file: 输出 JSON 文件路径(可选)
-        prompt: 自定义提取指令(可选)
+        output_file: 输出 JSON 文件路径(可选,用于特征提取模式
+        prompt: 自定义提取指令或生成描述(可选)
         model: OpenRouter 模型名(可选,默认读取 NANOBANANA_MODEL 或使用 Gemini 视觉模型)
         max_tokens: 最大输出 token
-        generate_image: 是否生成图片(False=提取JSON,True=生成图片)
+        generate_image: 是否生成图片(False=提取特征,True=生成图片)
         image_output_path: 生成图片保存路径(generate_image=True 时可选)
 
     Returns:
-        ToolResult: 包含结构化特征和输出文件路径
+        ToolResult: 包含结构化特征和输出文件路径,或生成的图片路径
     """
     raw_paths: List[str] = []
     if image_paths: