Git Product home page Git Product logo

Comments (19)

zzhangpurdue avatar zzhangpurdue commented on June 12, 2024 2

感谢,你的反馈,关于例子我们有版本更新,你看的是中文版本的readme中确实没有更新,请先参考英文文档,我立刻更新。
另外,调用小模型的例子目前采用的是vllm的方案,用户可以本地部署vllm模型拉起,具体参考:https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md
可以参考本地部署的文档,将模型部署成服务的方式。

同时,我们也会持续增加使用case。

from modelscope-agent.

zzhangpurdue avatar zzhangpurdue commented on June 12, 2024 2

通过history传递上一轮的输出,作为输入。可以参考agentfabric项目中的这里53-64行的代码,这里是创建了一个memory。
同时在这里573-606行 利用memory的history。
这两个地方一个是初始化memory,一个是利用memory的history做多轮。

我们会尽快再补一个简单的demo给到你。

from modelscope-agent.

zzhangpurdue avatar zzhangpurdue commented on June 12, 2024 1

感谢,你的反馈,关于例子我们有版本更新,你看的是中文版本的readme中确实没有更新,请先参考英文文档,我立刻更新。 另外,调用小模型的例子目前采用的是vllm的方案,用户可以本地部署vllm模型拉起,具体参考:https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md 可以参考本地部署的文档,将模型部署成服务的方式。
同时,我们也会持续增加使用case。

感谢你的回复。我这里的需求应该没有这么复杂,也不需要gradio的UI,只是想使用modelscope上已有的模型,比如Qwen-7B之类的,通过直接下载的方式将模型下载到本地(这个是可以完成的),然后跑一个简单的比如天气查询或者图像生成之类的任务。现在看起来modelscope上的模型因为没有实现_chat_stream方法而没有办法运行。

主要是之前modelscope上的模型没有stream的返回,所以我们没支持,如果你有需求的话,我们可以快速看一下。怎么加起来。

from modelscope-agent.

Firmament-cyou avatar Firmament-cyou commented on June 12, 2024 1

感谢,你的反馈,关于例子我们有版本更新,你看的是中文版本的readme中确实没有更新,请先参考英文文档,我立刻更新。 另外,调用小模型的例子目前采用的是vllm的方案,用户可以本地部署vllm模型拉起,具体参考:https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md 可以参考本地部署的文档,将模型部署成服务的方式。
同时,我们也会持续增加使用case。

感谢你的回复。我这里的需求应该没有这么复杂,也不需要gradio的UI,只是想使用modelscope上已有的模型,比如Qwen-7B之类的,通过直接下载的方式将模型下载到本地(这个是可以完成的),然后跑一个简单的比如天气查询或者图像生成之类的任务。现在看起来modelscope上的模型因为没有实现_chat_stream方法而没有办法运行。

您好,modelscope 为接入了 llm_pipeline 的模型提供了统一的流式输出方案,以下是一个调用示例:

from modelscope import pipeline

input_messages = {
    'messages': [{
        'role': 'system',
        'content': '你是一个生活助手机器人。'
    }, {
        'role': 'user',
        'content': '你是谁?介绍一下你自己'
    }]
}

pipe = pipeline(task='chat', model='qwen/Qwen1.5-1.8B-Chat', llm_first=True) # llm_first 参数优先 llm_pipeline 构造
for stream_output in pipe.stream_generate(input_messages, do_sample=True, max_length=512):
    print(stream_output)

from modelscope-agent.

XduSyL avatar XduSyL commented on June 12, 2024

感谢,你的反馈,关于例子我们有版本更新,你看的是中文版本的readme中确实没有更新,请先参考英文文档,我立刻更新。 另外,调用小模型的例子目前采用的是vllm的方案,用户可以本地部署vllm模型拉起,具体参考:https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md 可以参考本地部署的文档,将模型部署成服务的方式。

同时,我们也会持续增加使用case。

那这样的话是不是会麻烦很多,请问以后是否还会采用像LLMfactory这样的类来管理呢?

from modelscope-agent.

zzhangpurdue avatar zzhangpurdue commented on June 12, 2024

readme已经更新,另外LLMfactory的类,我们目前没有维护不过有一个LLM_REGISTRY,模型注册中心,方便后续新增模型。
目前agent能力较好的模型还不是很多,后续躲起来的话,用这个方法也可以快速注册起来。

from modelscope-agent.

douyh avatar douyh commented on June 12, 2024

