Ollama 发布了 0.40.14,修正了通过 OpenAI 兼容方式使用模型的应用的默认生成配置和对话输入处理。不单独发送配置时,将使用模型内置值;重新发送先前回答的应用,其输入会保留可读形式,包括拒绝内容。
1. OpenAI 兼容路径遵循模型配置
根据 11月3日发布的发行说明,OpenAI 兼容端点,即接收并处理请求的接口,现在不再覆盖模型内置的采样器默认值。采样器配置用于调节生成回答时,选择下一个表达的多样程度。
如果请求中不发送 temperature 和 top_p,将使用模型自身的值,而不是此前采用的 1.0。这修正了模型内置生成配置在经过兼容接口时被替换为其他值的问题。
发行说明指出,这一行为与 Ollama 的 /api/chat 一致。对于通过两条路径使用同一模型的开发者,这意味着省略参数时采用的默认依据得到了统一。
2. 从模型文件中查看未指定参数的取值
模型文件可以包含运行时使用的参数,也就是决定运行行为的配置值。官方文档给出的查看命令如下。
ollama show --modelfile llama3.2官方文档说明,提高 temperature 会让回答更具创造性。因此,省略的参数值由何处决定,不只是配置整理问题,还关系到回答的生成倾向。
应用更新时,可以先查看所用模型的配置,再确认客户端,即向服务器发送请求的应用,是否在请求中设置了相同参数。本次变化直接影响不发送参数值的调用,因此分开检查已指定和未指定参数的情况,更容易缩小问题范围。
希望保持特定生成配置的客户端,可以直接在请求中指定所需值。是在模型文件中管理默认值,还是在单次请求中设定参数,应根据应用是否要遵循模型的默认倾向来选择。
3. Responses 保留输入内容的可读形式
发行说明表示,/v1/responses 会保留可读的输入内容。此前助手消息中的拒绝内容也在保留范围内,原先统一展平输入进行处理的行为因此改变。
对于多轮对话应用,先前的回答也是下一次请求的材料。此次变化着重于再次发送这些材料时,让拒绝内容也以可读形式保留下来。如果说采样器修正涉及生成配置,那么这项修正涉及的就是传递的对话内容。
根据官方文档,Responses 不支持由服务器延续先前请求状态的方式。需要继续对话的应用,必须将所需历史记录放入请求输入中发送。
4. 默认行为变化的收益与检查成本
对开发者而言,收益在于减少了针对不同路径单独匹配模型采样器配置的负担。但原先未指定参数值的调用,在改用各模型默认值后,生成结果可能发生变化,更新成本也随之转向重新校准现有测试的基准。
比较结果时,除了保持模型和输入一致,最好同时确认请求是否指定了采样器参数。对话应用也可以检查重新发送含拒绝内容的先前回答这一流程。将两项修正的影响分为生成配置和对话输入,更容易定位更新后发生变化的行为。
本版本的关键在于,让兼容路径遵循模型的采样器配置,并让 Responses 对话输入保留有意义的形式。
