<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 欢迎来到HanLP在线交互环境，这是一个Jupyter记事本，可以输入任意Python代码并在线执行。请点击左上角【Run】来运行这篇NLP教程。
安装
量体裁衣，HanLP提供RESTful（云端）和native（本地）两种API，分别面向轻量级和海量级两种场景。无论何种API何种语言，HanLP接口在语义上保持一致，你可以任选一种API来运行本教程。
轻量级RESTful API
仅数KB，适合敏捷开发、移动APP等场景。简单易用，无需GPU配环境，强烈推荐，秒速安装：
Step1:  创建客户端，填入服务器地址：
Step2:  调用parse接口，传入一篇文章，得到HanLP精准的分析结果。
Step3:  可视化
输出结果是一个可以json化的dict，键为NLP任务名，值为分析结果。关于标注集含义，请参考《语言学标注规范》及《格式规范》。我们购买、标注或采用了世界上量级最大、种类最多的语料库用于联合多语种多任务学习，所以HanLP的标注集也是覆盖面最广的。通过doc.pretty_print，可以在等宽字体环境中得到可视化，你需要取消换行才能对齐可视化结果。我们已经发布HTML环境的可视化，在Jupyter Notebook中自动对齐中文。
Step4:  申请秘钥
由于服务器算力有限，匿名用户每分钟限2次调用。如果你需要更多调用次数，建议申请免费公益API秘钥auth。
海量级native API
依赖PyTorch、TensorFlow等深度学习技术，适合专业NLP工程师、研究者以及本地海量数据场景。要求Python 3.6以上，支持Windows，推荐*nix。可以在CPU上运行，推荐GPU/TPU。
无论是Windows、Linux还是macOS，HanLP的安装只需一句话搞定。
Step5:  加载模型
HanLP的工作流程是先加载模型，模型的标示符存储在hanlp.pretrained这个包中，按照NLP任务归类。
Step6:  调用hanlp.load进行加载，模型会自动下载到本地缓存。自然语言处理分为许多任务，分词只是最初级的一个。与其每个任务单独创建一个模型，不如利用HanLP的联合模型一次性完成多个任务：
Step7:  多任务批量分析
客户端创建完毕，或者模型加载完毕后，就可以传入一个或多个句子进行分析了：
Step8:  可视化
输出结果是一个可以json化的dict，键为NLP任务名，值为分析结果。关于标注集含义，请参考《语言学标注规范》及《格式规范》。我们购买、标注或采用了世界上量级最大、种类最多的语料库用于联合多语种多任务学习，所以HanLP的标注集也是覆盖面最广的。通过doc.pretty_print，可以在等宽字体环境中得到可视化，你需要取消换行才能对齐可视化结果。我们已经发布HTML环境的可视化，在Jupyter Notebook中自动对齐中文。
Step9:  指定任务
简洁的接口也支持灵活的参数，任务越少，速度越快。如指定仅执行分词：
Step10:  执行粗颗粒度分词
Step11:  执行分词和PKU词性标注
Step12:  执行粗颗粒度分词和PKU词性标注
Step13:  执行分词和MSRA标准NER
Step14:  执行分词、词性标注和依存句法分析
Step15:  转换为CoNLL格式：
Step16:  执行分词、词性标注和短语成分分析
Step17:  将短语结构树以bracketed形式打印
Step18:  关于标注集含义，请参考《语言学标注规范》及《格式规范》。我们购买、标注或采用了世界上量级最大、种类最多的语料库用于联合多语种多任务学习，所以HanLP的标注集也是覆盖面最广的。
多语种支持
总之，可以通过tasks参数灵活调用各种NLP任务。除了中文联合模型之外，你可以在文档中通过找到许多其他语种的模型，比如日语：
Step19:  以及支持104种语言的多语种联合模型：
<ASSISTANT_TASK:>
Python Code:
!pip install hanlp_restful
Explanation: 欢迎来到HanLP在线交互环境，这是一个Jupyter记事本，可以输入任意Python代码并在线执行。请点击左上角【Run】来运行这篇NLP教程。
安装
量体裁衣，HanLP提供RESTful（云端）和native（本地）两种API，分别面向轻量级和海量级两种场景。无论何种API何种语言，HanLP接口在语义上保持一致，你可以任选一种API来运行本教程。
轻量级RESTful API
仅数KB，适合敏捷开发、移动APP等场景。简单易用，无需GPU配环境，强烈推荐，秒速安装：
End of explanation
from hanlp_restful import HanLPClient
HanLP = HanLPClient('https://www.hanlp.com/api', auth=None, language='zh') # auth不填则匿名，zh中文，mul多语种
Explanation: 创建客户端，填入服务器地址：
End of explanation
doc = HanLP.parse("2021年HanLPv2.1为生产环境带来次世代最先进的多语种NLP技术。阿婆主来到北京立方庭参观自然语义科技公司。")
print(doc)
Explanation: 调用parse接口，传入一篇文章，得到HanLP精准的分析结果。
End of explanation
doc.pretty_print()
Explanation: 可视化
输出结果是一个可以json化的dict，键为NLP任务名，值为分析结果。关于标注集含义，请参考《语言学标注规范》及《格式规范》。我们购买、标注或采用了世界上量级最大、种类最多的语料库用于联合多语种多任务学习，所以HanLP的标注集也是覆盖面最广的。通过doc.pretty_print，可以在等宽字体环境中得到可视化，你需要取消换行才能对齐可视化结果。我们已经发布HTML环境的可视化，在Jupyter Notebook中自动对齐中文。
End of explanation
!pip install hanlp -U
Explanation: 申请秘钥
由于服务器算力有限，匿名用户每分钟限2次调用。如果你需要更多调用次数，建议申请免费公益API秘钥auth。
海量级native API
依赖PyTorch、TensorFlow等深度学习技术，适合专业NLP工程师、研究者以及本地海量数据场景。要求Python 3.6以上，支持Windows，推荐*nix。可以在CPU上运行，推荐GPU/TPU。
无论是Windows、Linux还是macOS，HanLP的安装只需一句话搞定。
End of explanation
import hanlp
hanlp.pretrained.mtl.ALL # MTL多任务，具体任务见模型名称，语种见名称最后一个字段或相应语料库
Explanation: 加载模型
HanLP的工作流程是先加载模型，模型的标示符存储在hanlp.pretrained这个包中，按照NLP任务归类。
End of explanation
HanLP = hanlp.load(hanlp.pretrained.mtl.CLOSE_TOK_POS_NER_SRL_DEP_SDP_CON_ELECTRA_BASE_ZH)
Explanation: 调用hanlp.load进行加载，模型会自动下载到本地缓存。自然语言处理分为许多任务，分词只是最初级的一个。与其每个任务单独创建一个模型，不如利用HanLP的联合模型一次性完成多个任务：
End of explanation
doc = HanLP(['2021年HanLPv2.1为生产环境带来次世代最先进的多语种NLP技术。', '阿婆主来到北京立方庭参观自然语义科技公司。'])
print(doc)
Explanation: 多任务批量分析
客户端创建完毕，或者模型加载完毕后，就可以传入一个或多个句子进行分析了：
End of explanation
doc.pretty_print()
Explanation: 可视化
输出结果是一个可以json化的dict，键为NLP任务名，值为分析结果。关于标注集含义，请参考《语言学标注规范》及《格式规范》。我们购买、标注或采用了世界上量级最大、种类最多的语料库用于联合多语种多任务学习，所以HanLP的标注集也是覆盖面最广的。通过doc.pretty_print，可以在等宽字体环境中得到可视化，你需要取消换行才能对齐可视化结果。我们已经发布HTML环境的可视化，在Jupyter Notebook中自动对齐中文。
End of explanation
HanLP('阿婆主来到北京立方庭参观自然语义科技公司。', tasks='tok').pretty_print()
Explanation: 指定任务
简洁的接口也支持灵活的参数，任务越少，速度越快。如指定仅执行分词：
End of explanation
HanLP('阿婆主来到北京立方庭参观自然语义科技公司。', tasks='tok/coarse').pretty_print()
Explanation: 执行粗颗粒度分词
End of explanation
HanLP('阿婆主来到北京立方庭参观自然语义科技公司。', tasks='pos/pku').pretty_print()
Explanation: 执行分词和PKU词性标注
End of explanation
HanLP('阿婆主来到北京立方庭参观自然语义科技公司。', tasks=['tok/coarse', 'pos/pku'], skip_tasks='tok/fine').pretty_print()
Explanation: 执行粗颗粒度分词和PKU词性标注
End of explanation
HanLP('阿婆主来到北京立方庭参观自然语义科技公司。', tasks='ner/msra').pretty_print()
Explanation: 执行分词和MSRA标准NER
End of explanation
doc = HanLP('阿婆主来到北京立方庭参观自然语义科技公司。', tasks=['pos', 'dep'])
doc.pretty_print()
Explanation: 执行分词、词性标注和依存句法分析
End of explanation
print(doc.to_conll())
Explanation: 转换为CoNLL格式：
End of explanation
doc = HanLP('阿婆主来到北京立方庭参观自然语义科技公司。', tasks=['pos', 'con'])
doc.pretty_print()
Explanation: 执行分词、词性标注和短语成分分析
End of explanation
print(doc['con'])  # str(doc['con'])会将短语结构列表转换为括号形式
Explanation: 将短语结构树以bracketed形式打印
End of explanation
ja = hanlp.load(hanlp.pretrained.mtl.NPCMJ_UD_KYOTO_TOK_POS_CON_BERT_BASE_CHAR_JA)
ja(['2021年、HanLPv2.1は次世代の最先端多言語NLP技術を本番環境に導入します。',
    '奈須きのこは1973年11月28日に千葉県円空山で生まれ、ゲーム制作会社「ノーツ」の設立者だ。',]).pretty_print()
Explanation: 关于标注集含义，请参考《语言学标注规范》及《格式规范》。我们购买、标注或采用了世界上量级最大、种类最多的语料库用于联合多语种多任务学习，所以HanLP的标注集也是覆盖面最广的。
多语种支持
总之，可以通过tasks参数灵活调用各种NLP任务。除了中文联合模型之外，你可以在文档中通过找到许多其他语种的模型，比如日语：
End of explanation
from hanlp.utils.torch_util import gpus_available
if gpus_available():
  mul = hanlp.load(hanlp.pretrained.mtl.UD_ONTONOTES_TOK_POS_LEM_FEA_NER_SRL_DEP_SDP_CON_XLMR_BASE)
  mul(['In 2021, HanLPv2.1 delivers state-of-the-art multilingual NLP techniques to production environments.',
       '2021年、HanLPv2.1は次世代の最先端多言語NLP技術を本番環境に導入します。',
       '2021年 HanLPv2.1为生产环境带来次世代最先进的多语种NLP技术。']).pretty_print()    
else:
    print(f'建议在GPU环境中运行XLMR_BASE。')
Explanation: 以及支持104种语言的多语种联合模型：
End of explanation
<END_TASK>