从https://spacy.io spacy“工业力量自然语言处理” python图书馆的r包装器。
安装Spacyr R软件包:
install.packages( " spacyr " )来自Github:
要从源安装最新的软件包,您可以简单地运行以下内容。
remotes :: install_github( " quanteda/spacyr " )安装Spacy和要求
只需运行:
library( spacyr )
spacy_install()如果要安装特定版本,只需将其添加到安装命令:
library( spacyr )
spacy_install( version = " apple " )在https://spacy.io/usage上检查有用的版本工具,并查看可用的内容。
(可选)添加更多语言模型
如果保持不变, spacy_install()添加默认的“ en_core_web_sm”型号。您可以使用spacy_download_langmodel()添加更多语言模型。例如,安装小型且高效的德语模型:
spacy_download_langmodel( " de_core_news_sm " )在https://spacy.io/usage/models上查看可用型号。
如果遇到任何问题,则可以尝试下面描述的手动安装路径。
spacy_install()执行许多任务来设置安装Spacy的虚拟环境。虚拟环境是安装Python应用程序的推荐方法,因为缺乏中央依赖冲突控制(Cran在R -World中执行)意味着包装之间的冲突更为普遍。因此,每个Python软件包及其依赖项通常安装在自己的文件夹中。
通常,这些都不应与您有关。但是,经验表明,某些系统在安装过程中遇到了问题,而开发人员很难预见。因此,我们说明如何手动执行spacy_install()中的步骤,以调试可能发生的任何问题。在您尝试手动执行这些步骤之后,请仅提交GitHub问题,以便我们为您提供更多针对性的帮助。
安装Python
您可以使用自己的python安装进行以下步骤。默认情况下, spacy_install()下载并在reticulate包装使用的默认目录中安装最小的Python版本,以简单起见。这可以通过一个命令来完成:
python_exe <- reticulate :: install_python()该功能返回到Python可执行文件的路径。您可以随时再次运行此路径(如果文件已经存在,则跳过安装)。如果您喜欢使用特定版本的Python,则可以使用此功能安装它,并且它将由spacyr拾取。
设置虚拟环境
默认情况下, spacyr使用一个称为“ R-Spacyr”的环境,该环境位于由reticulate管理的目录中。我们可以用:
reticulate :: virtualenv_create( " r-spacyr " , python = python_exe )如果由于某种原因造成麻烦,您可以在任何方便的位置安装环境:
reticulate :: virtualenv_create( " path/to/directory " , python = python_exe )请注意,除非您通过环境变量SPACY_PYTHON告诉它,否则spacyr不知道该环境的存在。您可以在每个会话中使用:
Sys.setenv( SPACY_PYTHON = " path/to/directory " )或者,您将其放入.Renviron文件中。您可以使用此小辅助功能使更改永久:
usethis :: edit_r_environ( scope = " user " )我们还需要告诉reticulate ,从现在开始它应该使用此环境。
reticulate :: use_virtualenv(Sys.getenv( " SPACY_PYTHON " , unset = " r-spacyr " ))我们使用Sys.getenv("SPACY_PYTHON", unset = "r-spacyr")检查是否设置了SPACY_PYTHON并否则使用默认值。
安装Spacy
安装spaCy及其依赖关系再次通过reticulate完成。如果您选择了一个非默认文件夹,我们再次检查是否设置了Spacy_python。
reticulate :: py_install( " spacy " , envname = Sys.getenv( " SPACY_PYTHON " , unset = " r-spacyr " ))安装Spacy语言模型
语言模型以相同的方式安装。
reticulate :: py_install( " en_core_web_sm " , envname = Sys.getenv( " SPACY_PYTHON " , unset = " r-spacyr " ))如果这些步骤中的任何一个失败,请提交问题(检查是否已经存在错误)。您还可以使用各个命令来自定义设置。
我们欢迎您的评论和反馈。请在“问题”页面上提交问题,和/或通过[email protected]和[email protected]向我们发送评论。