river-client
Python client for the River ML training API — sampling, LoRA fine-tuning, and reinforcement learning against River-hosted models.
Installation
pip install river-client
Requires Python 3.12+.
Quick start
import river_client as river
client = river.Client(api_key="your-key", endpoint="api.river.ai")
# Stateless sampling from a base model
samples = client.sample(
"What is 2+2?",
base_model="Qwen/Qwen3.6-35B-A3B-FP8",
max_tokens=50,
)
print(samples[0].text)
# Training with a session
with client.session() as session:
model = session.create_model(
base_model="Qwen/Qwen3.6-35B-A3B-FP8",
lora=river.LoraConfig(rank=16),
)
# Forward + backward, then an optimizer step
result = model.forward_backward(data, loss_fn="cross_entropy")
model.optim_step(lr=1e-4)
# Sample from the current weights
sample_groups = model.sample("Continue:", max_tokens=100)
AI agent skill
The package bundles an agent skill — a SKILL.md that teaches AI coding
agents (Claude Code and compatible tools) the current training API:
train_step semantics, data formats, RL/SFT/distillation loop patterns,
and fault-tolerant auto-recovery. Because it ships inside the wheel, the
skill always matches the installed client version.
Install it into your agent's skills directory:
python -m river_client.skill --install
This copies the skill into ~/.claude/skills/; pass --dest for a
different location (e.g. a project's .claude/skills/). Run without
--install to print the bundled skill's path instead.
License
Apache-2.0. See LICENSE.
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 river_client-0.9.1.tar.gz.
File metadata
- Download URL: river_client-0.9.1.tar.gz
- Upload date:
- Size: 128.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.11.30 {"installer":{"name":"uv","version":"0.11.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
053d87920faf72630f76f1fc2924e440a5294dccc69f928b0334f41bf7b0bb2d
|
|
| MD5 |
d3d737b116e8c19d7505e84ba5198c85
|
|
| BLAKE2b-256 |
2421b121e577d8a858548e77a87983e48d79d99c8b0655f561bc37fd020be012
|
File details
Details for the file river_client-0.9.1-py3-none-any.whl.
File metadata
- Download URL: river_client-0.9.1-py3-none-any.whl
- Upload date:
- Size: 141.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.11.30 {"installer":{"name":"uv","version":"0.11.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa02cc414a3930c15929e98abbb71a65e3b9b433d79067266b59dbb513881e56
|
|
| MD5 |
dc2003c7249db1701c44677a9d0e87d2
|
|
| BLAKE2b-256 |
2c6a85ff498df80247924f63aecb9ffdfc742070e2588b39bad33266fc293388
|