ModelScope中,histroy是服务端自己存起来还是web传过来的呢?

ModelScope中,histroy是服务端自己存起来还是web传过来的呢?

展开
收起
小小爱吃香菜 2024-04-02 17:25:18 66 分享 版权
阿里云 AI 助理回答

在ModelScope中,history 是由 客户端(Web端)传入 的,而不是服务端自行存储的。具体来说,history 是一个二维列表,用于记录对话历史,其中每个元素是一个长度为2的列表,表示每一轮对话的问题和回答。

详细说明

  1. history 的作用
    history 字段的主要功能是支持连续对话。通过将之前的对话历史传递给模型,模型可以根据上下文生成更连贯的回答。例如:

    {
     "prompt": "江苏呢?",
     "history": [["浙江的省会是哪里?", "杭州"]]
    }
    

    在这个例子中,history 包含了之前的一轮对话(问题:“浙江的省会是哪里?”;回答:“杭州”),从而帮助模型理解当前问题“江苏呢?”的上下文。

  2. 客户端构造 history
    客户端需要根据用户的交互动态维护 history 列表,并在每次调用 API 时将其作为请求的一部分发送给服务端。服务端不会自动存储或管理 history,而是完全依赖客户端传递的历史数据来生成响应。

  3. 服务端的行为
    服务端接收到包含 history 的请求后,会基于 history 和当前的 prompt 生成新的回答,并返回更新后的 history。例如:

    {
     "response": "南京",
     "history": [["浙江的省会是哪里?", "杭州"], ["江苏呢?", "南京"]]
    }
    

    客户端可以使用返回的 history 更新本地记录,以便在下一轮对话中继续传递。

  4. 重要提醒

    • 客户端需负责管理对话历史:由于服务端不存储 history,客户端需要确保正确维护和传递对话历史,否则可能导致上下文丢失。
    • 限制上下文长度:如果对话历史过长,可能会增加请求的数据量和处理时间。客户端可以通过截取 history 的长度来限制上下文轮数,从而优化性能。

综上所述,history 是由客户端构造并传递给服务端的,服务端仅基于传入的 history 生成响应并返回更新后的对话历史。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!欢迎加入技术交流群:微信公众号:魔搭ModelScope社区,钉钉群号:44837352

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