如何在非标准位置验证 spacy 模型?

How do I validate a spacy model at a nonstandard location?

我想检查 spaCy 是否与我安装到非标准位置的模型兼容。例如:

import spacy, os
nlp = spacy.load("../data/p1/p2/en_core_web_lg-3.2.0")
os.system("python -m spacy validate")

问题:以上验证了模型在 standard 位置的 spacy;我的模型位于非标准位置:../data/p1/p2/en_core_web_lg-3.2.0

我想用代码来做。命令行 python -m spacy validate 不接受争论。我想做类似

的事情
assert(spacy.validate("../data/p1/p2/en_core_web_lg-3.2.0"))

在实际加载模型之前,但 spacy 没有函数 validate()。或者,spacy.load() 是检查兼容性的唯一方法吗?

spacy validate 只是根据列表检查模型名称,以告诉您更新旧的官方模型,它实际上并不进行验证。它用于帮助从 v2 升级到 v3,并在对用户报告进行故障排除时帮助开发团队。

如果您有自定义模型,您应该只使用 spacy.load 检查您的模型。

您似乎将非自定义模型安装到了非标准位置。如果你pip install它你可以用spacy validate检查它,否则它不会检查它。