Documentation
See the documentation for a technical overview of the platform and train your first agent
Quick Start
1. Install uv (Python package manager)
# macOS/Linux:
$ curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows:
PS> powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
2. Install ReinforceNow
uv init && uv venv --python 3.11
source .venv/bin/activate # Windows: .\.venv\Scripts\Activate.ps1
uv pip install rnow
3. Authenticate
rnow login
4. Create & Run Your First Project
rnow init --template sft
rnow run
That's it! Your training run will start on ReinforceNow's infrastructure. Monitor progress in the dashboard.
Core Concepts
Go from raw data to a reliable AI agent in production. ReinforceNow gives you the flexibility to define:
1. Reward Functions
Define how your model should be evaluated using the @reward decorator:
from rnow.core import reward, RewardArgs
@reward
async def accuracy(args: RewardArgs, messages: list) -> float:
"""Check if the model's answer matches ground truth."""
response = messages[-1]["content"]
expected = args.metadata["answer"]
return 1.0 if expected in response else 0.0
→ Write your first reward function
2. Tools (for Agents)
Give your model the ability to call functions during training:
from rnow.core import tool
@tool
def search(query: str, max_results: int = 5) -> dict:
"""Search the web for information."""
# Your implementation here
return {"results": [...]}
→ Train an agent with custom tools
3. Training Data
Create a train.jsonl file with your prompts and reward assignments:
{"messages": [{"role": "user", "content": "Balance the equation: Fe + O2 → Fe2O3"}], "rewards": ["accuracy"], "metadata": {"answer": "4Fe + 3O2 → 2Fe2O3"}}
{"messages": [{"role": "user", "content": "Balance the equation: H2 + O2 → H2O"}], "rewards": ["accuracy"], "metadata": {"answer": "2H2 + O2 → 2H2O"}}
{"messages": [{"role": "user", "content": "Balance the equation: N2 + H2 → NH3"}], "rewards": ["accuracy"], "metadata": {"answer": "N2 + 3H2 → 2NH3"}}
→ Learn about training data format
Contributing
We welcome contributions! ❤️ Please open an issue to discuss your ideas before submitting a PR
Metadata
Release files for rnow 0.4.37
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rnow-0.4.37.tar.gz | 1.4 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rnow-0.4.37-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.9 MB
Release files / rnow-0.4.37.tar.gz
| Download URL | rnow-0.4.37.tar.gz |
|---|---|
| Size | 1.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
86c32c31c58c6160736f29b8639d8e2d201aba83f9468fc8a46d5904cec95562
|
|
BLAKE2b-256 checksum How to use checksums |
fe019dd0c855d314bd27e3134135b8c58b399821d8fefe6999b52b94d0654678
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / rnow-0.4.37-py3-none-any.whl
| Download URL | rnow-0.4.37-py3-none-any.whl |
|---|---|
| Size | 1.5 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7b1cdfb4ac7dc2f996ca73429b9e40924bec12a6587e27786d93d6deeb540304
|
|
BLAKE2b-256 checksum How to use checksums |
ccab4a3b65c952701f7cff87f720197bf045b3059b7a996af0baf6bb604560bf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|