Skip to main content

A Natural language processing parser for Zork-style games

Project description

Natan Logical Engine (NLE)

Natan Logical Engine

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 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.1.2.tar.gz (3.4 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.1.2-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for nleparser-0.1.2.tar.gz
Algorithm Hash digest
SHA256 a2072789120cea99fe9ade549b7d07534dc4388fed1aff038de00992c87cc109
MD5 d535d627f51fc50986d24927247b0ad4
BLAKE2b-256 92c6a84ae8315f632a83db55b9061d5caf123a419089a3c13cc63480db5cdcd4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nleparser-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 3.8 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.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3c39efc1530ab703729460aab8dbfa43fd1ceada4d25ed1b54ff8b2589e65497
MD5 206796a6e676a213401e584bd916a95e
BLAKE2b-256 235ba9c02b37605703cb6fb9512119b0649fd5b7ccec9263687223f05ee34bba

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