Baichuan2大模型,messages里传递了历史对话记录,但是回答跟历史记录不连贯,没有上下文的效果,问题解决!!!

**选用大模型:Baichuan2-13B-Chat

问题解决:
max_new_tokens设置的过大
跟踪过源码以后发现,用户输入的Token最大长度(max_input_tokens ),等于max_length - max_new_tokens,也就是说max_new_tokens越小越好。

方案解析
因为baichuan2大模型的max_length最大是4096,如果你的max_new_tokens设置了4000,那么无论你传了多少历史对话记录,他都不能超过96个Token长度,这也就导致没有了上下文效果。

拓展:

	作者还测试了chatglm3-6b-32k大模型,发现,在用户输入Token的最大长度上,刚好与百川相反,GLM
模型的max_length等于max_new_tokens+输入的tokens长度,所以max_new_tokens设置越大越好。
因为他之后会判断用户输入的tokens长度是否小于max_length,输入的tokens长度小于max_length时,就可以容纳更多的上下文

你可能感兴趣的:(python,baichuan2,AI大模型)