# ricursiveAI/Ripple-65B-Preview — vLLM serving recipe

> Ricursive's Ripple-65B Preview, a dense 65B model for reasoning and agentic coding with hybrid sliding-window and NoPE full attention, tool calling, and a DFlash2 speculative drafter.

Configuration: hardware `b300` (8× B300) · strategy `single_node_tp` (Tensor Parallel) · variant `default` (NVFP4) · features `reasoning`, `tool_calling`

- Interactive page: https://recipes.vllm.ai/ricursiveAI/Ripple-65B-Preview
- This configuration as JSON: https://recipes.vllm.ai/ricursiveAI/Ripple-65B-Preview.json?hardware=b300

The commands below were rendered for exactly this configuration and take precedence over any example in the guide.

## Other configurations

Change the query string (the same parameters as the page URL) and fetch this URL again. Unknown or incompatible values fall back to the recipe default, so check the Configuration line.

- `hardware`: `b200`, `gb200`, `b300`, `gb300`
- `variant`: `default`, `bf16`
- `strategy`: `single_node_tp` (multi-node strategies also need `nodes=<n>`)
- `features`: comma-separated list of `reasoning`, `tool_calling`, `spec_decoding` (default: `reasoning`, `tool_calling`). Use `features=none` to turn them all off.

## Install

Requires vLLM >= 0.33.0 (not released yet — nightly wheel).

vLLM 0.33.0 isn't released yet — nightly required. Nightly wheels are CUDA 13 (cu130) only; the host needs an r580+ NVIDIA driver.

```bash
uv venv
source .venv/bin/activate
uv pip install -U vllm --pre \
  --extra-index-url https://wheels.vllm.ai/nightly/cu130 \
  --extra-index-url https://download.pytorch.org/whl/cu130 \
  --index-strategy unsafe-best-match
```

Docker image: `vllm/vllm-openai:nightly`

## Serve

```bash
vllm serve ricursiveAI/Ripple-65B-Preview-NVFP4 \
  --tensor-parallel-size 1 \
  --reasoning-parser ripple \
  --enable-auto-tool-choice \
  --tool-call-parser ripple
```

Docker equivalent:

```bash
docker run --gpus all \
  --privileged --ipc=host -p 8000:8000 \
  -v ~/.cache/huggingface:/root/.cache/huggingface \
  vllm/vllm-openai:nightly ricursiveAI/Ripple-65B-Preview-NVFP4 \
  --tensor-parallel-size 1 \
  --reasoning-parser ripple \
  --enable-auto-tool-choice \
  --tool-call-parser ripple
```

## Guide

> Background reference. Commands in it are examples and may target another configuration — use the Serve section above.

### Overview

[Ripple-65B Preview](https://huggingface.co/ricursiveAI/Ripple-65B-Preview)
is a dense 65B model from Ricursive Intelligence. Its 80 layers alternate four
1024-token sliding-window layers with one NoPE full-attention layer, and it
supports a 2M-token context. The NVFP4 checkpoint fits on one B200/B300.

Ripple decides per turn whether to reason, so `reasoning_content` is empty
when it answers directly.

### Client usage

```bash
curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "ricursiveAI/Ripple-65B-Preview-NVFP4",
    "messages": [{"role": "user", "content": "Write a Python function that reverses a linked list."}]
  }'
```

### References

- [Ripple-65B Preview](https://huggingface.co/ricursiveAI/Ripple-65B-Preview)
- [Ripple-65B Preview NVFP4](https://huggingface.co/ricursiveAI/Ripple-65B-Preview-NVFP4)
- [DFlash2 drafter](https://huggingface.co/ricursiveAI/Ripple-65B-Preview-DFlash2)
- [vLLM PR #65745](https://github.com/vllm-project/vllm/pull/65745)
