Item Extractor
lightweight feature extraction that turns natural-language into structured JSON of type tasks, events, todos, etc...
Installation
Choose the installation method that fits your use case:
1. Standard Installation (Production / Inference)
If you only need to run existing agents, install the core package. This keeps the installation lightweight and bundles the standard spaCy en_core_web_md model automatically:
uv add item_extractor
# or via pip
pip install item_extractor
2. Notebook Installation (Development / Intent Classification Custom Agent Training)
If you want to use our interactive Jupyter Notebooks to design, benchmark, and train your own custom agent models, install the package with the notebook extra dependencies:
uv add "item_extractor[notebook]"
# or via pip
pip install "item_extractor[notebook]"
How to use
Use the built-in components to run an agent directly in your Python application:
from item_extractor import extract
items = extract("Organize the garage")
print(response) # Returns Todo(title='Organize the garage', description='', type=<ItemType.TODO: 'todo'>, completed=False)
Creating Custom Intent Classification Agent Model
If you installed the package with the [notebook] extras, you can create and fine-tune your own agent architectures.
- Clone this repository to access the starter templates:
git clone https://github.com/UnknwnDev/item-extractor.git cd item_extractor
- Open
notebooks/create_custom_agent.ipynband follow the step-by-step guide to train your agent using spaCy embeddings, customize decision thresholds, and evaluate agent trajectories.
Contribution & Local Setup
For developers looking to contribute to the codebase:
# Clone and sync all environment dependencies including notebook extras
git clone https://github.com/UnknwnDev/item-extractor.git
cd item_extractor
uv sync --extra notebook
# Run the test suite
uv run pytest
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Release files for item-extractor 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| item_extractor-1.1.0.tar.gz | 4.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| item_extractor-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.6 kB
Release files / item_extractor-1.1.0.tar.gz
| Download URL | item_extractor-1.1.0.tar.gz |
|---|---|
| Size | 4.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
df5d12029aea28ff0e3a2f084865159333dbd86da82eb8bc5d9b51d2a7965b2b
|
|
BLAKE2b-256 checksum How to use checksums |
edd3f13c7af3a35ad3513b80b8d6ba872dd1bc5ab6d3c130e15fbc0118130b31
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / item_extractor-1.1.0-py3-none-any.whl
| Download URL | item_extractor-1.1.0-py3-none-any.whl |
|---|---|
| Size | 5.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
88900db312495ac483616ff4c612a81612032f0d050a57849813b50ef28a4d7d
|
|
BLAKE2b-256 checksum How to use checksums |
6e69499acafa3b5dc159d749b85a77c6b6f71b07705dc2b4f1fec3234da6082f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|