<commit_before>HanLP: Han Language Processing
=====

汉语言处理包

------

**HanLP**是由一系列模型与算法组成的Java工具包，目标是普及自然语言处理在生产环境中的应用。**HanLP**具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。

**HanLP**提供下列功能：

> * 中文分词
  * 最短路分词
  * N-最短路分词
  * CRF分词
  * 索引分词
  * 极速词典分词
  * 用户自定义词典
> * 词性标注
> * 命名实体识别
  * 中国人名识别
  * 音译人名识别
  * 日本人名识别
  * 地名识别
  * 实体机构名识别
> * 关键词提取
  * TextRank关键词提取
> * 自动摘要
  * TextRank自动摘要
> * 短语提取
  * 基于互信息和左右信息熵的短语提取
> * 拼音转换
  * 多音字
  * 声母
  * 韵母
  * 声调
> * 简繁转换
  * 繁体中文分词
  * 简繁分歧词
> * 文本推荐
  * 语义推荐
  * 拼音推荐
  * 字词推荐
> * 依存句法分析
  * MaxEnt依存句法分析
  * CRF依存句法分析
> * 语料库工具
  * 分词语料预处理
  * 词频词性词典制作
  * BiGram统计
  * 词共现统计
  * CoNLL语料预处理
  * CoNLL UA/LA/DA评测工具


在提供丰富功能的同时，**HanLP**内部模块坚持低耦合、模型坚持惰性加载、服务坚持静态提供、词典坚持明文发布，使用非常方便，同时自带一些语料处理工具，帮助用户训练自己的语料。

------

## 项目主页

HanLP项目主页：http://hanlp.linrunsoft.com/

HanLP下载地址：https://github.com/hankcs/HanLP/releases

最新binary、文档都以项目主页为准。GitHub的说明为历史遗留，仅做参考。

------

## 下载与配置

###方式一、Maven

为了方便用户，特提供内置了数据包的Portable版，只需在pom.xml加入：

```
<dependency>
    <groupId>com.hankcs</groupId>
    <artifactId>hanlp</artifactId>
    <version>portable-1.2.2</version>
</dependency>
```

零配置，即可使用基本功能（除CRF分词、依存句法分析外的全部功能）。如果用户有自定义的需求，可以参考方式二，使用hanlp.properties进行配置。

###方式二、下载jar、data、hanlp.properties

**HanLP**将数据与程序分离，给予用户自定义的自由。

#### 1、下载jar

[hanlp.jar](https://github.com/hankcs/HanLP/releases)

#### 2、下载data

**GitHub代码库中已经包含了data.zip中的词典，直接编译运行自动缓存即可；模型则需要额外下载。**

| 数据包        | 功能   |  体积（MB）  |
| --------   | -----:  | :----:  |
| [data.zip](https://github.com/hankcs/HanLP/releases)     | 全部 |   255     |
下载后解压到任意目录，接下来通过配置文件告诉HanLP数据包的位置。

**HanLP**中的数据分为*词典*和*模型*，其中*词典*是词法分析必需的，*模型*是句法分析必需的。

    data<commit_msg>Portable同步升级到v1.2.4<commit_after>HanLP: Han Language Processing
=====

汉语言处理包

------

**HanLP**是由一系列模型与算法组成的Java工具包，目标是普及自然语言处理在生产环境中的应用。**HanLP**具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。

**HanLP**提供下列功能：

> * 中文分词
  * 最短路分词
  * N-最短路分词
  * CRF分词
  * 索引分词
  * 极速词典分词
  * 用户自定义词典
> * 词性标注
> * 命名实体识别
  * 中国人名识别
  * 音译人名识别
  * 日本人名识别
  * 地名识别
  * 实体机构名识别
> * 关键词提取
  * TextRank关键词提取
> * 自动摘要
  * TextRank自动摘要
> * 短语提取
  * 基于互信息和左右信息熵的短语提取
> * 拼音转换
  * 多音字
  * 声母
  * 韵母
  * 声调
> * 简繁转换
  * 繁体中文分词
  * 简繁分歧词
> * 文本推荐
  * 语义推荐
  * 拼音推荐
  * 字词推荐
> * 依存句法分析
  * MaxEnt依存句法分析
  * CRF依存句法分析
> * 语料库工具
  * 分词语料预处理
  * 词频词性词典制作
  * BiGram统计
  * 词共现统计
  * CoNLL语料预处理
  * CoNLL UA/LA/DA评测工具


在提供丰富功能的同时，**HanLP**内部模块坚持低耦合、模型坚持惰性加载、服务坚持静态提供、词典坚持明文发布，使用非常方便，同时自带一些语料处理工具，帮助用户训练自己的语料。

------

## 项目主页


HanLP下载地址：https://github.com/hankcs/HanLP/releases

最新binary、文档都以项目主页为准。GitHub的说明为历史遗留，仅做参考。

------

## 下载与配置

###方式一、Maven

为了方便用户，特提供内置了数据包的Portable版，只需在pom.xml加入：

```
<dependency>
    <groupId>com.hankcs</groupId>
    <artifactId>hanlp</artifactId>
    <version>portable-1.2.4</version>
</dependency>
```

零配置，即可使用基本功能（除CRF分词、依存句法分析外的全部功能）。如果用户有自定义的需求，可以参考方式二，使用hanlp.properties进行配置。

###方式二、下载jar、data、hanlp.properties

**HanLP**将数据与程序分离，给予用户自定义的自由。

#### 1、下载jar

[hanlp.jar](https://github.com/hankcs/HanLP/releases)

#### 2、下载data

**GitHub代码库中已经包含了data.zip中的词典，直接编译运行自动缓存即可；模型则需要额外下载。**

| 数据包        | 功能   |  体积（MB）  |
| --------   | -----:  | :----:  |
| [data.zip](https://github.com/hankcs/HanLP/releases)     | 全部 |   255     |
下载后解压到任意目录，接下来通过配置文件告诉HanLP数据包的位置。

**HanLP**中的数据分为*词典*和*模型*，其中*词典*是词法分析必需的，*模型*是句法分析必需的。

    data
{'fraction_non_alphanumeric': 0.17586101798232245, 'fraction_numerical': 0.005790917403230723, 'mean_word_length': 3.564673157162726, 'pattern_counts': {'":': 0, '<': 19, '<?xml version=': 0, '>': 41, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4112743', 'n_tokens_mistral': 2391, 'n_tokens_neox': 2747, 'n_words': 156}