loops-tinker
Drop-in compatibility shim that provides the tinker package namespace backed
by the loops SDK.
Installation
pip install loops-tinker
Usage
Existing code that uses import tinker works without modification:
import tinker
service_client = tinker.ServiceClient(training_project_id="proj_abc123")
training_client = service_client.create_lora_training_client(
base_model="Qwen/Qwen3-8B", rank=16,
)
sampling_client = service_client.create_sampling_client(model="Qwen/Qwen3-8B")
All types are also available under tinker.types:
from tinker.types import SamplingParams, Datum, ModelInput
from tinker.types.tensor_data import TensorData
Using with tinker-cookbook
tinker-cookbook depends on tinker, but you can swap in loops-tinker using
uv's override-dependencies to prevent the original tinker from being installed.
First add the override to pyproject.toml before installing any dependencies
(there is no CLI command for this). If tinker-cookbook is added first, the
original tinker gets installed and its files conflict with loops-tinker:
[tool.uv]
override-dependencies = [
"tinker ; python_version < '0'",
]
Then add the dependencies:
uv init
uv add tinker-cookbook
uv add "loops @ git+https://github.com/basetenlabs/loops#subdirectory=loops"
uv add "loops-tinker @ git+https://github.com/basetenlabs/loops#subdirectory=loops-tinker"
loops is a transitive dep of loops-tinker but must be listed directly
because [tool.uv.sources] only applies to direct dependencies. This won't
be needed once loops is published to PyPI.
The tinker namespace will be provided by loops-tinker instead of the
original package.
Metadata
Release files for baseten-loops-tinker 0.16.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| baseten_loops_tinker-0.16.1.tar.gz | 88.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| baseten_loops_tinker-0.16.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 99.2 kB
Release files / baseten_loops_tinker-0.16.1.tar.gz
| Download URL | baseten_loops_tinker-0.16.1.tar.gz |
|---|---|
| Size | 88.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
66cd3ffc9f32677b4ee260799b525846ba3dbf232dac50a11de4c5760c9e76f8
|
|
BLAKE2b-256 checksum How to use checksums |
b7e82610617650c73f0ae9518c5e7d889a47b4b6501093902f2f89131827cc84
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / baseten_loops_tinker-0.16.1-py3-none-any.whl
| Download URL | baseten_loops_tinker-0.16.1-py3-none-any.whl |
|---|---|
| Size | 10.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7ae371e6b608b276d104d918d498749a34ca1561fed9b277f7075f5ff0ce4c8d
|
|
BLAKE2b-256 checksum How to use checksums |
0f4d6c517261f84e3c95bd6a800d0d23f581ff10d0fab779608524c68f925caa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency log