Metadata-Version: 2.4
Name: alfredo-ai
Version: 0.1.1
Summary: A fast, from-scratch NLP library for learning how AI works under the hood
Author-email: Mahendra Ande <andemahendra26@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/you/alfredo
Project-URL: Documentation, https://github.com/you/alfredo/blob/main/docs/HOW_IT_WORKS.md
Project-URL: Repository, https://github.com/you/alfredo
Keywords: nlp,tf-idf,textrank,sentiment-analysis,learning,education
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Intended Audience :: Education
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.24
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Dynamic: license-file

# Alfredo

*See exactly how TF-IDF, TextRank, and sentiment scoring work — with code you can read in 5 minutes — running at production speed.*

Alfredo is not a wrapper around an LLM API. It's a self-contained, offline, dependency-light NLP toolkit built for two audiences at once: learners who want to see the actual math behind NLP tasks, and developers who want something fast enough to ship without API keys, network calls, or per-request costs.

## Install

```bash
pip install alfredo-ai
```

## Usage

```python
import alfredo as nlp

nlp.summarize("Long article text...", num_sentences=2)
nlp.sentiment("This product is amazing!")
nlp.classify("Free money now!!!", labels=["spam", "not spam"])
nlp.extract_keywords("Machine learning is a subset of artificial intelligence...")
```

## Why Alfredo

| Goal | Why it matters |
|---|---|
| No external AI API calls | Works offline, no API key, no per-call cost, no network latency |
| Readable source code | Every algorithm should be understandable in one sitting |
| Fast (NumPy-vectorized) | Not "slow but educational" — usable in real projects |
| Documented reasoning | [`docs/HOW_IT_WORKS.md`](docs/HOW_IT_WORKS.md) explains the *why*, not just the *what* |
| Benchmarked | Speed claims backed by numbers vs. nltk/spaCy/textblob |

## Benchmarks

Run `python benchmarks/benchmark.py` and paste real numbers here once available.

| Task | Alfredo | nltk | textblob |
|---|---|---|---|
| summarize | — | — | — |
| sentiment | — | — | — |
| extract_keywords | — | — | — |

## Development

```bash
pip install -e ".[dev]"
pytest tests/
python benchmarks/benchmark.py
```

## License

MIT — see [LICENSE](LICENSE).
