EASE-TX: Enhanced AI Scoring Engine for Text Analysis
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
EASE-TX: Enhanced AI Scoring Engine for Text Analysis
EASE-TX is a lightweight, text-only version of the Enhanced AI Scoring Engine (EASE). It provides advanced text comparison and similarity analysis capabilities, combining multiple NLP techniques to analyze and compare text documents effectively.
Installation
pip install easetx
After installation, you'll need to download the required NLTK data:
# Use the provided utility script
python download_nltk_data.py
Note: For spell-checking functionality, you'll need to install aspell on your system. This is optional, and the package will work without it.
Requirements
- Python 3.7+
- NumPy (1.16.5 - 1.23.0)
- SciPy (1.7.0 - 1.9.0)
- scikit-learn
- NLTK
- python-Levenshtein
Dependencies are automatically installed when you install the package via pip.
Quick Start
from easetx import calculate_ease_score, get_detailed_ease_score, compare_texts
# Calculate a simple EASE score (0-1 scale)
text = "Machine learning is a subset of artificial intelligence that focuses on developing systems that can learn from data."
score = calculate_ease_score(text)
print(f"EASE Score: {score:.4f}")
# Get detailed metrics about the text
details = get_detailed_ease_score(text)
print(f"Text length: {details['length_metrics']['text_length']}")
print(f"Word count: {details['length_metrics']['word_count']}")
print(f"Grammar issues: {details['error_metrics']['grammar_issues']}")
# Compare two texts directly
text2 = "AI and machine learning enable computers to improve through experience."
similarity, confidence = compare_texts(text, text2)
print(f"Similarity: {similarity:.4f}")
print(f"Confidence: {confidence:.4f}")
Features
- EASE Score Calculation: Get a quality score for any text
- Detailed Metrics: Analyze text complexity, grammar, vocabulary diversity and more
- Text Comparison: Compare texts based on their quality metrics
- JSON Output: All metrics available in structured JSON format for easy integration
Examples
The examples directory contains sample code demonstrating various features:
basic_usage.py: Shows how to calculate basic and detailed EASE scorestext_comparison.py: Demonstrates text comparison functionalityadvanced_usage.py: Shows more advanced features like batch processing and JSON export
Run examples from the project root directory:
python examples/basic_usage.py
python examples/text_comparison.py
python examples/advanced_usage.py
Project Structure
EASE-TX/
├── LICENSE # Apache 2.0 license file
├── Readme.md # This file
├── download_nltk_data.py # Utility to download required NLTK resources
├── pyproject.toml # Python project configuration
├── requirements.txt # Project dependencies
├── setup.py # Package installation configuration
├── data/ # Data files used by the package
├── easetx/ # Core package code
├── examples/ # Example usage files
└── tests/ # Unit tests
Overview
EASE-TX provides functions that can score arbitrary free text. It is licensed under the Apache 2.0, please see LICENSE for details. The goal is to provide a high-performance, scalable solution that can analyze text quality and similarity.
Questions?
Feel free to open an issue in the issue tracker.
How to Contribute
Contributions are very welcome. The easiest way is to fork this repo, and then make a pull request from your fork. The first time you make a pull request, you may be asked to sign a Contributor Agreement.
The current backlog is in the issues section. Please feel free to open new issues or work on existing ones.
Reporting Security Issues
Please do not report security issues in public. Please email mohamedi<<at>tcd<dot>>ie
Last Updated: May 2025
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file easetx-0.1.5.tar.gz.
File metadata
- Download URL: easetx-0.1.5.tar.gz
- Upload date:
- Size: 22.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7defc4ea7fd73a4063f06d6e885bbe474f924b3e340fa6ea0fae8c3be4306e19
|
|
| MD5 |
7b0af3b33f38f8efbaa456bab0b90dc6
|
|
| BLAKE2b-256 |
cef9dc191525e22d5e10d04981f95e020c5bda4a793287687725ab11731221fe
|
File details
Details for the file easetx-0.1.5-py3-none-any.whl.
File metadata
- Download URL: easetx-0.1.5-py3-none-any.whl
- Upload date:
- Size: 21.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e39da07cac8668c60cc30c88c3bee373c0f1d1caa52da66460857e13d0b0889
|
|
| MD5 |
024506c77d12da169470ea291601f1a3
|
|
| BLAKE2b-256 |
982da568bb92b6d017e05e4b922eb02b03091eb79f5527ec6938345ad79ba9c4
|