Skip to content

Commit 7bd5061

Browse files
committed
deploy: 583690d
1 parent 4c65d26 commit 7bd5061

File tree

5 files changed

+2
-2
lines changed

5 files changed

+2
-2
lines changed
-57 Bytes
Binary file not shown.

.doctrees/environment.pickle

-19 Bytes
Binary file not shown.

_sources/blogs/introducing_slime.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ It wasn’t always like this: no one forks PyTorch just for a new dataloader. We
3636

3737
slime views the data sampling in RL differently. We manage all SGLang servers within slime with [sgl-router](https://github.com/sgl-project/sglang/tree/main/sgl-router) and provide an interface for the data generation component, **allowing users to inject custom logic and freely interact with SGLang servers**. Unleash their creativity.
3838

39-
![slime architecture](/images/blog/slime/slime-arch.png)
39+
![slime architecture](/imgs/arch.png)
4040

4141
With the sgl-router, users only need to send HTTP requests to a single endpoint. By exposing this endpoint, complex agent environments can directly interact with slime through an OpenAI-compatible API — no need to modify the environment, and training-deployment consistency is preserved.
4242

blogs/introducing_slime.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -482,7 +482,7 @@ <h2>Customizability Brings Freedom<a class="headerlink" href="#customizability-b
482482
<p>A prevailing misconception within the RL community is the need for separate frameworks for different tasks: one for plain math, one for multi-turn tool calling, one for asynchronous training, one for agentic tasks, and so on. Forking and maintaining multiple frameworks is dreadful, leading to time-wasting bugfix cherry-picking, or worse, training crashes by missing patches.</p>
483483
<p>It wasn’t always like this: no one forks PyTorch just for a new dataloader. We believe the current chaos stems from the trap of dictating how people should build their applications. If we insist on defining a universal template for every rollout scenario, we’ll inevitably create an RL framework that meets only a fraction of real-world needs.</p>
484484
<p>slime views the data sampling in RL differently. We manage all SGLang servers within slime with <a class="reference external" href="https://github.com/sgl-project/sglang/tree/main/sgl-router">sgl-router</a> and provide an interface for the data generation component, <strong>allowing users to inject custom logic and freely interact with SGLang servers</strong>. Unleash their creativity.</p>
485-
<p><img alt="slime architecture" src="images/blog/slime/slime-arch.png" /></p>
485+
<p><img alt="slime architecture" src="imgs/arch.png" /></p>
486486
<p>With the sgl-router, users only need to send HTTP requests to a single endpoint. By exposing this endpoint, complex agent environments can directly interact with slime through an OpenAI-compatible API — no need to modify the environment, and training-deployment consistency is preserved.</p>
487487
<p>Regarding training schemes, slime uses Ray for resource management, enabling <strong>colocated</strong> (same GPUs) or <strong>decoupled</strong> (separate GPUs) setups with a single flag (<code class="docutils literal notranslate"><span class="pre">--colocate</span></code>).</p>
488488
<p>And with Ray’s asynchronous execution via <code class="docutils literal notranslate"><span class="pre">.remote()</span></code>, slime naturally supports asynchronous training. Changing synchronization behavior is as simple as moving the <code class="docutils literal notranslate"><span class="pre">ray.get</span></code> operation. And to make experimenting with different strategies easy, we didn’t wrap the code with trainer classes, but simply exposed the training loop in entrypoint <code class="docutils literal notranslate"><span class="pre">train.py</span></code>.</p>

zh/.doctrees/environment.pickle

0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)