我在进行 AI 相关的开发中,最常用的模型是通义千问。本地开发的时候,使用 Ollama 来运行 qwen 模型。集成测试和线上环境,使用阿里云模型服务灵积上的通义千问模型。使用阿里云的好处是:模型服务的获取方便,稳定性好,可以及时获取到服务支持。
现在通义千问出了新的版本,qwen2。qwen2 有 4 种参数尺寸:0.5b、1.5b、7b 和 72b。qwen2 的 0.5b 和 1.5b 的上下文窗口尺寸是 32k,而 7b 和 72b 的窗口尺寸则是 128k。
在评测中,qwen2 72b 参数模型的性能,优于 Llama 3 的 70b 参数版本。
在模型体积方面,qwen2 的 0.5b、1.5b、7b 和 72b 的模型大小分别是 352M、935M、4.4G 和 41G。
与之对应的,qwen 1.5 的参数选择更多一些,有0.5b、1.8b、4b、7b、32b、72b、和110b。
在日常的开发中,我打算用 qwen2 的 1.5b 替换掉 qwen 的 0.5b,虽然耗费的资源多了一些,但是模型的参数变多了,结果会更准确一些。
qwen2 的另外一个优势是,上下文窗口变大了。在开发检索增强生成应用时,较大的上下文窗口尺寸是一个很大的优势,意味着可以把更多的上下文信息添加到大模型的输入中。
在 Spring AI 的应用开发中, 使用通义千问2很简单。以使用 Ollama 进行本地开发为例,首先使用 ollama pull qwen2:1.5b 来拉取 qwen2 模型到本地。再修改 Spring AI 应用的配置文件,把配置项 spring.ai.ollama.chat.options.model 的值改成 qwen2:1.5b 即可。