ChatGLM3模型的处理长度可以达到8000字符,对于一般文本处理的需求基本可以满足。

但是面对更加大部头的冗长文本时,这个长度显然不够。

面对此需求,ChatGLM3推出了ChatGLM3-6B-32K,在文本处理长度上有了质的飞跃,可以搞定32KB字符。

本节完成的获取与使用示例:

from modelscope import AutoTokenizer,AutoModel,snapshot_download
model_dir=snapshot_download("ZhipuAI/chatglm3-6b-32k",revision = "v1.0.0",cache_dir="../chatglm3_6b-32k")
tokenizer = AutoTokenizer.from_pretrained(model_dir,trust_remote_code=True)
model = AutoModel.from_pretrained(model_dir,trust_remote_code=True).half().cuda()
model = model.eval()
response,history = model.chat(tokenizer,"你好",history=[])
print(response)
response,history = model.chat(tokenizer,"请简要介绍chatglm3-6b-32k",history=history)
print(response)

相比于前次ChatGLM3-6B的调取方法,本次在snapshot_download里增加了cache_dir参数,用于告诉模型本地缓存的相对地址。

运行结果如下:

超长文本处理功能的ChatGLM3_ChatGLM3-6B-32K