使用gemini-pro进行函数调用时出现“工具的构造函数输入无效”错误

0 投票
1 回答
36 浏览
提问于 2025-04-13 03:13

我有一段代码,是用来启用gemini-pro模型的功能调用(这个模型是基于这个例子)。

def getWordCount(sentence:str):
    return len(sentence.split(' '))


model = genai.GenerativeModel(model_name='models/gemini-pro', tools=[getWordCount])

model._tools.to_proto()

但是我遇到了一个错误:

TypeError: Tool的构造函数输入无效: <function getWordCount at 0x7a9baaf95c60>

这个错误在接下来的所有模型中都会出现:

models/gemini-1.0-pro
models/gemini-1.0-pro-001
models/gemini-1.0-pro-latest
models/gemini-1.0-pro-vision-latest
models/gemini-pro
models/gemini-pro-vision

我找不到任何资源来解决这个问题。希望能得到一些帮助。

1 个回答

1

这就是你如何声明一个工具

calculator = glm.Tool(
function_declarations=[
  glm.FunctionDeclaration(
    name='multiply',
    description="Returns the product of two numbers.",
    parameters=glm.Schema(
        type=glm.Type.OBJECT,
        properties={
            'a':glm.Schema(type=glm.Type.NUMBER),
            'b':glm.Schema(type=glm.Type.NUMBER)
        },
        required=['a','b']
    )
  )
])

这不仅仅是一个Python函数

撰写回答