请问modelscope中通过哪个参数可以调整chatglm2-6b的temperature?

问题1:请问modelscope中通过哪个参数可以调整chatglm2-6b的temperature?
问题2:默认好像只能支持2轮对话?如果超过2的话,这时候返回的history就只有当前的记录了,进行第三轮的时候返回的history列表长度变成1了,正常该是3。

展开
收起
十一0204 2023-07-12 08:08:35 843 分享 版权
3 条回答
写回答
取消 提交回答
  • 问题1:在 Modelscope 中,调整 ChatGPT 的 temperature 参数可以通过设置 decode_params 参数中的 "temperature" 字段来实现。您可以将要使用的温度值分配给该字段,以控制生成文本的多样性。

    下面是一个示例代码片段,展示了如何在 Modelscope 中调整 ChatGPT(chatglm2-6b)的 temperature:

    from modelstore.models import ChatGPT
    
    chatgpt_model = ChatGPT.load("openai/chatgpt-lg")
    params = {
        "decode_params": {
            "temperature": 0.8  # 设置温度值
        }
    }
    output = chatgpt_model.generate("<input_text>", **params)
    print(output["choices"][0]["message"]["content"])
    

    您可以根据需要自行调整温度值,范围通常在 0.1 到 1 之间。较低的温度值会使生成的文本更加确定和一致,而较高的温度值则会增加随机性和多样性。

    问题2:Modelscope 平台上的 ChatGPT 默认支持多轮对话。根据您提供的信息,如果在进行第三轮对话时返回的 history 列表长度变为 1,可能有以下几种可能原因:

    • 您在第三轮对话时未正确处理并传递之前的历史记录。确保在每次对话中始终将完整的历史记录传递给模型。
    • 某些格式或数据处理问题可能导致在第三轮对话时无法正确获取历史记录。请仔细检查您的代码,并确保正确处理和传递历史记录。
    • 可能存在某些 Modelscope 特定的问题。如果以上步骤都没有解决问题,请尝试联系 Modelscope 的支持团队,向他们报告问题并寻求帮助。

    确保正确处理历史记录,并将其传递给模型,以确保多轮对话的正常运行。如果问题仍然存在,我建议您详细检查代码实现并与相关的支持团队交流,以获取更准确的帮助和指导。

    2023-07-24 15:08:55
    赞同 展开评论
  • 北京阿里云ACE会长

    在 ModelScope 平台中,可以通过设置生成文本时的 temperature 参数来控制模型生成文本的多样性和创造力。temperature 是一个在 [0, +∞) 范围内的实数值,用于控制 softmax 分布的温度,从而影响生成文本的随机性和多样性。

    对于 chatglm2-6b 模型,您可以通过设置 temperature 参数来控制生成文本的多样性。具体来说,可以在模型的配置文件中添加以下参数来设置 temperature 值:

    Copy
    "generation": {
    "temperature": 0.8
    }
    在上述配置中,temperature 的值为 0.8,您可以根据需要进行相应的调整。请注意,较高的 temperature 值可能会导致生成的文本更加随机和多样,但也可能会导致质量降低和不稳定性增加,因此需要谨慎选择。

    2023-07-18 09:11:52
    赞同 展开评论
  • 意中人就是我呀!

    回答1:model.chat有temperature参数。
    回答2:pipeline的话,我看了下目前v2的pipeline有一个bug,今天已经修复了,您可以使用https://github.com/modelscope/modelscope master的最新代码规避这个问题。此回答整理自钉群“魔搭ModelScope开发者联盟群 ①”

    2023-07-12 10:00:59
    赞同 展开评论

包含图像分类、图像生成、人体人脸识别、动作识别、目标分割、视频生成、卡通画、视觉评价、三维视觉等多个领域

热门讨论

热门文章

还有其他疑问?
咨询AI助理