作为前端工程师,经常需要使用第三方库来提高开发效率和产品质量。其中,npm是常用的JavaScript软件包管理器之一,拥有着数百万的包和方便快捷的安装方式。@textactor/wikientity-data是一款针对实体识别的npm包,本文将介绍如何使用该包。
什么是 @textactor/wikientity-data
@textactor/wikientity-data是由Text Actor团队开发的npm包,适用于实体识别任务。该包结合了Wikipedia的知识图谱和实体搜索引擎,旨在提供高效、精确的实体识别功能。具体而言,该包可以在文本中查找出各类对象,例如人物、地点、组织、事件等,并返回对应的信息。
安装和引入
使用该包需要先将其安装到本地项目中。在命令行中执行以下代码:
npm i @textactor/wikientity-data
安装完成后,在需要使用的文件中引入包:
const wikientityData = require('@textactor/wikientity-data')
使用方法
findEntity
该方法用于在文本中查找实体,其函数原型如下:
async findEntity(text: string): Promise<Entity[]>
其中,text为待查找的文本,Entity为实体对象,包含了实体的关键信息。
对于该方法的调用,可以使用Promise的方式。下面是一个示例:
const text = '约翰·斯密斯是一名美国画家,生于1980年' const entities = await wikientityData.findEntity(text) console.log(entities)
该段代码将在文本中查找实体,并将结果输出到控制台。
Entity对象
如上文所述,findEntity方法返回的是Entity对象数组。下面是示例输出结果的格式:
-- -------------------- ---- ------- - - ----- ---------- ------- ----- ------- -------------- ---------- -------- ---- -------------- --------- -------------- --------- --------------- -- ------------- - - -
其中,各字段含义如下:
- id:实体的唯一标识符
- name:实体名称
- description:实体的描述信息
- score:实体与文本的匹配度得分,范围为0-1
- matchedText:在文本中与实体匹配的文本
- matchedType:实体的类型
- matchedStart:在文本中匹配文本的起始位置
- matchedEnd:在文本中匹配文本的结束位置
findRelated
该方法用于查找与指定实体相关的其它实体,其函数原型如下:
async findRelated(entityId: string, relationType: string): Promise<RelatedEntity[]>
其中,entityId为指定实体的id,relationType为关系类型,例如:
- instance-of:实体的属于关系
- part-of:实体的部分关系
- has-part:实体包含的部分关系
- is-a:实体的分类关系
- has-instance:实体的实例关系
该方法同样可以使用Promise调用。下面是一个示例:
const entityId = 'Q684630' const relationType = 'instance-of' const relatedEntities = await wikientityData.findRelated(entityId, relationType) console.log(relatedEntities)
该段代码将查找id为'Q684630'的实体的属于关系,并输出结果到控制台。
RelatedEntity对象
如上,findRelated方法返回的是RelatedEntity对象数组。下面是示例输出结果的格式:
-- -------------------- ---- ------- - - ----- ----- ------- -------- -------------- ----- -------- - -- - ----- --------- ------- --------- -------------- -------- -------- ---- -- --- -
其中,各字段含义如下:
- id:相关实体的唯一标识符
- name:相关实体名称
- description:相关实体的描述信息
- score:相关实体与当前实体的匹配度得分,范围为0-1
结语
@textactor/wikientity-data是一款非常实用的npm包,可以为实体识别提供快捷、精确的工具。本文主要介绍了该包的安装、引入以及使用方法,希望对读者有所指导。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066b5551ab1864dac66a9c