spaCy 是一个使用 Python 和 Cython 进行高级自然语言处理的库。它建立在最新的研究之上,从第一天起就被设计用于实际产品。
spaCy 附带预训练管道,目前支持70 多种语言的标记化和训练。它具有最先进的速度和神经网络模型,用于标记、解析、命名实体识别、文本分类等,使用 BERT 等预训练转换器进行多任务学习,以及生产就绪的训练系统和简单模型打包、部署和工作流程管理。 spaCy 是商业开源软件,根据 MIT 许可证发布。
? 3.7版本现已推出!请在此处查看发行说明。
文档 | |
---|---|
️斯帕西 101 | spaCy 新手?这是您需要了解的一切! |
使用指南 | 如何使用 spaCy 及其功能。 |
v3.0 中的新功能 | 新功能、向后不兼容性和迁移指南。 |
?项目模板 | 您可以克隆、修改和运行端到端工作流程。 |
? API参考 | spaCy API 的详细参考。 |
⏩ GPU 处理 | 将 spaCy 与 CUDA 兼容的 GPU 处理结合使用。 |
?型号 | 下载经过训练的 spaCy 管道。 |
?大型语言模型 | 将法学硕士集成到 spaCy 管道中。 |
?宇宙 | 来自 spaCy 生态系统的插件、扩展、演示和书籍。 |
spaCy VS 代码扩展 | 用于处理 spaCy 的配置文件的其他工具和功能。 |
??在线课程 | 通过这个免费的交互式在线课程学习 spaCy。 |
?博客 | 了解 Explosion 中有关 spaCy 和 Prodigy 最新开发、发布、演讲等的信息。 |
视频 | 我们的 YouTube 频道提供视频教程、讲座等。 |
?变更日志 | 更改和版本历史记录。 |
?贡献 | 如何为 spaCy 项目和代码库做出贡献。 |
?赃物 | 用独特的、定制设计的赃物支持我们和我们的工作! |
spaCy 核心开发团队提供定制 NLP 咨询、实施和战略建议。精简、生产就绪、可预测且可维护。请给我们发送电子邮件或填写 5 分钟的调查问卷,然后与我们联系!了解更多→ |
spaCy 项目由 spaCy 团队维护。请理解,我们无法通过电子邮件提供个人支持。我们还相信,如果公开分享帮助就会更有价值,这样更多的人就能从中受益。
类型 | 平台 |
---|---|
错误报告 | GitHub 问题跟踪器 |
?功能请求和想法 | GitHub 讨论 |
? 使用问题 | GitHub 讨论 · Stack Overflow |
?一般性讨论 | GitHub 讨论 |
欲了解更多详情,请参阅事实、数据和基准。
有关详细的安装说明,请参阅文档。
conda-forge
)使用 pip,spaCy 版本可以作为源包和二进制轮子提供。在安装 spaCy 及其依赖项之前,请确保您的pip
、 setuptools
和wheel
是最新的。
pip install -U pip setuptools wheel
pip install spacy
要安装其他数据表以进行词形还原和规范化,您可以运行pip install spacy[lookups]
或单独安装spacy-lookups-data
。需要查找包来创建带有词形还原数据的空白模型,并使用尚未附带预训练模型且不受第三方库支持的语言进行词形还原。
使用 pip 时,通常建议在虚拟环境中安装软件包以避免修改系统状态:
python -m venv .env
source .env/bin/activate
pip install -U pip setuptools wheel
pip install spacy
您还可以通过conda-forge
通道从conda
安装 spaCy。对于包括构建配方和配置的原料,请查看此存储库。
conda install -c conda-forge spacy
spaCy 的某些更新可能需要下载新的统计模型。如果您运行的是 spaCy v2.0 或更高版本,您可以使用validate
命令检查您安装的模型是否兼容,如果不兼容,则打印有关如何更新它们的详细信息:
pip install -U spacy
python -m spacy validate
如果您已经训练了自己的模型,请记住您的训练和运行时输入必须匹配。更新 spaCy 后,我们建议使用新版本重新训练您的模型。
有关从 spaCy 2.x 升级到 spaCy 3.x 的详细信息,请参阅迁移指南。
经过训练的 spaCy 管道可以作为Python 包安装。这意味着它们是您的应用程序的组件,就像任何其他模块一样。可以使用 spaCy 的download
命令安装模型,也可以通过将 pip 指向路径或 URL 来手动安装。
文档 | |
---|---|
可用管道 | 详细的管道描述、精度数据和基准。 |
模型文档 | 详细的使用和安装说明。 |
训练 | 如何根据您的数据训练您自己的管道。 |
# Download best-matching version of specific model for your spaCy installation
python -m spacy download en_core_web_sm
# pip install .tar.gz archive or .whl from path or URL
pip install /Users/you/en_core_web_sm-3.0.0.tar.gz
pip install /Users/you/en_core_web_sm-3.0.0-py3-none-any.whl
pip install https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.0.0/en_core_web_sm-3.0.0.tar.gz
要加载模型,请使用spacy.load()
和模型名称或模型数据目录的路径。
import spacy
nlp = spacy . load ( "en_core_web_sm" )
doc = nlp ( "This is a sentence." )
您还可以直接通过模型的全名import
模型,然后不带参数调用其load()
方法。
import spacy
import en_core_web_sm
nlp = en_core_web_sm . load ()
doc = nlp ( "This is a sentence." )
有关更多信息和示例,请查看模型文档。
安装 spaCy 的另一种方法是克隆其 GitHub 存储库并从源代码构建它。如果您想更改代码库,这是常见的方法。您需要确保您拥有一个由 Python 发行版组成的开发环境,其中包括头文件、编译器、pip、virtualenv 和安装的 git。编译器部分是最棘手的。如何做到这一点取决于您的系统。
平台 | |
---|---|
乌班图 | 通过apt-get 安装系统级依赖项: sudo apt-get install build-essential python-dev git 。 |
苹果 | 安装最新版本的 XCode,包括所谓的“命令行工具”。 macOS 和 OS X 预装了 Python 和 git。 |
视窗 | 安装与用于编译 Python 解释器的版本相匹配的 Visual C++ 构建工具或 Visual Studio Express 版本。 |
有关更多详细信息和说明,请参阅有关从源代码编译 spaCy 的文档和快速入门小部件,以获得适合您的平台和 Python 版本的正确命令。
git clone https://github.com/explosion/spaCy
cd spaCy
python -m venv .env
source .env/bin/activate
# make sure you are using the latest pip
python -m pip install -U pip setuptools wheel
pip install -r requirements.txt
pip install --no-build-isolation --editable .
要安装附加组件:
pip install --no-build-isolation --editable .[lookups,cuda102]
spaCy 附带了广泛的测试套件。为了运行测试,您通常需要克隆存储库并从源代码构建 spaCy。这还将安装在requirements.txt
中定义的所需的开发依赖项和测试实用程序。
或者,您可以在已安装的spacy
包中对测试运行pytest
。不要忘记还通过 spaCy 的requirements.txt
安装测试实用程序:
pip install -r requirements.txt
python -m pytest --pyargs spacy