monkeywl2020
monkeywl2020
测试中发现,在携带function call的tools信息的时候,llm会根据用户的提示词决定是否调用function call。 在流式输出的情况下有个问题,就是有时候 Qwen2 llm会返回 2条消息,第一条是普通用户的答复,类似claude哪有的思考内容。第二条才是 function call的内容。 流式响应的时候,如果携带了function call的内容的话,在流式输出的情况下,除了内容全部输出完整后才能判断是否有 function call。这样会导致无法判断当前消息是普通用户消息还是携带了function call的消息。claude如果有function call的思维过程的时候会在返回的消息中携带stop_reason 里面的结果是 tool_use,根据这个内容可以判断当前是否会调用function call。 一般情况下,给用户的消息流式可以流式输出给用户。function call的消息不用给用户,收完再执行function 调用后再根据情况输出。 请考虑下这个问题怎么解决?
``` { "messages": [ { "role": "system", "name": "system", "content": "You are a helpful AI Assistant." }, { "role": "user", "name": "user", "content": "当前武汉天气怎么样,北京的呢?深圳?" } ], "stream": false, "extra_generate_cfg": {...