感谢,你的反馈,关于例子我们有版本更新,你看的是中文版本的readme中确实没有更新,请先参考英文文档,我立刻更新。 另外,调用小模型的例子目前采用的是vllm的方案,用户可以本地部署vllm模型拉起,具体参考:https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md 可以参考本地部署的文档,将模型部署成服务的方式。

同时,我们也会持续增加使用case。

感谢你的回复。我这里的需求应该没有这么复杂,也不需要gradio的UI,只是想使用modelscope上已有的模型,比如Qwen-7B之类的,通过直接下载的方式将模型下载到本地(这个是可以完成的),然后跑一个简单的比如天气查询或者图像生成之类的任务。现在看起来modelscope上的模型因为没有实现_chat_stream方法而没有办法运行。

from modelscope-agent.

douyh avatar douyh commented on June 12, 2024

感谢,你的反馈,关于例子我们有版本更新,你看的是中文版本的readme中确实没有更新,请先参考英文文档,我立刻更新。 另外,调用小模型的例子目前采用的是vllm的方案,用户可以本地部署vllm模型拉起,具体参考:https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md 可以参考本地部署的文档,将模型部署成服务的方式。

同时,我们也会持续增加使用case。

image

根据参考文档中的内容,部署了Qwen1.5-7B-chat. 发现qwen_vllm分支还有一个这样的bug。OBSERVATION_TOKEN后面有一个多余的冒号,导致k=-1,然后在已经有Observation的情况下会继续加上一个Observation:

image

image

from modelscope-agent.

zzhangpurdue avatar zzhangpurdue commented on June 12, 2024

感谢,你的反馈,关于例子我们有版本更新,你看的是中文版本的readme中确实没有更新,请先参考英文文档,我立刻更新。 另外,调用小模型的例子目前采用的是vllm的方案,用户可以本地部署vllm模型拉起,具体参考:https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md 可以参考本地部署的文档,将模型部署成服务的方式。
同时,我们也会持续增加使用case。

image

根据参考文档中的内容,部署了Qwen1.5-7B-chat. 发现qwen_vllm分支还有一个这样的bug。OBSERVATION_TOKEN后面有一个多余的冒号,导致k=-1,然后在已经有Observation的情况下会继续加上一个Observation:

image

image

收到,感谢反馈,我们这边跟进一下。

from modelscope-agent.

douyh avatar douyh commented on June 12, 2024

感谢,你的反馈,关于例子我们有版本更新,你看的是中文版本的readme中确实没有更新,请先参考英文文档,我立刻更新。 另外,调用小模型的例子目前采用的是vllm的方案,用户可以本地部署vllm模型拉起,具体参考:https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md 可以参考本地部署的文档,将模型部署成服务的方式。
同时,我们也会持续增加使用case。

image
根据参考文档中的内容,部署了Qwen1.5-7B-chat. 发现qwen_vllm分支还有一个这样的bug。OBSERVATION_TOKEN后面有一个多余的冒号,导致k=-1,然后在已经有Observation的情况下会继续加上一个Observation:
image
image

收到,感谢反馈,我们这边跟进一下。

关于这个bug,我尝试手动加上一个冒号,可以解决这个问题,完成一个工具的调用。但是如果我需要连续调用2个工具。比如我先尝试使用一个API获取某张车辆图片的型号(或者某个城市的天气),然后再将其转换为语音。我使用Qwen1.5-7B-chat或者gpt-3.5-turbo 都可以完成第一个工具调用。

第一轮的planning_prompt为空,并且调用了车型识别(或者天气查询)工具,得到了正确的结果;
第二轮的planning_prompt是类似如下的内容:

'好的,我将使用`vehicle_type`工具来识别图片中的车辆品牌,然后使用`speech-generation`工具将结果转换为语音。\nAction: vehicle_type\nAction Input: {"img_path": "vehicle.jpg"}\n\nObservation: <result>The vehicle type is 宝马3系 produced in 2023, and the vehicle color is 蓝色</result>\nAnswer:'

可以看到agent已经成功判断出了工具调用的顺序,但是第二轮调用的工具却不会更新,会一直重复调用第一个工具。
image

from modelscope-agent.

douyh avatar douyh commented on June 12, 2024

