doccano 是一个开源文本注释工具,它为 文本分类 、 序列标记 、 序列对序列 等任务 提供注释功能,
因此 你可以为 情感分析、命名体识别、文本摘要等 打标签, 只需要创建项目、上传语料就可以开始注释了
Demo 演示
You can enjoy [annotation demo](标注官网地址)
命名体识别 (NER任务)
(情感分析)
(机器翻译)
doccano 部署:
支持 多人协同标注
支持 多种语言
Requirements:
- python 3.6+
- Django 2.1.7+
- Node.js 8.0+
- Google Chrome
安装:
git clone https://github.com/chakki-works/doccano.git
cd doccano
sudo apt-get install libpq-dev
pip install -r requirements.txt
cd app
cd server/static
npm install
npm run build
cd …
docker方式 :
docker run -d --rm --name doccano \
-e "ADMIN_USERNAME=admin" \
-e "ADMIN_EMAIL=admin@example.com" \
-e "ADMIN_PASSWORD=password" \
-p 8000:8000 chakkiworks/doccano
django方式: 运行Django开发服务
python manage.py migrate
#设置登陆用户名和 邮箱、密码
python manage.py create_admin --noinput --username “admin” --email “设置自己的邮箱” --password “password”
#测试项目是否正常工作
python manage.py test server.tests
#启动服务
python manage.py runserver
或者
python manage.py runserver :
导入数据格式:
- Text file : 文件必须每行包含一个由新行分隔的句子/文档
- CSV file: 文件必须包含文本作为第一列或一列csv文件。如果使用标签,sencond列必须是标签。
- Excel file : 文件必须包含第一列为文本内容,或者是一列excel文件。如果使用标签,sencond列必须是标签。支持多个工作表,只要格式相同。
- Json file : 每一行都包含一个带有“text”键的JSON对象。JSON格式支持换行呈现。
例子:
txt 格式:
EU rejects German call to boycott British lamb.
President Obama is speaking at the White House.
He lives in Newark, Ohio.
…
Json 文件的格式:
{“text”: “EU rejects German call to boycott British lamb.”}
{“text”: “President Obama is speaking at the White House.”}
{“text”: “He lives in Newark, Ohio.”}
…
Csv 或 Excel 格式要求:
对于CSV/excel 有其它的列或 Json其它的键 都会保留下来, 并将按原样在“元数据”列或键中导出。
#定义标签
点击左侧栏中的“label”按钮来定义你自己的标签。您应该看到标签编辑器页面。在标签编辑器页面中,您可以通过指定标签文本、快捷键、背景颜色和文本颜色来创建标签。
#Annotation
您可以对文本进行注释了。只需点击导航栏中的“Annotate Data”按钮,就可以开始对上传的文档进行标注。
#导出数据
在标注完之后,您可以下载标注过的数据。点击导航栏中的“Edit Data”按钮,然后点击“Export Data”。你应该看到以下屏幕:
#举个例子:
输入数据格式 是这样:
import.json:
{"text": "EU rejects German call to boycott British lamb.", "meta": {"external_id": 1}}
输出数据格式 是这样:
output.json
{"doc_id": 2023, "text": "EU rejects German call to boycott British lamb.", "labels": ["news"], "username": "root", "meta": {"external_id": 1}}