安装
安装
选择版本
始于2014年,HanLP一直在突破自我,迭代创新。发展至今,HanLP衍生出了1.x和2.x两大版本,覆盖Java、Python、Golang等编程语言。2020年初,基于深度学习的HanLPv2.x发布,作为面向下一个十年的前沿NLP技术,与1.x相辅相成,平行发展。 新版旧版各有侧重,如何选择?
- 追求最强大、精准、先进的前沿技术,选择2.x。面向次世代进化,2.x分支革新大规模先端模型与语料库,支持多语种多任务,持续高速迭代研发。
- 追求最经典、稳定、高效的生产系统,选择1.x。作为最后的武士,1.x分支将继续提供稳定性维护,但不会增加新功能。
一图胜千言,请按图索骥,点击下图节点跳转对应版本的安装方法:
2.x RESTful版
仅数KB,适合敏捷开发、移动APP等场景。简单易用,无需GPU配环境,秒速安装,强烈推荐。HanLP官方支持下列语言:
- 服务器GPU算力有限,匿名用户配额较少,建议申请免费公益API秘钥
auth
。
🎉好了,RESTful版安装完毕后你就可以享受HanLPv2.x的全部功能,不需要继续往下阅读了。
2.x 本地版
依赖PyTorch、TensorFlow等深度学习技术,适合专业NLP工程师、研究者以及本地海量数据场景。要求Python 3.6至3.9,支持Windows,推荐*nix。可以在CPU上运行,推荐GPU/TPU。如果你的专业知识或硬件条件不足,建议安装上面的RESTful版。
精简版
pip install hanlp
为了减小安装包的体积,HanLP对部分重量级的、不常用的依赖进行了拆分。如有需要,请按下表安装对应依赖:
版本 | 简介 |
---|---|
默认 | 精简版,包含常用的依赖项(PyTorch等),但不含重量级的TensorFlow等类库。 |
tf | 包含TensorFlow和fastText。 |
amr | 为了支持抽象意义表示 (AMR) 模型,此版本安装AMR相关依赖,比如penman。 |
full | 完整版,为专业而生,包含以上所有依赖项。 |
完整版
安装方法,以完整版为例:
pip install hanlp[full]
Apple M1芯片支持
HanLP第一时间为Apple Silicon M1芯片提供了适配,请参考《M1加速深度学习:HanLP正式支持苹果芯GPU》。
安装模型
简而言之,无需手动下载安装任何模型。相反,模型会在首次加载时( hanlp.load()
)自动安装到一个叫做 HANLP_HOME
的目录。加载时偶尔会出现下列问题,请对号入座。
下载错误
HanLP 模型
如果自动下载失败,请尝试:
Hugging Face 🤗 Transformers 模型
如果遇到如下异常,则说明 Hugging Face 🤗 Transformers 库下载失败了:
lib/python3.8/site-packages/transformers/file_utils.py", line 2102, in get_from_cache
raise ValueError(
ValueError: Connection error, and we cannot find the requested files in the cached
path. Please try again or make sure your Internet connection is on.
此时请尝试:
重试下载,因为国内的外网连接不稳定。
如果你曾经加载成功过,那么可以强制 Hugging Face 🤗 Transformers 使用缓存而不联网检查更新:
export TRANSFORMERS_OFFLINE=1
离线加载
如果你的服务器在内网中无法联网,则可以先在本地调试通过后,通过U盘、FTP等方式将下列文件夹拷贝到服务器的对应路径:
~/.hanlp
: HanLP模型的缓存。~/.cache/huggingface
: Hugging Face 🤗 Transformers模型的缓存。
Import Error
一些TensorFlow/fastText模型需要对应的类库才能加载,此时你需要安装对应版本或者完整版:
pip install hanlp[full]
警告
不要自行安装第三方类库(TensorFlow/fastText等),也不要擅自升降级,因为未测试的第三方类库可能存在致命的兼容问题!
1.x版
1.x版内部算法经过工业界和学术界考验,配套书籍《自然语言处理入门》已经出版。
Python
pyhanlp
是HanLP1.x的Python接口,支持自动下载与升级HanLP1.x,兼容Python<=3.8。
- 如果你是能力不足的小白,请直接使用傻瓜安装包。
- 如果你是水平在线的工程师,推荐安装并使用conda作为包管理器,支持自动安装Java,无需额外安装C++编译器。否则你需要手动安装正确版本的Python、Java和C++编译器,
pip
无法自动完成这些操作。
使用命令hanlp
来验证安装,如因网络等原因自动安装失败,可参考手动配置或Windows指南。
注意
请不要相信网上非官方的安装教程,大多数教程要么安装了错误的jpype版本,要么要求安装Visual C++,导致安装过程过于复杂。通过我们的conda方法,安装不过两行命令,几分钟的事情。
若还有问题,请按照教程视频一步步来,实在没能力的请直接使用傻瓜虚拟机。如果还是无力完成安装,请你参考这份资料。