安装
下载地址:https://github.com/nlplab/brat/releases/tag/v1.3p1
解压
unzip brat-1.3p1.zip
Anaconda创建新环境
conda create -n brat python=2.7
conda activate brat
将解压后的文件放入该环境目录下,然后进入再安装
cd brat-1.3p1/
./install.sh
输入登陆名、登陆密码、联系邮箱,账号和密码记下,登录brat时候会用到
使用
在该环境下开启服务
python2 standalone.py
用浏览器访问127.0.0.1:8001进入brat系统界面
http://127.0.0.1:8001/index.xhtml
brat要先登录账号才能使用标注功能,右上角登录
需要标注的文本存放在brat下的data文件夹中
可以在data文件夹中新建project文件夹,用于存放需要标注的txt文档和ann标注文件
两个文件都是需要自己生成的,其中demo.txt是需要标注的文档文件,ann标注文件为空
touch demo.txt
touch demo.ann
如果要进行批量标注,可以先把所有txt文本放在project文件夹下,然后在project文件夹所在目录下执行以下命令自动生成ann标注文件
find project -name '*.txt'|sed -e 's|.txt|.ann|g'|xargs touch
页面左上角有三个按钮
Collection
用于设置待标注文本
Document也就是data文件夹
project是我们新建的文件夹,进入该文件夹下选中待标注文档demo.txt,双击
选中词语自动跳出标签页面
对于标注好的标签,双击该标签可以跳出页面删除该标签
中文标注
brat默认不支持中文标注
修改brat下的server/src/projectconfig.py文件
注释掉162行代码,在正则匹配中加入中文
n = re.sub(u'[^a-zA-Z\u4e00-\u9fa5<>,0-9_-]', '_', n)
修改brat下的annotation.conf文件
annotation.conf文件中有四个模块:
entities
:实体,比如:人名、地名,可以采用tab来增加二级标注
relations
:关系,每行定义一种关系,第一列为关系类型,随后是用逗号分隔的ArgN:实体名,用来表示关系的各个相关者
events
:事件,每行定义一类事件,第一列为事件名,随后是用逗号分隔的Participant:实体名,用来表示事件的各个参与者
attributes
:属性,每行一个属性,第一列为属性名,随后是用逗号分隔的Arg:<模块类型>, Value:属性值,属性值可以有多个
修改brat下的visual.conf文件
实体直接使用中文会报错,所以需要进行修改
参考
https://blog.csdn.net/weixin_42927998/article/details/106623370
https://www.jianshu.com/p/3a70ee9ad632
https://blog.csdn.net/u014028063/article/details/89329306