基于doccano开源项目的二次开发

8,699 阅读2分钟

doccano是一个开源的文本标注平台,可以用于各种自然语言处理任务,如命名实体识别、情感分析、文本分类等。doccano的1.0.5版本是属于比较老的版本,之所以选择1.0.5版本,是因为通过和其他较新的版本对比,发现1.0.5版本的源码结构相对简单,对于不擅长后端的我还勉强可以读懂。当然它也提供了强大的标注功能,但是缺少一些用户管理方面的功能。

为了满足用户管理方面的需求,我们进行了二次开发,增加了给每个用户添加标注任务数量的分发功能。这个功能可以帮助管理员更好地管理用户,灵活控制每个用户的标注任务数量,避免了数据共享冲突。

除此之外,我们还增加了通过修改前端vue代码,改造成通过下拉框的方式给数据打标签的功能。在标注数据时,用户可以通过下拉框选择标签,而不是每次选中一个关键词就要鼠标移到到页头找相应的标签。这个功能可以减少标注错误的概率,提高了标注的效率和准确性。

另外,我们还增加了支持关键词与标签多对多的关系。在标注数据时,用户可以为每个标注添加多个关键词,这些关键词可以与标签建立多对多的关系。这个功能可以更好地反映数据的复杂性,提高标注的精度。

最后,我们还增加了只导出已标注的数据的功能。管理员可以通过界面或API来导出已标注的数据。这个功能可以帮助管理员更好地管理和分析标注数据,提高数据的利用价值。

这些功能的实现涉及到了多个模块和组件,需要对doccano的代码进行深入的理解和修改。我们花费了挺多的时间和精力来完成这些功能,但是最终的结果还是挺满意的。我们相信这些功能可以为doccano的用户管理和标注数据分析带来更大的便利和效益。

总之,我们对doccano的二次开发经验非常宝贵,它让我们更好地理解了doccano的内部机制和设计思路。我们希望通过这篇博客,向大家分享我们的经验和成果,帮助更多的人使用和开发doccano。