通义千问-大模型,多轮对话原理与实现

与大模型的单次对话相比,多轮对话过程中,维护了上下文信息(也可以说是保存了每次的提问与返回的答案信息),这样每次问大模型新的问题时候,实际上是携带者历史的所有聊天内容进行提问,大模型于是就知道了新问题的上下文。

1、导入大模型包

from http import HTTPStatus
//pip install dashscope
from dashscope import Generation

2、创建保存上下文信息的变量,此处是列表

messages = [{'role': 'system', 'content': 'You are a helpful assistant.'},
            {'role': 'user', 'content': '如何做西红柿炖牛腩?'}]

3、向大模型提问

response = Generation.call(model="qwen-turbo",messages=messages,result_format='message')

4、将大模型的回复,追加到上下文变量中,即 列表中

messages.append({'role': response.output.choices[0]['message']['role'],
                     'content': response.output.choices[0]['message']['content']})

此时列表中内容大概如下:

[{'role': 'system', 'content': 'You are a helpful assistant.'},
 {'role': 'user', 'content': '如何做西红柿炖牛腩?'},
 {'role': 'assistant',
  'content': '材料:\n牛腩500克,西红柿3个,大葱1根,生姜2片,省略。。。。。'}]

5、第二轮提问,先把新的问题,追加到上下午中

messages.append({'role': 'user', 'content': '不放糖可以吗?'})

6、发起提问

此时的提问,包含了之前上下文,所以,大模型能够理解“不放糖可以吗?”这一句新问题

response2 = Generation.call(model="qwen-turbo",messages=messages,result_format='message')

7、响应结果如下:

当然可以。如果你不喜欢或不想添加糖,那么在烹饪过程中就无需加冰糖了。糖主要是为了中和牛肉的腥味,,,,

如果某次提问,大模型没有响应,返回了错误码,

应该把这次提问的问题从上下文列表中删除,即列表中最后一个记录。

messages = messages[:-1]
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
通义千问-7b是一个基于自然语言处理技术的对话系统,为了提高用户的私密性和数据安全性,可以选择进行本地部署。 本地部署指的是将通义千问-7b的服务器部署在本地的服务器或者个人电脑上,通过对话请求与用户进行交互,而不是通过连接到远程服务器。 本地部署的优点是: 1. 数据安全性更高:用户的对话数据不会发送到外部服务器,所有数据都被保存在本地,减少了被黑客攻击和隐私泄露的风险。 2. 传输速度更快:与远程服务器相比,本地部署可以大大减少请求与响应的时间延迟,提高了系统的响应速度和交互的实时性。 3. 高度可定制性:本地部署可以根据实际需要进行自定义和扩展,可以根据自己的需求进行功能增加和流程优化。 然而,本地部署也存在一些挑战和限制: 1. 需要专业知识和技术支持:搭建和维护一个本地服务器需要一定的技术能力和知识储备,对于非技术人员来说可能会有一定的困难。 2. 成本较高:相比于使用云服务,本地部署需要购买硬件设备、配置网络环境以及负责维护和更新等工作,需要投入较多的资源和精力。 3. 依赖于本地环境:本地部署可能需要保证稳定的网络连接、高性能的硬件设备和充足的存储空间,否则可能会影响系统性能和用户体验。 综上所述,通义千问-7b的本地部署为用户提供了更高的数据安全性和更快的传输速度,同时也需要考虑到技术和资源上的一些挑战和限制。用户可以根据自己的需求和实际情况来选择适合自己的部署方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值