Repolode
stanfordnlp

stanfordnlp/stanza

斯坦福 NLP 组推出的 Python 库,支持 60 多种语言的分词、句子切分、命名实体识别和句法分析。

Star
7,906
Fork
966
未关闭 Issue
103
最近提交
前天

这是什么?

Stanza 是斯坦福 NLP 组开发的 Python 自然语言处理库,基于神经网络提供分词、句子切分、多词token展开、词性与形态标注、词形还原、依存句法分析和命名实体识别等流水线,覆盖 60 多种语言。

除神经网络流水线外,Stanza 还封装了 Java 版 Stanford CoreNLP,可以在 Python 代码中调用,通过设置 CORENLP_HOME 指向本地安装目录即可使用。预训练模型覆盖 Universal Dependencies 2.8 版的全部树库,另有多种常用语言的 NER 模型,以及面向生物医学和临床英文文本的模型包。

项目基于 PyTorch 实现,可通过 pip 或 conda 安装。开发者也可以使用 CoNLL-U 或 BIOES 格式的数据,从源码训练自己的分词器、标注器、词形还原器、句法分析器或 NER 模型。

核心功能

  • 01神经网络流水线,支持分词、词性标注、词形还原和依存句法分析
  • 02为多种常用语言提供命名实体识别模型
  • 03提供 Universal Dependencies 2.8 全部树库的预训练模型
  • 04封装 Java Stanford CoreNLP,可在 Python 中调用
  • 05提供生物医学和临床英文模型包
  • 06支持用 CoNLL-U 或 BIOES 数据训练自定义模型

适用场景

  • 在 Python NLP 流程中对多种语言的文本进行句法分析和标注
  • 从生物医学文献或临床病历中抽取命名实体
  • 在 Python 代码中调用 Stanford CoreNLP 的各类标注器
  • 为低资源语言的树库训练自定义句法分析或标注模型

快速上手

  1. 1

    使用 pip 安装 Stanza

    pip install stanza
  2. 2

    启动 Python 并导入 Stanza,然后下载英语模型(可选)

    python -c "import stanza; stanza.download('en')"
  3. 3

    创建英语神经网络流水线并解析句子

使用前须知

  • 训练自己的模型需要克隆代码仓库,因为 Pipeline 接口不支持训练。
  • 使用 Java CoreNLP 封装需要另外下载 Stanford CoreNLP 及其模型。
  • Anaconda 安装不支持 Python 3.10,请改用 pip。
  • 元数据中许可证显示为 NOASSERTION,但 README 声明为 Apache License 2.0。

收录于专题

标签

常见问题

stanza 是什么?
斯坦福 NLP 组推出的 Python 库,支持 60 多种语言的分词、句子切分、命名实体识别和句法分析。 Stanza 是斯坦福 NLP 组开发的 Python 自然语言处理库,基于神经网络提供分词、句子切分、多词token展开、词性与形态标注、词形还原、依存句法分析和命名实体识别等流水线,覆盖 60 多种语言。
stanza 可以免费使用吗?用的什么许可证?
stanza 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
stanza 还在维护吗?
活跃维护中。stanza 最近一次提交是在 2026年11月5日。
stanza 适合用来做什么?
在 Python NLP 流程中对多种语言的文本进行句法分析和标注 从生物医学文献或临床病历中抽取命名实体 在 Python 代码中调用 Stanford CoreNLP 的各类标注器 为低资源语言的树库训练自定义句法分析或标注模型
stanza 怎么安装和运行?
使用 pip 安装 Stanza: pip install stanza 启动 Python 并导入 Stanza,然后下载英语模型(可选): python -c "import stanza; stanza.download('en')" 创建英语神经网络流水线并解析句子
在哪里获取 stanza?
源代码和安装说明在 GitHub 上:https://github.com/stanfordnlp/stanza

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目