Skip to content

Commit 5fb87fa

Browse files
committed
添加issue模板、pr模板、贡献说明,规范项目运行
1 parent 7439704 commit 5fb87fa

File tree

3 files changed

+128
-0
lines changed

3 files changed

+128
-0
lines changed

.github/CONTRIBUTING.md

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# 改进HanLP
2+
3+
:+1::tada: 首先,感谢花时间改进HanLP :tada::+1:
4+
5+
![HanLP](http://ww1.sinaimg.cn/small/6cbb8645jw1eqkariq2ijj20se0sik3a.jpg)
6+
7+
## 项目初衷
8+
自然语言处理本来是一个小众的圈子,综合了多个交叉学科的领域知识。不但需要较深的数学基础,还需要实现复杂算法的工程能力,并且语言学知识也不可或缺。
9+
HanLP作为一个开源自由的项目,初衷是降低上述理论门槛,普及统计自然语言处理到生产环境中去。即使只是一个抛砖引玉的项目,也有其坚持的东西。
10+
为什么走统计自然语言处理的方向?因为我不喜欢那些自作聪明的“人工规则”“评分公式”,以及靠此存活的系统或“专家”。这些“人肉智能”及其机械工作应当逐步被机器替代掉。
11+
很高兴最初的想法得到了越来越多的赞同,有越来越多的公司和个人开始关注语料库建设,开始转型到统计模型。
12+
HanLP核心代码几乎全部配有注释和附属说明文档。衷心希望第一次接触自然语言处理的工程师,也能看懂代码的关键,并最终参与开源,一起完善这个不完美的小项目。
13+
HanLP所有代码和文章都注明了大量的论文引用,一些第三方代码也保留了全部署名。希望大家尊重提出了该算法的学者老师、实现了该算法的开源作者。HanLP能在这些研究成果上改进算法,大家能在HanLP上做商业应用,归根结底全是他们的功劳。也希望借此激发大家对底层算法的兴趣,了解原理才能评估一项技术的优缺点。
14+
15+
## 开源项目定义
16+
世界上有很多开源项目,但按照目的而言只有两种:
17+
18+
**1. 有商业目的的开源项目**
19+
20+
* 背后主要由商业公司支撑,雇佣全职员工参与开发,目的(就算不是主要目的,至少也有部分意愿)是推广行业标准(TensorFlow)、测试公司产品(Fedora)、汲取社区智慧改进产品(OpenJDK)、低价倾销后续收费(一些国产“开源”软件如Discuz)……
21+
* 这类开源产品大部分影响深远,具有改变行业的力量。既达成了企业的商业目的,又造福了所有用户。
22+
23+
**2. 以兴趣主导的开源项目**
24+
25+
* 无商业公司支撑,没有任何商业目的。多源于某个黑客的一时兴起,“在座的工具都不好用,为什么不自己造一个呢”。或者源于史蒂夫·沃兹尼克“做出好东西就应该让更多的人使用”那种朴素的利他主义。再者就是实验学习性质的作品,在维护作品的同时得到成长。
26+
* 这类开源项目虽然缺少资金人力,但不乏闪光之作,伟大如Linux自不必说,小领域的如[鸣谢](https://github.com/hankcs/HanLP#鸣谢)中列举的那些接地气的项目同样精彩。
27+
28+
毫无疑问,HanLP是属于后者的,完全基于兴趣,无商业支持,专注一个小众领域,希望做到极致。即使现在做的还不好,也在往好的方向前进。
29+
30+
## 其他贡献方式
31+
* 回答[issue区](https://github.com/hankcs/HanLP/issues)的问题,参与讨论,提出批评与建议
32+
* 参与[《开发计划》](https://github.com/hankcs/HanLP/projects)中的短期project
33+
* 为HanLP添加注释
34+
* 为HanLP编写测试用例
35+
* 为HanLP编写[拓展插件](https://github.com/hankcs/HanLP/wiki/%E8%A1%8D%E7%94%9F%E9%A1%B9%E7%9B%AE)
36+
* 开发高级功能,给大家露一手
37+
* 写文章分享你使用HanLP的经验,做了什么样的应用
38+
* 向其他朋友推荐统计自然语言处理与HanLP
39+
* 校对词库,调整模型
40+
* 捐献语料(分词标注语料、领域词库等)
41+
42+
再次对你的贡献表示感谢,开源事业因你的参与而更加美好!
43+

.github/ISSUE_TEMPLATE.md

+64
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
<!--
2+
这是HanLP的issue模板,用于规范提问题的格式。本来并不打算用死板的格式限制大家,但issue区实在有点混乱。有时候说了半天才搞清楚原来对方用的是旧版、自己改了代码之类,浪费双方宝贵时间。所以这里用一个规范的模板统一一下,造成不便望海涵。除了注意事项外,其他部分可以自行根据实际情况做适量修改。
3+
-->
4+
5+
## 注意事项
6+
请确认下列注意事项:
7+
8+
* 我已仔细阅读下列文档,都没有找到答案:
9+
- [首页文档](https://github.com/hankcs/HanLP)
10+
- [wiki](https://github.com/hankcs/HanLP/wiki)
11+
- [常见问题](https://github.com/hankcs/HanLP/wiki/FAQ)
12+
* 我已经通过[Google](https://www.google.com/#newwindow=1&q=HanLP)[issue区检索功能](https://github.com/hankcs/HanLP/issues)搜索了我的问题,也没有找到答案。
13+
* 我明白开源社区是出于兴趣爱好聚集起来的自由社区,不承担任何责任或义务。我会礼貌发言,向每一个帮助我的人表示感谢。
14+
* [ ] 我在此括号内输入x打钩,代表上述事项确认完毕。
15+
16+
## 版本号
17+
<!-- 发行版请注明jar文件名去掉后缀的部分;仓库版请注明master还是protable分支 -->
18+
19+
当前最新版本号是:
20+
我使用的版本是:
21+
22+
23+
## 我的问题
24+
25+
<!-- 请详细描述问题,越详细越可能得到解决 -->
26+
27+
## 复现问题
28+
<!-- 你是如何操作导致产生问题的?-->
29+
30+
### 步骤
31+
32+
1. 首先……
33+
2. 然后……
34+
3. 接着……
35+
36+
### 触发代码
37+
38+
```
39+
public void testIssue1234() throws Exception
40+
{
41+
CustomDictionary.add("用户词语");
42+
System.out.println(StandardTokenizer.segment("触发问题的句子"));
43+
}
44+
```
45+
### 期望输出
46+
47+
<!-- 你希望输出什么样的正确结果?-->
48+
49+
```
50+
期望输出
51+
```
52+
53+
### 实际输出
54+
55+
<!-- HanLP实际输出了什么?产生了什么效果?错在哪里?-->
56+
57+
```
58+
实际输出
59+
```
60+
61+
## 其他信息
62+
63+
<!-- 任何可能有用的信息,包括截图、日志、配置文件、相关issue等等。-->
64+

.github/PULL_REQUEST_TEMPLATE.md

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<!--
2+
感谢你对开源事业的贡献!这是一份模板,方便记录你做出的功绩,谢谢!
3+
-->
4+
5+
## 注意事项
6+
7+
* 这次修改没有引入第三方类库。
8+
* 也没有修改JDK版本号
9+
* 所有文本都是UTF-8编码
10+
* 代码风格一致
11+
* [ ] 我在此括号内输入x打钩,代表上述事项确认完毕。
12+
13+
## 解决了什么问题?带来了什么好处?
14+
15+
<!-- 你的补丁解决了什么问题,给大家带来了什么好处? -->
16+
17+
## 相关issue
18+
19+
<!-- 如果跟已有issue相关的话,麻烦列一下 -->
20+
21+

0 commit comments

Comments
 (0)