Text Generation
Safetensors
GGUF
English
dory
decision-making
lora
eider
bf16
nvfp4
llama-cpp
conversational
decision-model
Instructions to use rdaum/decisive-dory with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use rdaum/decisive-dory with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf rdaum/decisive-dory:Q8_0 # Run inference directly in the terminal: llama cli -hf rdaum/decisive-dory:Q8_0
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf rdaum/decisive-dory:Q8_0 # Run inference directly in the terminal: llama cli -hf rdaum/decisive-dory:Q8_0
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf rdaum/decisive-dory:Q8_0 # Run inference directly in the terminal: ./llama-cli -hf rdaum/decisive-dory:Q8_0
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf rdaum/decisive-dory:Q8_0 # Run inference directly in the terminal: ./build/bin/llama-cli -hf rdaum/decisive-dory:Q8_0
Use Docker
docker model run hf.co/rdaum/decisive-dory:Q8_0
- Llama new
- LM Studio
- Jan
- vLLM
How to use rdaum/decisive-dory with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "rdaum/decisive-dory" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "rdaum/decisive-dory", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/rdaum/decisive-dory:Q8_0
- Ollama
How to use rdaum/decisive-dory with Ollama:
ollama run hf.co/rdaum/decisive-dory:Q8_0
- Unsloth Desktop
- Pi
How to use rdaum/decisive-dory with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf rdaum/decisive-dory:Q8_0
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "rdaum/decisive-dory:Q8_0" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use rdaum/decisive-dory with Docker Model Runner:
docker model run hf.co/rdaum/decisive-dory:Q8_0
- Lemonade
How to use rdaum/decisive-dory with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull rdaum/decisive-dory:Q8_0
Run and chat with the model
lemonade run user.decisive-dory-Q8_0
List all available models
lemonade list
- Hermes Agent
How to use rdaum/decisive-dory with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf rdaum/decisive-dory:Q8_0
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default rdaum/decisive-dory:Q8_0
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use rdaum/decisive-dory with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf rdaum/decisive-dory:Q8_0
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "rdaum/decisive-dory:Q8_0" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Compare base Dory on matched tasks and generalize llama.cpp setup
Browse files- README.md +20 -19
- evaluation/base-comparison.json +107 -0
README.md
CHANGED
|
@@ -141,12 +141,17 @@ NVFP4 uses packed E2M1 weights with E4M3 block scales and an F32 tensor scale in
|
|
| 141 |
These results use **Eider NVFP4 inference with two recurrent loops and no probability calibration**.
|
| 142 |
The 512-question test set was scored after checkpoint selection on a separate 1,024-question validation set.
|
| 143 |
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
|
| 149 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 150 |
|
| 151 |
Accuracy counts any answer tied for the highest target probability as correct.
|
| 152 |
Brier error compares the complete predicted and target distributions.
|
|
@@ -157,7 +162,7 @@ They are not independent final tests. [Full evaluation records](evaluation/nvfp4
|
|
| 157 |
Neither BF16 nor Q8_0 has received a separate full accuracy evaluation.
|
| 158 |
|
| 159 |
The Q8_0 GGUF passed prompt and answer-label parity checks and a 24-request GPU compatibility check across all three answer types.
|
| 160 |
-
On GB10, short requests with changing context had median latency of 62 ms for one question and 191 ms for three questions.
|
| 161 |
Each median used five timed requests. These small checks establish API compatibility, not general accuracy or production throughput.
|
| 162 |
[GGUF test evidence](gguf/provenance.json) records the setup and results.
|
| 163 |
|
|
@@ -191,10 +196,11 @@ hf download rdaum/eider-dory-1.0-4b-decisions \
|
|
| 191 |
For NVFP4, use `--include 'nvfp4/*'` instead of the GGUF filename, then point your runtime at `./dory-decisions/nvfp4`.
|
| 192 |
For BF16, use `--include '*.json' '*.jinja' '*.safetensors' --exclude 'nvfp4/*' 'adapter/*'` instead of the GGUF filename.
|
| 193 |
|
| 194 |
-
### Build with Dory support
|
| 195 |
|
| 196 |
-
These commands require Git, CMake, a C++ compiler
|
| 197 |
-
|
|
|
|
| 198 |
|
| 199 |
```sh
|
| 200 |
git clone https://github.com/ggml-org/llama.cpp llama.cpp-dory
|
|
@@ -202,16 +208,13 @@ git -C llama.cpp-dory fetch origin pull/30306/head
|
|
| 202 |
git -C llama.cpp-dory checkout --detach FETCH_HEAD
|
| 203 |
cmake -S llama.cpp-dory -B llama.cpp-dory/build \
|
| 204 |
-DCMAKE_BUILD_TYPE=Release \
|
| 205 |
-
-DGGML_CUDA=ON
|
| 206 |
-DLLAMA_CURL=OFF \
|
| 207 |
-DLLAMA_BUILD_TESTS=OFF -DLLAMA_BUILD_EXAMPLES=OFF \
|
| 208 |
-DLLAMA_BUILD_SERVER=ON
|
| 209 |
cmake --build llama.cpp-dory/build --target llama-server -j 6
|
| 210 |
```
|
| 211 |
|
| 212 |
-
For another NVIDIA GPU, select its CUDA architecture or omit `CMAKE_CUDA_ARCHITECTURES` for automatic detection.
|
| 213 |
-
The compatibility checks below used GB10.
|
| 214 |
-
|
| 215 |
### Start the server
|
| 216 |
|
| 217 |
```sh
|
|
@@ -219,13 +222,11 @@ The compatibility checks below used GB10.
|
|
| 219 |
--model ./dory-decisions/dory-decisions-Q8_0.gguf \
|
| 220 |
--alias dory-decisions \
|
| 221 |
--host 127.0.0.1 --port 18091 \
|
| 222 |
-
--ctx-size 4096 --
|
| 223 |
-
--threads 4 --threads-batch 4 \
|
| 224 |
-
--batch-size 512 --ubatch-size 512 \
|
| 225 |
-
--fit off --gpu-layers all --no-warmup
|
| 226 |
```
|
| 227 |
|
| 228 |
-
|
|
|
|
| 229 |
|
| 230 |
### Ask a typed question
|
| 231 |
|
|
|
|
| 141 |
These results use **Eider NVFP4 inference with two recurrent loops and no probability calibration**.
|
| 142 |
The 512-question test set was scored after checkpoint selection on a separate 1,024-question validation set.
|
| 143 |
|
| 144 |
+
Base Dory is the original NVIDIA BF16 model quantized with the same NVFP4 recipe used for this fine-tune.
|
| 145 |
+
Both models use the same questions, typed-decision prompt, answer labels, two loops, and Eider executable.
|
| 146 |
+
This comparison measures the effect of fine-tuning within this decision interface, rather than Dory’s performance with other prompting methods.
|
| 147 |
+
[Comparison results and hashes](evaluation/base-comparison.json) record the matched setup.
|
| 148 |
+
|
| 149 |
+
| Test task | Questions | Base Dory accuracy | Typed Decisions accuracy | Base Brier ↓ | Typed Decisions Brier ↓ |
|
| 150 |
+
|---|---:|---:|---:|---:|---:|
|
| 151 |
+
| SCONE state tracking | 192 | 29.69% | 75.52% | 1.0003 | 0.3779 |
|
| 152 |
+
| Block-stacking and delivery planning | 192 | 42.71% | 92.19% | 0.6045 | 0.1909 |
|
| 153 |
+
| HelpSteer2 human judgements | 128 | 47.66% | 50.78% | 0.3385 | 0.2290 |
|
| 154 |
+
| **Combined** | 512 | 39.06% | 75.59% | 0.6865 | 0.2706 |
|
| 155 |
|
| 156 |
Accuracy counts any answer tied for the highest target probability as correct.
|
| 157 |
Brier error compares the complete predicted and target distributions.
|
|
|
|
| 162 |
Neither BF16 nor Q8_0 has received a separate full accuracy evaluation.
|
| 163 |
|
| 164 |
The Q8_0 GGUF passed prompt and answer-label parity checks and a 24-request GPU compatibility check across all three answer types.
|
| 165 |
+
On NVIDIA DGX Spark (GB10), short requests with changing context had median latency of 62 ms for one question and 191 ms for three questions.
|
| 166 |
Each median used five timed requests. These small checks establish API compatibility, not general accuracy or production throughput.
|
| 167 |
[GGUF test evidence](gguf/provenance.json) records the setup and results.
|
| 168 |
|
|
|
|
| 196 |
For NVFP4, use `--include 'nvfp4/*'` instead of the GGUF filename, then point your runtime at `./dory-decisions/nvfp4`.
|
| 197 |
For BF16, use `--include '*.json' '*.jinja' '*.safetensors' --exclude 'nvfp4/*' 'adapter/*'` instead of the GGUF filename.
|
| 198 |
|
| 199 |
+
### Build llama.cpp with Dory support
|
| 200 |
|
| 201 |
+
These commands require Git, CMake, and a C++ compiler.
|
| 202 |
+
The example enables CUDA for NVIDIA GPUs and requires the CUDA toolkit.
|
| 203 |
+
For CPU-only use, omit `-DGGML_CUDA=ON`. For other GPU backends, follow the [llama.cpp build instructions](https://github.com/ggml-org/llama.cpp/blob/master/docs/build.md).
|
| 204 |
|
| 205 |
```sh
|
| 206 |
git clone https://github.com/ggml-org/llama.cpp llama.cpp-dory
|
|
|
|
| 208 |
git -C llama.cpp-dory checkout --detach FETCH_HEAD
|
| 209 |
cmake -S llama.cpp-dory -B llama.cpp-dory/build \
|
| 210 |
-DCMAKE_BUILD_TYPE=Release \
|
| 211 |
+
-DGGML_CUDA=ON \
|
| 212 |
-DLLAMA_CURL=OFF \
|
| 213 |
-DLLAMA_BUILD_TESTS=OFF -DLLAMA_BUILD_EXAMPLES=OFF \
|
| 214 |
-DLLAMA_BUILD_SERVER=ON
|
| 215 |
cmake --build llama.cpp-dory/build --target llama-server -j 6
|
| 216 |
```
|
| 217 |
|
|
|
|
|
|
|
|
|
|
| 218 |
### Start the server
|
| 219 |
|
| 220 |
```sh
|
|
|
|
| 222 |
--model ./dory-decisions/dory-decisions-Q8_0.gguf \
|
| 223 |
--alias dory-decisions \
|
| 224 |
--host 127.0.0.1 --port 18091 \
|
| 225 |
+
--ctx-size 4096 --gpu-layers all
|
|
|
|
|
|
|
|
|
|
| 226 |
```
|
| 227 |
|
| 228 |
+
With a GPU-enabled build, `--gpu-layers all` requests full GPU offload; reduce it if GPU memory is insufficient.
|
| 229 |
+
Omit that option for CPU-only use. Adjust `--ctx-size` for your workload and available memory; 4,096 is only an example.
|
| 230 |
|
| 231 |
### Ask a typed question
|
| 232 |
|
evaluation/base-comparison.json
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema": "dory-base-vs-typed-decisions/v1",
|
| 3 |
+
"base_model": "nvidia/NVIDIA-Nemotron-Labs-Dory1.0-4B-BF16",
|
| 4 |
+
"base_model_revision": "b366b87f762ea334ba3eb55912031baba1515810",
|
| 5 |
+
"format": "NVFP4",
|
| 6 |
+
"quantization_recipe": "mse",
|
| 7 |
+
"loops": 2,
|
| 8 |
+
"calibrated": false,
|
| 9 |
+
"prompt": "Same typed-decision prompt and allowed-answer scoring for both models; no generated reasoning.",
|
| 10 |
+
"base_weight_sha256": "602a1bc6a69c1a5c41253df785f335cea77eeeb854b985ab11c125bf1d08a547",
|
| 11 |
+
"fine_tuned_weight_sha256": "9bc834f4dce29a48499b6614c11772d189710138b29c637a384f753b1326b4c0",
|
| 12 |
+
"binary_sha256": "935335c9df451b4b9108d65fc46882abbfd7a0b6cb20b3ba76f4e8c42fa7ab0c",
|
| 13 |
+
"scoring_script_sha256": "cbd6c833654b1fff319abf1d8f3cb491af5d96b78d541e593a283b684268da04",
|
| 14 |
+
"test_data_sha256": "e2ca7413a306fc2b0e9e044aa685c94d5aa8e0def7cfcec6448941b7369ae625",
|
| 15 |
+
"base": {
|
| 16 |
+
"questions": 512,
|
| 17 |
+
"modal_accuracy": 0.390625,
|
| 18 |
+
"brier": 0.6864560213896311,
|
| 19 |
+
"cross_entropy": 2.226203713663419,
|
| 20 |
+
"by_kind": {
|
| 21 |
+
"choice": {
|
| 22 |
+
"questions": 241,
|
| 23 |
+
"modal_accuracy": 0.33195020746887965,
|
| 24 |
+
"brier": 0.7223381484168857,
|
| 25 |
+
"cross_entropy": 2.451415271076999
|
| 26 |
+
},
|
| 27 |
+
"noul": {
|
| 28 |
+
"questions": 94,
|
| 29 |
+
"modal_accuracy": 0.5,
|
| 30 |
+
"brier": 0.8460049545207761,
|
| 31 |
+
"cross_entropy": 1.360189755992052
|
| 32 |
+
},
|
| 33 |
+
"score": {
|
| 34 |
+
"questions": 177,
|
| 35 |
+
"modal_accuracy": 0.4124293785310734,
|
| 36 |
+
"brier": 0.55286736416988,
|
| 37 |
+
"cross_entropy": 2.3794767457788746
|
| 38 |
+
}
|
| 39 |
+
},
|
| 40 |
+
"by_source": {
|
| 41 |
+
"helpsteer2": {
|
| 42 |
+
"questions": 128,
|
| 43 |
+
"modal_accuracy": 0.4765625,
|
| 44 |
+
"brier": 0.3385301710123469,
|
| 45 |
+
"cross_entropy": 1.8640141950785272
|
| 46 |
+
},
|
| 47 |
+
"planning": {
|
| 48 |
+
"questions": 192,
|
| 49 |
+
"modal_accuracy": 0.4270833333333333,
|
| 50 |
+
"brier": 0.6045360602682238,
|
| 51 |
+
"cross_entropy": 1.818707715277242
|
| 52 |
+
},
|
| 53 |
+
"scone": {
|
| 54 |
+
"questions": 192,
|
| 55 |
+
"modal_accuracy": 0.296875,
|
| 56 |
+
"brier": 1.000326549429228,
|
| 57 |
+
"cross_entropy": 2.8751593911061906
|
| 58 |
+
}
|
| 59 |
+
}
|
| 60 |
+
},
|
| 61 |
+
"fine_tuned": {
|
| 62 |
+
"questions": 512,
|
| 63 |
+
"modal_accuracy": 0.755859375,
|
| 64 |
+
"brier": 0.2705710538872297,
|
| 65 |
+
"cross_entropy": 1.0354930422480668,
|
| 66 |
+
"by_kind": {
|
| 67 |
+
"choice": {
|
| 68 |
+
"questions": 241,
|
| 69 |
+
"modal_accuracy": 0.8215767634854771,
|
| 70 |
+
"brier": 0.30593746240810665,
|
| 71 |
+
"cross_entropy": 1.0288481446263855
|
| 72 |
+
},
|
| 73 |
+
"noul": {
|
| 74 |
+
"questions": 94,
|
| 75 |
+
"modal_accuracy": 0.8936170212765957,
|
| 76 |
+
"brier": 0.1853453372075174,
|
| 77 |
+
"cross_entropy": 0.4718470608079094
|
| 78 |
+
},
|
| 79 |
+
"score": {
|
| 80 |
+
"questions": 177,
|
| 81 |
+
"modal_accuracy": 0.5932203389830508,
|
| 82 |
+
"brier": 0.26767790651074164,
|
| 83 |
+
"cross_entropy": 1.34387802858818
|
| 84 |
+
}
|
| 85 |
+
},
|
| 86 |
+
"by_source": {
|
| 87 |
+
"helpsteer2": {
|
| 88 |
+
"questions": 128,
|
| 89 |
+
"modal_accuracy": 0.5078125,
|
| 90 |
+
"brier": 0.22898458428820745,
|
| 91 |
+
"cross_entropy": 1.5346420909767997
|
| 92 |
+
},
|
| 93 |
+
"planning": {
|
| 94 |
+
"questions": 192,
|
| 95 |
+
"modal_accuracy": 0.921875,
|
| 96 |
+
"brier": 0.1909474730913934,
|
| 97 |
+
"cross_entropy": 0.8915435249464682
|
| 98 |
+
},
|
| 99 |
+
"scone": {
|
| 100 |
+
"questions": 192,
|
| 101 |
+
"modal_accuracy": 0.7552083333333334,
|
| 102 |
+
"brier": 0.3779189477490808,
|
| 103 |
+
"cross_entropy": 0.8466765270638437
|
| 104 |
+
}
|
| 105 |
+
}
|
| 106 |
+
}
|
| 107 |
+
}
|