Giter Club home page Giter Club logo

aspp's Issues

ASPP 标注文件元数据维护

目前暂时想到了以下数据需要进行维护:

  • name 标注的名称,例如 /folder/ABS监管升级:证监局开展现场检查.txt.feichao-1.json
  • oldNames 曾经使用的名称列表,这个不一定要维护
  • history 编辑历史,我们需要能够从历史中看出来一个文件经历多少次编辑,每次编辑是由标注人员还是算法执行的;如果是算法执行了编辑操作,其对应的参数也需要被记录在历史记录中。

通过文件的编辑历史,对于每一个标注文件,我们可以得到类似下面这样的表格:

时间 作者 编辑类型 编辑概要信息
2018-08-23 12:00 stanford-nlp 算法运行结果 算法参数 {...};添加了 X 个标注
2018-08-22 14:27 sfc 手动标注 手动添加了 X 个标注,删除了 Y 个标注
2018-08-22 15:00 some-check-task 算法运行结果 检查出 20 个问题
2018-08-22 15:20 sfc 手动标注 编辑了 15 个标注

文档树的递归读取

需求:对于不同批次标注的文件希望能放在不同的文件夹中进行标注而不是全平铺在同一级目录下。

标注id覆盖问题

在标注时,可能因为id冲突覆盖了之前的标注,不太容易复现,出现过两次。

需要记录「手动解决 diff 冲突的过程」

diff 文件生成之后,标注人员可以对 diff 文件进行编辑,在解决所有的冲突之后,可以对 diff 文件执行合并任务。但目前只有最终的结果被保留了下来,标注人员解决冲突的中间操作没有被记录下来。

diff 文件应该和 普通的标注文件有所区别,能够记录每一个 diff 对象的是如何被 resolve 的。那些 包含冲突的 diff 对象 其实恰好说明了一些文本的实体属性较难分辨,记下这些冲突被解决的过程有利于分辨后续的标注。我们也可以从冲突被解决的过程中产生一些规则,用编程进行实现,用于自动解决类似的冲突。

添加 SelectDialog 组件

目前工具只支持如下图所示的确认框:

image

在一些时候,例如关闭未保存文件时,下图这样的确认框更为合适:

image

工具需要支持多个按钮的对话框。该对话框可以取名 SelectDialog,接受一个 options: string[] 表示可用的选项有哪些。另外需要实现一个对应的 saga,saga 返回值为用户选择的 option。实现完成之后,关闭未保存文件代码大致如下:

const option = yield selectDialogSaga('是否需要保存修改?', ['save', 'do not save', 'cancel'])

自动提示在直接覆盖标注其他类型时的问题

  • 例如,我先标注了“**”为“时间”,此时全文中的“**”均会被提示为“时间”。后来我发现标注错误了,支架选中“**”,标注“地点“类型,但是全文中的提示仍是之前的”时间“,如果这样接受提示,会产生一些错误标注。
  • (已经在 v0.1.8 中实现)diff选择文件时,希望可以有一个全选的功能。

关闭文件时的一些建议

  • 现在只有在手动点击"x"按钮时才会出现弹窗,建议在双击打开其他文件时也增加弹窗显示

  • 关闭按钮点击率不高,建议放在右上角

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.