跳转到主要内容

自然语言处理实用程序和示例,用于Hobson Lane和Maria Dyshel所著的《自然语言处理实战》(nlpia)第二版。

项目描述

nlpia2

codecov GitLab CI

由 Maria Dyshel 和 Hobson Lane 著,Tangible AI 出品,Manning 出版的《自然语言处理实战,第 2 版》的官方 代码仓库。如果没有贡献作者慷慨的工作,这一切都不会发生。

快速入门

Windows

如果您使用的是 Windows,您首先需要安装 git-bash,以便您可以使用超过 99% 的所有生产 NLP 管道中使用的相同环境:[./docs/README-windows-install.md](./docs/README-windows-install.md)

bash

启动您的终端(Windows 上的 git-bash 应用程序)然后从源代码安装 nlpia2 软件包。

git clone git@gitlab.com:tangbileai/nlpia2
cd nlpia2
pip install --upgrade pip virtualenv
python -m virtualenv .venv
source .venv/bin/activate | source .venv/Scripts/activate
pip install -e .

然后您可以通过导入第 3 章问答聊天机器人示例来检查是否一切正常。

from nlpia2.ch03.faqbot import run_bot
run_bot()

安装

要充分利用此存储库,您需要做三件事。

  1. 克隆存储库 到您的本地计算机,如果您想在本地上执行代码或需要本地访问数据(推荐)。
  2. 创建一个虚拟环境 来存放 nlpia2 软件包及其依赖项。
  3. 将 nlpia2 作为 --editable 软件包安装,以便您可以在发现错误或想要添加的内容时对其进行贡献。

克隆存储库

如果您当前正在 GitLab 上查看此文件,并且您希望访问本地计算机上的数据和代码,您可以将此存储库克隆到您的本地计算机。导航到您首选的目录以存放本地克隆(例如,您本地的 git 目录),然后执行

git clone git@gitlab.com:tangibleai/nlpia2

创建虚拟环境

要使用 NLPIA 第 2 版书中提到的今天流行的先进 NLP 的各种软件包,例如 PyTorch 和 SpaCy,您需要将它们安装在一个 conda 环境中。为了避免此类软件包及其依赖项与您的其他 Python 项目的潜在冲突,创建和激活一个新的 conda 环境是一个好习惯。

以下是本书中我们这样做的方式。

  1. 请确保您已安装 Anaconda3。 确保您可以从 bash shell(终端)中运行 conda。命令 conda --version 应该显示类似于 '4.10.3' 的内容。

  2. 更新 conda 本身。保持 conda 软件包的当前状态,该软件包管理所有其他软件包。您的基环境很可能被命名为 base,因此您可以通过执行 conda update -n base -c defaults conda 来将此软件包更新到最新状态。即使 base 不是当前激活的环境,此命令(如所示)也会在 base 环境中更新 conda 软件包。这样,下次您在任何环境中使用 conda 命令时,系统将使用更新的 conda 软件包。

  3. 创建一个新的环境并安装 NLPIA 第 2 版中需要的各种模块。

有两种方法可以做到这一点。

使用存储库中已提供的脚本(nlpia2/src/nlpia2/scripts/conda_install.sh

如果您已按上述说明克隆了存储库,您已经有一个脚本可以完成这项工作。从存放存储库的目录运行 cd nlpia2/src/nlpia2/scripts/,然后从该目录运行 bash conda_install.sh

或者手动执行脚本的某些部分,如下所示

首先,创建一个新的环境(如果它存在则激活它)

# create a new environment named "nlpia2" if one doesn't already exist:
conda activate nlpia2 \
    || conda create -n nlpia2 -y 'python==3.9.7' \
    && conda activate nlpia2

完成后,如果尚未安装,请安装 nlpia2 的所有 conda 依赖项

conda install -c defaults -c huggingface -c pytorch -c conda-forge -y \
    emoji \
    ffmpeg \
    glcontext \
    graphviz \
    huggingface_hub \
    jupyter \
    lxml \
    manimpango \
    nltk \
    pyglet \
    pylatex \
    pyrr \
    pyopengl \
    pytest \
    pytorch \
    regex \
    seaborn \
    scipy \
    scikit-learn \
    sentence-transformers \
    statsmodels \
    spacy \
    torchtext \
    transformers \
    wikipedia \
    xmltodict

最后,使用pip安装所有通过conda通道不可用的包。在这种情况下,通常在所有conda安装之后应用所有pip安装是一个更好的做法。此外,为了确保pip安装正确配置了conda环境所使用的Python版本,而不是使用pippip3,请激活环境并使用python -m pip调用pip。

conda activate nlpia2
python -m pip install manim manimgl

准备,设置,出发!

恭喜!您现在已经克隆了nlpia2存储库,这使您能够本地访问NLPIA第二版书籍中所需的所有数据和脚本,并创建了一个强大的环境供您使用。当您准备好输入或执行代码时,请检查此环境是否已激活。如果没有,请执行以下操作以激活它:

conda activate nlpia2

然后您就可以开始处理一些严肃的自然语言处理任务,以使世界对所有人都变得更加美好。

在docker中运行jupyter笔记本服务器:jupyter-repo2docker --editable .

待办事项

  • 包含.nlpia2文件路径及其对应的远程URL和proai.org短链接的字典
  • 如有必要,下载到.nlpia2-data以缓存所有所需的数据集
  • 使用collect_data.py

项目详情


下载文件

下载适合您平台的应用程序。如果您不确定要选择哪个,请了解更多关于安装包的信息。

源分布

nlpia2-0.0.42.tar.gz (37.1 MB 查看哈希值)

上传时间

构建分布

nlpia2-0.0.42-py3-none-any.whl (37.8 MB 查看哈希值)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面