Skip to main content

A Natural Language processing parser for Zork-style games

Project description

Natan Logical Engine (NLE)

Overview

Natan Logical Engine (NLE) is a simple natural language parser designed to interpret player commands in text-based games or interactive fiction. It processes input strings, removes stop words, resolves pronouns based on context, and extracts structured commands (verb and object) from user input.

Features

  • Stop Word Removal: Ignores common words that do not affect command meaning.
  • Pronoun Resolution: Substitutes pronouns with the last referenced object for contextual understanding.
  • Syntactic Analysis: Identifies verbs and objects from the input and returns structured commands.
  • Logging: Provides detailed debug and info logs for development and debugging.

Usage

Example usage in Python:

from NLEParser.parser import NLEParser

config = {
    "language": "en-us",
}
vocabulary = {
    "pronouns": {"he", "she", "it", "this", "that"},
    "verbs": {"take", "look", "use"},
    "objects": {"key", "door", "box"},
}
stop_words = {"the", "a", "an", "of", "in", "on", "at", "to"}

parser = NLEParser(config, vocabulary, stop_words)

parsed_command = parser.parse("take the key")
print(parsed_command)  # Output: {'verb': 'take', 'object': 'key'}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nleparser-0.2.7.tar.gz (3.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nleparser-0.2.7-py3-none-any.whl (3.5 kB view details)

Uploaded Python 3

File details

Details for the file nleparser-0.2.7.tar.gz.

File metadata

  • Download URL: nleparser-0.2.7.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for nleparser-0.2.7.tar.gz
Algorithm Hash digest
SHA256 df21dd5d601136498a171515aa40f3fd023be93a9e90e2bc16becb2b69080d90
MD5 2ee2318f2163ccc4c33685ca7348f813
BLAKE2b-256 70f2c2e69632315d3d6f981a16ff5c262db48233d6894fcc3e56965f0b26996b

See more details on using hashes here.

File details

Details for the file nleparser-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: nleparser-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 3.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for nleparser-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 6a0c17472f6a74ddee745f8f315b356a15122369657437cc0e8dc6b099385672
MD5 a736c384bc9576092628bd7e80e35b35
BLAKE2b-256 4c3f7014744345dd5cb3a48ed066042b8c080fe5735aa12ab8b3ad6a96171156

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page