Downloadable NLG systems

Tools and Software for English - Downloadable NLG systems

For languages other than English, see List of resources by language.

The natural language generation systems listed below are available for download over the web. If you know of a system which is not listed here, please click on Edit in the upper left corner of this page and add the system yourself.

ASTROGEN

http://www.dsv.su.se/~hercules/ASTROGEN/ASTROGEN.html

Aggregated deep and Surface naTuRal language GENerator - Prolog based system.

CLINT

http://www.cs.bgu.ac.il/~elhadad/clint.html

CLINT is a hybrid template / word-based generation system with an example application of business letter generation. The system is written in C++ and runs under Microsoft Windows.

CRISP

CRISP is Alexander Koller's NLG system that tries to cast both microplanning and sentence realisation as an AI planning problem. The code is a mixture of Java and Scala, a scripting language for the Java virtual machine. CRISP comes with its own implementation of GraphPlan, but it can also output plans in PDDL (“Planning Domain Definition Language”, a successor to STRIPS) for use with other AI planners. License: LGPL.

DAYDREAMER

DAYDREAMER is a computer model of the stream of thought developed at UCLA by Erik T. Mueller from 1983 to 1988. The generator is located in the file dd_gen.cl. Common lisp source code available under GPL v2.

FUF/SURGE

FUF is available as the original Common Lisp implementation and as a C++ port called CFUF which has an embedded Scheme interpreter.

For more information, see #SURGE#SURGE_2.3#SURG-SP#SURG-IT.

GenI

http://kowey.github.io/GenI

surface realiser for (Feature-Based Lexicalised) Tree Adjoining Grammar and a flat MRS-like semantics (sans top handle and underspecification). Toy example grammars provided for English and French. Largish core grammar for French is under development (contact us for details). GPL (commercial dual licensing available upon request). Known to work under Linux and Mac OS X (potential for making it work on Windows as well). Written in Haskell. Source code available via hackageGitHub, or hub.darcs.net.

Grammar Explorer

http://www.fb10.uni-bremen.de/anglistik/langpro/kpml/tutorials/Grexplorer/grexplorer.html (old site unavailable as April, 2011)

provides a means of exploring large-scale systemic-functional grammars in order to see how they are organized and what kinds of things they cover. It can be used to explore the KPML resources. Downloadable standalone executables of the grammar explorer are available for Windows 95/98/NT. These already include a version of the Nigel grammar of English and pre-installed examples.


KPML

http://www.purl.org/net/kpml

The KPML system offers a robust, mature platform for large-scale grammar engineering that is particularly oriented to multilingual grammar development and generation. It is particularly targetted at providing resources for realistic but broad-coverage generation applications, where both flexibility of expression and speed of generation are at issue—for example in online webpage generation or spoken dialogue. KPML is also used extensively in multilingual text generation research and for teaching. It is based on systemic functional linguistics.

