Skip to main content

Python 的自然语言生成库

项目描述

当前状态建造

这只是一个起点 - 一个 alpha 版本 - 主要是SimpleNLG的包装器。

尽管从一阶逻辑到文本是可能的,但处理事物的方式并不复杂。该库仍然缺少聚合或引用表达式生成等基础知识。

安装

从存储库下载代码并运行python setup.py install或使用 pip: pip install nlglib

介绍

NLGlib 是一个用 Python 编写的用于自然语言生成 (NLG) 的库。它试图填补 NLG 领域的空白。目前没有现成的库可供人们采用并整合到其他项目中。该库的目的是对希望为其功能添加一些文本生成的一般项目有用。

观众

该库应该可供没有语言知识的程序员使用。鉴于图书馆的目标是语言生成,一些语言知识是必要的,但您应该能够从示例中获取它。

范围

该库的目的是为从内容选择到实现的 NLG 系统创建一个基础。该库将涵盖文档结构工具、词汇化、引用表达式生成和聚合。实现将使用其他实现库(SimpleNLGpynlg)来完成。

历史

NLGlib 最初是作为 EPSRC 项目 Scrutable Autonomous Systems (SASSy) 的一部分:www.scrutable-systems.org 项目完成后,代码被移至此存储库以创建一个独立的可重用库。

例子

from nlglib.realisation.simplenlg.realisation import Realiser
from nlglib.microplanning import *

realise_en = Realiser(host='nlg.kutlak.info', port=40000)
realise_es = Realiser(host='nlg.kutlak.info', port=40001)


def main():
    p = Clause("María", "perseguir", "un mono")
    p['TENSE'] = 'PAST'
    # expected = 'María persigue un mono.'
    print(realise_es(p))
    p = Clause(NP("la", "rápida", "corredora"), VP("perseguir"), NP("un", "mono"))
    subject = NP("la", "corredora")
    objekt = NP("un", "mono")
    verb = VP("perseguir")
    subject.premodifiers.append("rápida")
    p.subject = subject
    p.predicate = verb
    p.object = objekt
    # expected = 'La rápida corredora persigue un mono.'
    print(realise_es(p))
    p = Clause(NP('this', 'example'), VP('show', 'how cool simplenlg is'))
    # expected = This example shows how cool simplenlg is.
    print(realise_en(p))


if __name__ == '__main__':
    main()

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

nlglib-0.2.1.tar.gz (55.0 kB 查看哈希

已上传 source

内置分布

nlglib-0.2.1-py3-none-any.whl (3.3 MB 查看哈希

已上传 py3