QwenLM / Qwen-Agent

Agent framework and applications built upon Qwen>=2.0, featuring Function Calling, Code Interpreter, RAG, and Chrome extension.
https://pypi.org/project/qwen-agent/
Other
3.49k stars 351 forks source link

from qwen_agent.llm import get_chat_model 能否配置不要返回多余数据 #250

Open 812781385 opened 4 months ago

812781385 commented 4 months ago

from qwen_agent.llm import get_chat_model llm_client = get_chat_model({ 'model': model, 'model_server': ollama_url, 'generate_cfg': { 'top_p': 0.8 } })

有没有参数配置让不要每次都返回多余的文字,比如, [{'role': 'assistant', 'content': '你好!'}] [{'role': 'assistant', 'content': '很高兴'}] [{'role': 'assistant', 'content': '为你'}] [{'role': 'assistant', 'content': '提供'}] ....

目前的调用总是会返回多余的文字如下: [{'role': 'assistant', 'content': '你好!'}] [{'role': 'assistant', 'content': '你好!很高兴'}] [{'role': 'assistant', 'content': '你好!很高兴为你'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息查询'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息查询还是'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息查询还是其他'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息查询还是其他问题'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息查询还是其他问题,'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息查询还是其他问题,都可以'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息查询还是其他问题,都可以随时'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息查询还是其他问题,都可以随时告诉我'}] [{'role': 'assistant', 'content': '你好!很高兴为你提供帮助。有什么可以帮到你的呢?无论是写作上的创意、信息查询还是其他问题,都可以随时告诉我。'}]

JianxinMa commented 4 months ago

配置 llm.chat(..., delta_stream=True) 可以实现这个需求,但是这会导致function call、retry等功能不可用(背后的策略比较复杂)。

riverind commented 3 months ago

配置 llm.chat(..., delta_stream=True) 可以实现这个需求,但是这会导致function call、retry等功能不可用(背后的策略比较复杂)。

即使设置,delta_stream=True,依然无效,会报错,“NotImplementedError” 看源码,最终定位到,

截屏2024-07-23 16 52 02
junqi-lu commented 2 weeks ago

同样, 也没法实现增量流式传输... @riverind 请问有相关进展吗?