Skip to content

Commit 1adc910

Browse files
committed
Update README with pypi
1 parent 640ba36 commit 1adc910

1 file changed

Lines changed: 19 additions & 20 deletions

File tree

‎README.md‎

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -35,17 +35,27 @@ This repository provides an extensible inference engine for using RLMs around st
3535
> [!NOTE]
3636
> This repository contains inference code for RLMs with support for various sandbox environments. Open-source contributions are welcome. This repository is maintained by the authors of the paper from the MIT OASYS lab.
3737
38-
<!-- ## Installation
39-
```
40-
pip install rlm
41-
```
42-
To install the latest from `main`:
38+
## Quick Setup
39+
```bash
40+
pip install rlms
4341
```
44-
pip install git+https://github.com/alexzhang13/rlm.git
42+
43+
The default RLM client uses a REPL environment that runs on the host process through Python `exec` calls. It uses the same virtual environment as the host process (i.e. it will have access to the same dependencies), but with some limitations in its available global modules. As an example, we can call RLM completions using GPT-5-nano:
44+
```python
45+
from rlm import RLM
46+
47+
rlm = RLM(
48+
backend="openai",
49+
backend_kwargs={"model_name": "gpt-5-nano"},
50+
verbose=True, # For printing to console with rich, disabled by default.
51+
)
52+
53+
print(rlm.completion("Print me the first 100 powers of two, each on a newline.").response)
4554
```
46-
``` -->
4755

48-
## Quick Setup
56+
<details>
57+
<summary>Manual Setup</summary>
58+
4959
Set up the dependencies with `uv` (or your virtual environment of choice):
5060
```bash
5161
curl -LsSf https://astral.sh/uv/install.sh | sh
@@ -63,18 +73,7 @@ To run a quick test, the following will run an RLM query with the OpenAI client
6373
make quickstart
6474
```
6575

66-
The default RLM client uses a REPL environment that runs on the host process through Python `exec` calls. It uses the same virtual environment as the host process (i.e. it will have access to the same dependencies), but with some limitations in its available global modules. As an example, we can call RLM completions using GPT-5-nano:
67-
```python
68-
from rlm import RLM
69-
70-
rlm = RLM(
71-
backend="openai",
72-
backend_kwargs={"model_name": "gpt-5-nano"},
73-
verbose=True, # For printing to console with rich, disabled by default.
74-
)
75-
76-
print(rlm.completion("Print me the first 100 powers of two, each on a newline.").response)
77-
```
76+
</details>
7877

7978
## REPL Environments
8079
We support two types of REPL environments -- isolated, and non-isolated. Non-isolated environments (default) run code execution on the same machine as the RLM (e.g. through `exec`), which is pretty reasonable for some local low-risk tasks, like simple benchmarking, but can be problematic if the prompts or tool calls can interact with malicious users. Fully isolated environments used Cloud-based sandboxes (e.g. Prime Sandboxes, [Modal Sandboxes](https://modal.com/docs/guide/sandboxes)) to run code generated by the RLM, ensuring completely isolation from the host process. Environments can be added, but we natively support the following: `local` (default), `modal`, `prime`.

0 commit comments

Comments
 (0)