当前的上下文窗口大小主要由人工设定——可以通过API中的 {"options": {"num_ctx": 32768}} 进行指定,或者在Modelfile中通过 PARAMETER num_ctx 32768 进行指定。否则,默认值将设置为 2048 ,除非另有指定(库中的一些模型将默认使用较大的上下文窗口大小)。上下文大小应在运行时根据可用内存量动态确定。
{"options": {"num_ctx": 32768}}
PARAMETER num_ctx 32768
2048
htzpubme1#
有没有无限制运行的方法?我知道这可能是个坏主意,但我需要在一个提示符上无限制地运行。这是一个科学项目,所以我需要100%确保没有隐藏的截断。
这将通过混合实现。我可能会导致电脑崩溃或将内存Map到磁盘空间,但只是为了几次运行,所以我可以在集群上运行。
3b6akqbq2#
点赞!
np8igboo3#
Llama3 会自动回答长度为700个令牌的简单问题,因此第三个回合就可以用完2048个令牌的上下文。人们很少会修改模型文件来解决这个问题。Ollama 旨在即插即用。它需要默认的上下文长度,不会限制模型。我建议实现以下算法:
num_predict
ljsrvy3e4#
有人能向我解释一下为什么我需要设置上下文窗口大小吗?这是模型的一个属性。因此,它应该成为GGUF内容的一部分。
mqkwyuun5#
@StarPet 大上下文窗口占用大量内存,这在GPU和CPU上都受到严重限制。你不希望大上下文导致模型从GPU溢出到系统RAM,甚至到SSD(通过分页)。我们需要更智能的东西。
xam8gpfp6#
@StarPet 大上下文窗口消耗大量内存,这在GPU和CPU上受到严重限制。你不希望大上下文导致模型从GPU溢出到系统RAM,甚至到SSD(通过分页)。我们需要更智能的方法。感谢Robert。尽管在那些消耗过多内存并降低速度的情况下,从模型的最大值减少上下文窗口大小可能是合理的,但它仍应是模型本身的一个属性,Ollama可以作为参考点提供。据我所知,目前我无法使用list() API查询模型的最大值。拥有这些信息对于创建较大文本块的摘要等用例可能很有趣。
4uqofj5v7#
如何修复它以避免重新启动ollama i am with gemma:2b的服务?
7条答案
按热度按时间htzpubme1#
有没有无限制运行的方法?我知道这可能是个坏主意,但我需要在一个提示符上无限制地运行。这是一个科学项目,所以我需要100%确保没有隐藏的截断。
这将通过混合实现。我可能会导致电脑崩溃或将内存Map到磁盘空间,但只是为了几次运行,所以我可以在集群上运行。
3b6akqbq2#
点赞!
np8igboo3#
Llama3 会自动回答长度为700个令牌的简单问题,因此第三个回合就可以用完2048个令牌的上下文。人们很少会修改模型文件来解决这个问题。Ollama 旨在即插即用。它需要默认的上下文长度,不会限制模型。我建议实现以下算法:
你觉得怎么样?这对大多数人有效吗?
PS:这让我想起
num_predict
可能不应该默认为128,这也会限制模型。ljsrvy3e4#
有人能向我解释一下为什么我需要设置上下文窗口大小吗?这是模型的一个属性。因此,它应该成为GGUF内容的一部分。
mqkwyuun5#
@StarPet 大上下文窗口占用大量内存,这在GPU和CPU上都受到严重限制。你不希望大上下文导致模型从GPU溢出到系统RAM,甚至到SSD(通过分页)。我们需要更智能的东西。
xam8gpfp6#
@StarPet 大上下文窗口消耗大量内存,这在GPU和CPU上受到严重限制。你不希望大上下文导致模型从GPU溢出到系统RAM,甚至到SSD(通过分页)。我们需要更智能的方法。
感谢Robert。尽管在那些消耗过多内存并降低速度的情况下,从模型的最大值减少上下文窗口大小可能是合理的,但它仍应是模型本身的一个属性,Ollama可以作为参考点提供。据我所知,目前我无法使用list() API查询模型的最大值。拥有这些信息对于创建较大文本块的摘要等用例可能很有趣。
4uqofj5v7#
如何修复它以避免重新启动ollama i am with gemma:2b的服务?