不确定这是否属于ollama-python或这里,但我会在这里打开它。你能添加一种在任何模型上使用函数调用的方法吗,还是这是模型本身必须支持的功能?
fzsnzjdm1#
据我所知,它必须由模型支持。此外,由于输出中的不一致性较多,较小的模型通常在函数调用方面比较大的模型更差。
x7yiwoj42#
任何模型都可以用于函数调用,但如果没有针对它进行训练,结果可能会很差。对于那些没有明确支持工具的模型,您可以通过系统消息中的工具和指令传递,参见#5793(评论)。
khbbv19g3#
任何模型都可以用于函数调用,但如果没有针对它进行训练,结果可能会很差。对于那些没有明确支持工具的模型,您可以通过系统消息中的工具和指令传递,参见#5793(评论)。我看到你在这个例子中使用的是llama3。你是使用8B还是40B版本?
wn9m85ua4#
llama3:8b-instruct-q4_0,但这仅仅是因为原始帖子作者试图使用那个模型。结果:
{ "functionName": "get_weather", "parameters": [ { "parameterName": "query", "parameterValue": "Beijing" } ] }
phi3:3.8b-mini-128k-instruct-q4_0的结果,用JSON markdown块 Package 起来,以便客户端进行后处理以获取函数调用:
\```json { "functionName": "get_weather", "parameters": [ { "parameterName": "query", "parameterValue": "Beijing" } ] } \```
gemma2:9b-instruct-q4_K_M也将其 Package 在JSON块中:
\```json { "functionName": "get_weather", "parameters": [ { "parameterName": "query", "name of parameter": "location", "parameterValue": "Beijing" } ] } \```
qwen2:7b-instruct-q4_K_M,它已经针对工具使用进行了训练,尽管当前模板不支持它:
nous-hermes:7b-llama2-q4_0,是ollama库中最古老的模型之一,基于llama2:
{ "functionName": "get_weather", "parameters": [ { "parameterName": "location", "name": "location or city", "parameterValue": "beijing" }, { "required": true } ] }
4条答案
按热度按时间fzsnzjdm1#
据我所知,它必须由模型支持。此外,由于输出中的不一致性较多,较小的模型通常在函数调用方面比较大的模型更差。
x7yiwoj42#
任何模型都可以用于函数调用,但如果没有针对它进行训练,结果可能会很差。对于那些没有明确支持工具的模型,您可以通过系统消息中的工具和指令传递,参见#5793(评论)。
khbbv19g3#
任何模型都可以用于函数调用,但如果没有针对它进行训练,结果可能会很差。对于那些没有明确支持工具的模型,您可以通过系统消息中的工具和指令传递,参见#5793(评论)。
我看到你在这个例子中使用的是llama3。你是使用8B还是40B版本?
wn9m85ua4#
llama3:8b-instruct-q4_0,但这仅仅是因为原始帖子作者试图使用那个模型。结果:
phi3:3.8b-mini-128k-instruct-q4_0的结果,用JSON markdown块 Package 起来,以便客户端进行后处理以获取函数调用:
gemma2:9b-instruct-q4_K_M也将其 Package 在JSON块中:
qwen2:7b-instruct-q4_K_M,它已经针对工具使用进行了训练,尽管当前模板不支持它:
nous-hermes:7b-llama2-q4_0,是ollama库中最古老的模型之一,基于llama2: