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.5.tar.gz (3.7 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.5-py3-none-any.whl (3.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nleparser-0.2.5.tar.gz
  • Upload date:
  • Size: 3.7 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.5.tar.gz
Algorithm Hash digest
SHA256 55c594bc523f2dd90acfe3db87ed9d1d327c53fdd3ad3114b4459bcd8738f050
MD5 3b123e8c64832ae62e055d17d128adcc
BLAKE2b-256 9eb51d432776db0561a471288e85aed038ea7ac5538d176e5a20866251bfe256

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nleparser-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 3.6 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 1e0a70aab4a4cfaf113b27d43d497263dbd97d9b2d96cb5207b84ae07abdc62c
MD5 cb97bc080df408b8694c39fb0834f045
BLAKE2b-256 0b64f359239e6db47a354344b4995d290ff0e1bbdc7eef9c0a1fe19abac99f2d

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