感谢,你的反馈,关于例子我们有版本更新,你看的是中文版本的readme中确实没有更新,请先参考英文文档,我立刻更新。 另外,调用小模型的例子目前采用的是vllm的方案,用户可以本地部署vllm模型拉起,具体参考:https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md 可以参考本地部署的文档,将模型部署成服务的方式。
同时,我们也会持续增加使用case。

感谢你的回复。我这里的需求应该没有这么复杂,也不需要gradio的UI,只是想使用modelscope上已有的模型,比如Qwen-7B之类的,通过直接下载的方式将模型下载到本地(这个是可以完成的),然后跑一个简单的比如天气查询或者图像生成之类的任务。现在看起来modelscope上的模型因为没有实现_chat_stream方法而没有办法运行。

您好,modelscope 为接入了 llm_pipeline 的模型提供了统一的流式输出方案,以下是一个调用示例:

from modelscope import pipeline

input_messages = {
    'messages': [{
        'role': 'system',
        'content': '你是一个生活助手机器人。'
    }, {
        'role': 'user',
        'content': '你是谁?介绍一下你自己'
    }]
}

pipe = pipeline(task='chat', model='qwen/Qwen1.5-1.8B-Chat', llm_first=True) # llm_first 参数优先 llm_pipeline 构造
for stream_output in pipe.stream_generate(input_messages, do_sample=True, max_length=512):
    print(stream_output)

请问是需要按照这个内容新增到_chat_stream的实现中吗?我先试试看。根据之前的文档提示,我现在使用的都是openai那套,但是会出现一些问题(比如楼上一个回复)

from modelscope-agent.

XduSyL avatar XduSyL commented on June 12, 2024

请问一下在demo/demo_qwen_agent.ipynb的demo中,如果我要与大模型进行多轮会话的话要怎么操作呀,因为,我看RolePlay这个类实例化之后,每次执行run函数都会将self.query_prefix置为空。

from modelscope-agent.

douyh avatar douyh commented on June 12, 2024

通过history传递上一轮的输出,作为输入。可以参考agentfabric项目中的这里53-64行的代码,这里是创建了一个memory。 同时在这里573-606行 利用memory的history。 这两个地方一个是初始化memory,一个是利用memory的history做多轮。

我们会尽快再补一个简单的demo给到你。

我现在是简单地把role_play中的message yield出来,然后再次传入到下一轮中,比较粗暴,但是有效。
image

image

from modelscope-agent.

douyh avatar douyh commented on June 12, 2024

通过history传递上一轮的输出,作为输入。可以参考agentfabric项目中的这里53-64行的代码,这里是创建了一个memory。 同时在这里573-606行 利用memory的history。 这两个地方一个是初始化memory,一个是利用memory的history做多轮。

我们会尽快再补一个简单的demo给到你。

这个我学习一下

from modelscope-agent.

zzhangpurdue avatar zzhangpurdue commented on June 12, 2024

通过history传递上一轮的输出,作为输入。可以参考agentfabric项目中的这里53-64行的代码,这里是创建了一个memory。 同时在这里573-606行 利用memory的history。 这两个地方一个是初始化memory,一个是利用memory的history做多轮。
我们会尽快再补一个简单的demo给到你。

这个我学习一下

可以这么来,我们尽快也完善示例,如果你们有需求尽管通过pr提出来,会尽力支持。

from modelscope-agent.

XduSyL avatar XduSyL commented on June 12, 2024

通过history传递上一轮的输出,作为输入。可以参考agentfabric项目中的这里53-64行的代码,这里是创建了一个memory。 同时在这里573-606行 利用memory的history。 这两个地方一个是初始化memory,一个是利用memory的history做多轮。
我们会尽快再补一个简单的demo给到你。

这个我学习一下

可以这么来,我们尽快也完善示例,如果你们有需求尽管通过pr提出来,会尽力支持。

可以的,非常感谢

from modelscope-agent.

zzhangpurdue avatar zzhangpurdue commented on June 12, 2024

已经加了demo可以先看,如果有问题,可以重新开issue,或者reopen本轮。

from modelscope-agent.

GitEasonXu avatar GitEasonXu commented on June 12, 2024

https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md
origin/feat/qwen_vllm分支已经不存在了,开源项目维护的也太差了..

from modelscope-agent.

wenmengzhou avatar wenmengzhou commented on June 12, 2024

https://github.com/modelscope/modelscope-agent/blob/master/docs/local_deploy.md origin/feat/qwen_vllm分支已经不存在了,开源项目维护的也太差了..

#374 has fixed this

from modelscope-agent.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.