Tensorless
ML with maximum automation and minimum setup.
import tensorless as tl
tl.train("./data")
That's it. Tensorless inspects your dataset, figures out what kind of
task you're trying to solve, builds and configures a model, trains it,
validates it, checkpoints it, and saves a single portable model.tl
file you can move anywhere.
model = tl.run("model.tl") # interactive chat, if it's a text model
# or
model = tl.load("model.tl")
model.predict(...)
Simple by default. Powerful when you need it:
tl.train(
"./data",
d_model=512,
layers=6,
learning_rate=3e-4,
batch_size=32,
)
Why Tensorless
Most ML frameworks assume you already know what model you want, how big it should be, which optimizer and learning rate to use, and how to wire up checkpointing and resumption yourself. Tensorless flips that: it makes a reasonable, working choice for all of that automatically, and lets you override exactly the parts you care about.
It also remembers what it already did. Run tl.train("./data") twice on
the same dataset and it won't retrain — it'll just hand you back the
model it already trained. Change the data, and it retrains. Get
interrupted partway through a long run, and the next call resumes right
where it left off. This is the Smart Auto Check, and it's the core
idea the whole framework is built around.
Install
pip install -e .
See docs/installation.md for details and requirements.
Documentation
| Doc | What's in it |
|---|---|
| Installation | Requirements, install steps, verifying your setup |
| Quick Start | The fastest path to a trained model |
| Beginner Tutorial | A guided, from-scratch walkthrough |
| Automatic Mode | How auto-detection and auto-configuration work, and the Smart Auto Check |
| Training | tl.train() in depth, all supported tasks and data formats |
| Inference | tl.run(), tl.load(), and the prediction API |
| Checkpointing & Resume | How checkpoints work and how resumption is decided |
The .tl Format |
What's inside a .tl file and why it's portable |
| Configuration | Every override you can pass, and what it does |
| CLI | tensorless train / run / inspect / info |
| API Reference | Full function/class signatures |
| Examples | Worked examples for each supported task |
| Troubleshooting | Common errors and what to do about them |
| Architecture | How the codebase is organized, for contributors |
| Contributing | How to add models, backends, or data formats |
| Roadmap | What's planned |
| Limitations | What Tensorless deliberately doesn't do (yet) |
Supported today
- Text generation (language modeling) from
.txt/.mdfiles or JSON/JSONL with atextfield - Text classification from a directory of class subfolders (
positive/,negative/, ...) or labeled JSON/JSONL - Tabular classification and regression from CSV/TSV/JSON/JSONL with a target column
Project status
Tensorless is an early-stage, actively developed framework. The core loop — inspect, auto-configure, train, checkpoint, save, reload, infer — is real and tested end-to-end (see tests/). See docs/limitations.md for what's intentionally out of scope right now, and docs/roadmap.md for what's next.
License
MIT
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 tensorless-0.1.0.tar.gz.
File metadata
- Download URL: tensorless-0.1.0.tar.gz
- Upload date:
- Size: 60.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51c798893747a2d707344823b4fb02630064b4b29e1ff28eb4e60d89efc2cc7d
|
|
| MD5 |
a908e650098de18287ab634b4d649c31
|
|
| BLAKE2b-256 |
3fa2b1adcf853ba794ac45d89335ed0009bf1d8d1a8259c6d0d0e9b75d32793f
|
File details
Details for the file tensorless-0.1.0-py3-none-any.whl.
File metadata
- Download URL: tensorless-0.1.0-py3-none-any.whl
- Upload date:
- Size: 41.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9db1bafaa4e73d5ebdac9d7a00eae1d996da8fa7bc381d2cd6c258bd5089e55f
|
|
| MD5 |
9c533fc921d3f827b88113ea456e292d
|
|
| BLAKE2b-256 |
cb82b434cf58a844cfa64f38b29b33f2cd0fa71cb0b16b9be53245b026e9a31a
|