The KPML system was a direct descendent of the Penman text generation system, as developed further multilingually in cooperative work between the Komet (http://www.darmstadt.gmd.de/publish/komet/index.html) project in Darmstadt and the Systemic Modelling Group at Macquarie University. Downloadable standalone executables of the system are available for PCs running Windows. The source code is written in ANSI Common Lisp and uses the Common Lisp Interface Manager (CLIM). The system has been compiled and tested[ under Franz Allegro Common Lisp (4.2, 4.3, 4.3.1, 5.0, 6.0, 7.0) for Unix and Franz Allegro Common Lisp 3.0 and Harlequin Lispworks 4.0, 4.1, 4.2 for Windows. It is possible to use the system without the window interface as a generator serving requests for generation across sockets or via files.

A growing set of generation grammars are under development for a variety of languages, inlcluding English, Spanish, Dutch, Chinese, German, Czech, and more. See the Generation Bank (http://www.fb10.uni-bremen.de/anglistik/langpro/kpml/genbank/generation-bank.html ) for current examples. The development of further languages and of extensions to existing resources are very welcome!

LKB

LKB (Linguistic Knowledge Builder) is a grammar engineering environment for unification-based formalisms, typically HPSG. It includes a realiser that takes as input Minimal Recursion Semantics (MRS). LKB is implemented in Common Lisp, and is freely available under an open source license. It includes also a KNOPPIX-based GNU/Linux live-CD, with all the system installed, ready to use.

Multimodal Unification Grammar

http://www.david-reitter.com/compling/mug/

MUG Workbench is a development and debugging tool for Multimodal NLG. The grammar formalism supported is Multimodal Functional Unification Grammar (MUG). The MUG system runs MUG grammars with fixed (test cases) and arbitrary input specifications to produce output in a natural language, graphical user interface and possibly in other modes. It is designed to do three things: - Multimodal Fission (distributing output to interaction/communication modes) - Some sentence planning (chosing information to include in the utterance) - Natural Language and graphical user interface realization (producing some form of output) The MUG system does these three jobs in parallel. MUG Workbench can serve to inspect the data-structures used during generation. It should help you to learn more about the nature of unification grammars used for parsing or natural language generation. Furthermore, the MUG Workbench is helpful in debugging your grammars.

NaturalOWL

http://www.aueb.gr/users/ion/software/NaturalOWL1.1.tar.gz NaturalOWL (version 1.1)

Generates descriptions of entities and classes from OWL ontologies that have been annotated with linguistic and user modeling resources expressed in RDF. Currently supports English and Greek. Extensions for other languages welcome. NaturalOWL can also be used as a Protégé plug-in. See here for publications describing NaturalOWL. (GPL)

NLGen

The NLGen natural language generation system applies the SegSim strategy for generating English sentences. Probabilistic inference for sentence construction is based on a statistical analysis of RelEx output. Not to be confused with NLGen2, below, which uses a different sentence generation theory. Java, Apache license. See demo: Demo of AI Virtual Pet Answering Simple Questions.

NLGen2

The NLGen2 natural language generation system uses RelEx dependency parses, together with Link Grammar linkage analysis to generate English-language output. Not to be confused with NLGen, above, which uses a different sentence generation theory. Java, Apache license. Reference: Blake Lemoine, "NLGen2: A Linguistically Plausible, General Purpose Natural Language Generation System".

OpenCCG

OpenCCG, the OpenNLP CCG Library (formerly Grok), is both a parser and a realizer for Combinatory Categorial Grammar. It has been used in several dialog systems. The realizer has been enhanced with n-gram models and a supertagging approach called hypertagging. OpenCCG is implemented in Java, and is freely available under the LGPL.


RAGS (Reference Architecture for Generation Systems) software

http://www.csd.abdn.ac.uk/~cmellish/rags/deliverables/

Deliverables from the RAGS project - RAGSOCKS software for interfacing modules using RAGS data representations, example RAGS module (genetic algorithm based text planner) and RAGS wrapper for FUF/SURGE.


SimpleNLG

http://simplenlg.googlecode.com/

is an ultra-simple Java-based realiser. Its grammatical coverage and syntactic knowledge is minuscule compared to KPML or FUF/SURGE. However, because it is so simple, its relatively easy for people to learn how to use it. It has been used by many people in Aberdeen, and also for teaching. It is set up as a Java package, so it can only be used by Java programs.

SPUD

SPUD (Sentence Planner Using Descriptions) is Matthew Purver's LTAG-based NLG system. There are two versions: SPUD version 0.01 was written in SML. Later versions, known as SPUD lite, are written in Prolog. The small codebase of SPUD lite makes it ideal for teaching, but it is also used in dialog system prototypes.

STANDUP

The STANDUP project (System To Augment Non-speakers' Dialogue Using Puns) is a collaborative project on generating simple jokes from a graphical user interface appropriate for non-speaking children. The project began in October 2003 and ran until March 2007. The software was written in Java and is available for Windows and Linux, including source code and database files.

Suregen-2

Suregen is “a hybrid, ontology based and NLG-oriented formalism for generating text for documents in clinical medicine.” The system Suregen-2 is written in (Allegro) Common Lisp. A demo system which runs under Windows is available for download. A screencast video shows data being entered into computer forms using mouse and keyboard while a feedback text is continually updated and shown below. (Try playing the AVI file in VLC if you run into problems.) Perhaps this system could be considered an instance of the WYSIWYM approach.

SURGE

http://www.cs.bgu.ac.il/surge/

Syntactic realization package. (A CommonLisp package providing an interpreter for a functional unification formalism called FUF and SURGE, a large grammar of English written in FUF.) Offers download of SURGE 2.2.

SURGE 2.3

http://homepages.inf.ed.ac.uk/ccallawa/resources.html

The latest version of Surge, including support for written dialogue, and expanded syntactic coverage based on the Penn TreeBank.

SURG-SP

http://homepages.inf.ed.ac.uk/ccallawa/resources.html

Systemic Unification Reusable Grammar for Spanish is a large scale Spanish grammar allowing systems which already use FUF/SURGE for English NLG to be able to generate syntactically (and many times semantically) equivalent text in Spanish when new lexical items are introduced. SURG-SP makes use of inputs almost identical to the English version Surge 2.3.

SURG-IT

http://homepages.inf.ed.ac.uk/ccallawa/resources.html

The Italian version of Surge 2.3.

TG/2

http://www.dfki.de/pas/f2w.cgi?lts/tg2-e

is a shallow verbalizer that can be quickly accustomed to new domains and tasks. It combines context-free grammars with templates and canned text in a single formalism. Thus the granularity of the language model may depend on the application needs. The system currently runs under Solaris 2.5. It is available freely under a research license.

Siggen-logo.gifThis page was imported semi-automatically from the NLG Resources Wiki which was run by ACL SIGGEN in the years 2005–2009. Please correct conversion errors and help update its contents.

Now this page is associated with the Natural Language Generation Portal.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: VxWorks-6.9是一个实时操作系统,具有可下载内核模块(Downloadable Kernel Module)功能。可下载内核模块是一种可以在运行时加载和卸载的软件组件,可以很方便地扩展系统功能或增加新的设备驱动程序。 下载运行可下载内核模块(.o文件)的过程如下: 1. 编写或获取所需的内核模块源代码,并将其编译为目标文件(.o文件)。 2. 将目标文件(.o文件)通过FTP、TFTP或其他网络传输工具,传输到运行VxWorks-6.9的目标设备上。 3. 在VxWorks-6.9中使用提供的命令进行内核模块的加载和运行。例如,可以使用ld命令来将目标文件载入内存,并调用模块的初始化函数。 在加载和运行内核模块之前,需要确定相应的模块位置和入口点等参数。可以通过功能丰富的命令行接口来操作内核模块,命令如下: - ld <filename>:将指定的目标文件加载到内存中。 - lsSym <symbolname>:查看某个模块导出的符号。 - callFunc <symbolname>:调用符号所代表的函数。 通过这些命令,可以将内核模块成功加载到VxWorks-6.9操作系统中,并运行模块的初始化函数,从而实现相应的功能扩展或设备驱动。 总之,VxWorks-6.9具有可下载内核模块的功能,允许用户在运行时加载和卸载软件组件,从而灵活扩展系统功能或增加新设备的驱动程序。加载内核模块的过程包括将目标文件传输到目标设备上,并通过相关命令进行加载和运行。 ### 回答2: VxWorks是一种实时操作系统,可在嵌入式系统中运行。VxWorks-6.9是VxWorks系列操作系统的一个版本。在VxWorks-6.9中,可通过下载和运行可加载内核模块(Downloadable Kernel Module)来扩展系统功能。 可加载内核模块是一种动态加载到系统内核的代码,用于增加新的驱动程序、文件系统或其他系统功能。这些模块以.o文件的形式提供,使用工具链将其编译成.o文件。 下载和运行可加载内核模块可以分为以下步骤: 1. 编写可加载内核模块的源代码,并使用VxWorks提供的工具链(如GNU工具链)进行编译。编译过程将生成.o文件。 2. 将生成的.o文件移动到目标嵌入式系统上,可以通过网络、串口或其他可用的通信方式进行传输。 3. 在目标系统上使用VxWorks的命令行界面或其他管理工具进入系统。 4. 执行VxWorks命令,将可加载内核模块从外部存储器下载到系统内核中。命令可以是"ld"或"load"。 5. 检查可加载内核模块是否成功加载。可以使用"i"或"i"命令。如果成功加载,将显示已加载的模块列表。 6. 执行已加载的可加载内核模块。可以使用"->"命令,后跟模块名和参数。模块将开始执行其提供的功能。 总的来说,下载和运行VxWorks-6.9的可加载内核模块需要在目标系统上将.o文件传输到内核,并使用VxWorks命令完成加载和执行操作。这样,就可以扩展系统的功能并满足特定需求。 ### 回答3: VxWorks是一款实时嵌入式操作系统,具有强大的可定制性和高度可靠性。在VxWorks 6.9版本中,可下载的内核模块是一种将特定功能组件编译为二进制代码的方法,这些组件可以在运行时加载和执行。 首先,为了创建可下载的内核模块,需要使用VxWorks提供的开发工具链。这些工具链包括编译器、连接器和调试器等,可以通过Wind River Systems或其他渠道获得。 编写可下载内核模块的源代码后,使用工具链中的编译器将其编译为目标文件(.o文件)。在VxWorks中,目标文件通常使用GNU编译器集合(GCC)生成。 接下来,需要将目标文件(.o文件)传输到目标设备。可以使用多种方法进行传输,比如使用FTP、TFTP或串行连接。 一旦目标文件传输到目标设备,就可以使用VxWorks shell或类似的工具加载和运行该模块。在shell命令行中,使用`ld`命令将目标文件加载到内核地址空间中。 加载完成后,可以使用VxWorks提供的API或调试工具进行对该模块的调用和测试。这些API可以在VxWorks文档中找到,并采用C或其他支持的编程语言进行调用。 需要注意的是,使用可下载的内核模块应遵循VxWorks的编程规范和安全性要求,以确保系统的稳定性和可靠性。此外,编写和加载可下载的内核模块需要具备相关的嵌入式系统开发经验和知识。 总而言之,通过VxWorks提供的工具链和API,可以编写、加载和运行可下载的内核模块。这种使用二进制代码实现模块化功能的方法提高了系统的可定制性和灵活性,并为嵌入式应用提供了强大的运行环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值