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.6.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.6-py3-none-any.whl (3.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nleparser-0.2.6.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.6.tar.gz
Algorithm Hash digest
SHA256 a9bf1de5708cb7b1f892e99fb4b150948a9a7cae32e9806aa87e03cd2e5bd93b
MD5 6644e56a7e88ccd93289173716bb8587
BLAKE2b-256 c4ecbe67b752b28b4969514d0fc3882431a383416b9fb9e2a624037d74aae270

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nleparser-0.2.6-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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 fab112ad4025e1a314947fbccac378b62c42d3660b478c9cce86f60c747bf0ed
MD5 c46d183dc908cac703c0fb469001ae43
BLAKE2b-256 73afc7c918b9f2bf4c473a3871d17ae8d413124b0733c2f8453896db45c15d07

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