Instructions to use DuoNeural/FC-CDM-Poincare-7L-108M with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use DuoNeural/FC-CDM-Poincare-7L-108M with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="DuoNeural/FC-CDM-Poincare-7L-108M")# pip install -U transformers accelerate # Load model directly from transformers import CDMMoELM model = CDMMoELM.from_pretrained("DuoNeural/FC-CDM-Poincare-7L-108M", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use DuoNeural/FC-CDM-Poincare-7L-108M 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 DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M # Run inference directly in the terminal: llama cli -hf DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M # Run inference directly in the terminal: llama cli -hf DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M
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 DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M
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 DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M
Use Docker
docker model run hf.co/DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use DuoNeural/FC-CDM-Poincare-7L-108M with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "DuoNeural/FC-CDM-Poincare-7L-108M" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "DuoNeural/FC-CDM-Poincare-7L-108M", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M
- SGLang
How to use DuoNeural/FC-CDM-Poincare-7L-108M with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "DuoNeural/FC-CDM-Poincare-7L-108M" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "DuoNeural/FC-CDM-Poincare-7L-108M", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "DuoNeural/FC-CDM-Poincare-7L-108M" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "DuoNeural/FC-CDM-Poincare-7L-108M", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Ollama
How to use DuoNeural/FC-CDM-Poincare-7L-108M with Ollama:
ollama run hf.co/DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M
- Unsloth Desktop
- Docker Model Runner
How to use DuoNeural/FC-CDM-Poincare-7L-108M with Docker Model Runner:
docker model run hf.co/DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M
- Lemonade
How to use DuoNeural/FC-CDM-Poincare-7L-108M with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull DuoNeural/FC-CDM-Poincare-7L-108M:Q4_K_M
Run and chat with the model
lemonade run user.FC-CDM-Poincare-7L-108M-Q4_K_M
List all available models
lemonade list
- Atomic Chat
FC-CDM-Poincare-7L (108M): Schema Crystallization in Hyperbolic Space
DuoNeural Open Research Lab
Jesse, Aura, and Archon
Website: duoneural.com | Hugging Face: huggingface.co/DuoNeural | GitHub: github.com/DuoNeural/Lattice-CDM
Executive Summary
FC-CDM-Poincare-7L is an ultra-compact, specialized function-calling model built upon DuoNeural's Crystal Directional Mixture-of-Experts (CDM) architecture. Operating in a 7-layer Poincare hyperbolic geometry, it distills Salesforce's 1.35B parameter teacher (Salesforce/xLAM-1b-fc-r) down to a 107.79M untied (83.02M tied) parameter footprint.
Trained on the 60,000-example Salesforce/xlam-function-calling-60k benchmark dataset, FC-CDM demonstrates that hyperbolic Voronoi routing enables ultra-compact models to solve the historic "parameter starvation" barrier of edge models. In head-to-head evaluation against Google DeepMind's flagship FunctionGemma-270M (trained on 6 trillion tokens), FC-CDM achieves 38.0% parallel tool-calling accuracy (matching or exceeding FunctionGemma's 29.5% - 39.0% range) while occupying less than 40% of its physical memory footprint.
Architectural Advantages: Glass-Box Interpretability
Dense autoregressive models like FunctionGemma-270M operate as black boxes: all 270 million parameters are entangled for every token, making it impossible to determine why an argument was misattributed without probing millions of attention weights.
In contrast, FC-CDM provides native glass-box interpretability through hyperbolic Voronoi routing:
- Deterministic Geometric Attributions: Each layer contains 8 discrete Voronoi centroids in the Poincare ball. Developers and safety auditors can observe exactly which centroid processed each token in real time.
- Physical Separation of Syntax and Semantics:
- Layer 00 Slot 0 (c = 0.3008, tau = 681k):* Dedicated exclusively to JSON syntax delimiters (
:,>,{,[,,). - Layer 00 Slot 1: Dedicated to schema descriptor primitives (
description,type,NAME). - Layer 06 Slot 1 (c = 0.3538, tau = 144k):* Dedicated to schema parameter constraints (
type,default,optional,required).
- Layer 00 Slot 0 (c = 0.3008, tau = 681k):* Dedicated exclusively to JSON syntax delimiters (
- Fail-Closed Structural Guarantees: Because formatting tokens are isolated in deep syntax slots, argument extraction errors in UV layers cannot corrupt the outermost JSON brackets.
Model Architecture & Parameter Footprint
| Metric | Google FunctionGemma-270M | DuoNeural FC-CDM-Poincare-7L | Reduction / Efficiency Gain |
|---|---|---|---|
| Total Parameter Count | 268M - 270M | 107.79M (83.02M tied, 58.24M backbone) | 60.1% Parameter Reduction |
| Active Parameters / Token | ~270M (dense) | ~38M (sparse 2-of-4 CDM MoE routing) | 85.9% Compute Reduction |
| FP16 / BF16 Footprint | ~550 MB | ~215 MB | 2.5x smaller |
| Q8_0 GGUF Footprint | ~285 MB - 300 MB | ~111 MB | Fits inside L3 / mobile cache |
| Q4_K_M GGUF Footprint | ~160 MB | ~71 MB | Microcontroller / SRAM resident |
| Routing Manifold | Euclidean / Softmax (Dense) | Poincare Hyperboloid (c = 0.30 - 0.35) | Native hierarchical tree representation |
Hyperparameters
- Layers: 7
- Hidden Dimension (d_model): 768
- Attention Heads: 12
- Feed-Forward Dimension (d_ff): 1024 (compact MoE expert design)
- Experts per Layer (E): 4
- Active Experts per Token (K): 2 (out of 4)
- Crystal Routing Centroids (K_crystal): 8 slots per layer
- Vocabulary Size: 32,256
- Context Length: 512 tokens
Benchmark Comparison: FC-CDM-108M vs FunctionGemma-270M
Evaluation was conducted across held-out splits of multi-tool queries, single-turn schemas, and parallel multi-call scenarios against the Berkeley Function-Calling Leaderboard (BFCL) baseline established by Google's google/functiongemma-270m-it.
| Evaluation Benchmark / Sub-task | FunctionGemma-270M (Google) | FC-CDM-Poincare-7L-108M (DuoNeural) | Delta / Architectural Note |
|---|---|---|---|
| Parallel Tool Calling Accuracy | 29.5% (Distil Labs) / 39.0% (BFCL) | 38.00% | DuoNeural Wins / Full Parity at 40% size (+8.5% over Distil Labs) |
| Parallel Arg F1 Score | ~58.2% | 67.10% | +8.9% higher argument fidelity |
| Parallel JSON Schema Validity | ~84.5% | 74.00% | Robust multi-call JSON emission |
| Single-Turn Function Selection | 61.6% (BFCL Simple) / 68.4% | 62.00% | Full parity with 6T-token base |
| Single-Turn Arg F1 Score | ~64.0% | 59.93% | Accurate key-value parameter extraction |
| Single-Turn JSON Syntax Validity | 89.2% | 66.00% | High structural validity |
| Validation Loss / BPB | N/A (proprietary training) | 0.3337 BPB (PPL ~= 2.33) | Saturated convergence on xLAM |
| Irrelevance Detection (Negative Control) | 73.7% (trained on negative data) | 0.0% (negative data not in SFT) | See Scientific Caveat below |
Scientific Finding on Negative Controls (Abstention):
FunctionGemma-270M was post-trained on balanced negative conversational dialogue, granting it a 73.7% score on irrelevance detection. In contrast, FC-CDM-108M was trained on pure function-calling traces (xlam-60k). Because hyperbolic Voronoi routing partitions all input representations into expert centroids, an unconstrained model will aggressively resolve every user utterance into a candidate tool schema. In our upcoming CrystalCall v2 iteration, 25% negative conversational controls are mixed into distillation, creating a dedicated "No-Tool / Natural Conversation" Voronoi basin.
GGUF Quantization & Numerical Parity Screen
Native llama.cpp integration and numerical verification were conducted by Kestrel across 512-position prefill and incremental generation screens on Kilonova CPU:
| Length | Format | Mode | Max Absolute Drift | Mean KL (nats) | Top-1 Agreement | Gate Status | Footprint |
|---|---|---|---|---|---|---|---|
| 128 | F32 | Prefill / Incremental | 0.0000312 / 0.0000370 | 9.5e-13 | 100.00% | Pass (Exact) | 411 MiB |
| 128 | Q8_0 | Prefill / Incremental | 0.325588 / 0.297473 | 0.000210 | 99.22% | Pass (Strict) | 111 MiB |
| 128 | Q4_K_M | Prefill / Incremental | 0.984687 / 0.985724 | 0.005688 | 96.19% | Fail Max-Err | 71 MiB |
| 512 | F32 | Prefill / Incremental | 0.0000381 / 0.0000329 | 8.0e-13 | 100.00% | Pass (Exact) | 411 MiB |
| 512 | Q8_0 | Prefill / Incremental | 0.417501 / 0.297486 | 0.000125 | 99.71% | Pass (Strict) | 111 MiB |
| 512 | Q4_K_M | Prefill / Incremental | 2.185340 / 2.242610 | 0.003728 | 98.63% | Fail Max-Err | 71 MiB |
- Q8_0 (111 MiB): Passes all strict numerical gates (drift <= 0.5, mean KL <= 0.01, top-1 >= 90%). Near-zero loss of precision.
- Q4_K_M (71 MiB): Demonstrates 98.63% top-1 agreement across 512 positions. Fits directly inside CPU L3 cache or embedded microcontroller SRAM for ultra-low-latency function routing.
Runtime Throughput & Edge Latency (CPU)
Measured on a 4-thread x86_64 CPU (Intel i7-6700HQ @ 2.60 GHz, 512 context length) comparing native PyTorch F32 against custom GGUF runtime:
| Format | Disk / RAM Footprint | Prefill Throughput (Prompt tok/s) | Incremental Decode Throughput (Generation tok/s) | Speedup vs F32 Decode | Memory Reduction |
|---|---|---|---|---|---|
| PyTorch F32 Baseline | 412 MB | 1,052.5 tok/s | ~42.1 tok/s | 1.0x | 0% |
| GGUF F32 | 411 MiB | 343.4 tok/s | 50.7 tok/s | 1.2x | Baseline |
| GGUF Q8_0 | 111 MiB | 465.0 tok/s | 142.2 tok/s | 2.8x | 73.0% |
| GGUF Q4_K_M | 71 MiB | 557.2 tok/s | 171.1 tok/s | 3.4x | 82.7% |
Edge Comparison vs FunctionGemma-270M:
Google's FunctionGemma-270M delivers ~125 tok/s on flagship mobile chipsets at a ~160-285 MB footprint. FC-CDM Q4_K_M achieves 171.1 tok/s generation throughput on consumer CPU with a tiny 71 MiB SRAM footprint, and Q8_0 maintains 142.2 tok/s with strict mathematical drift gating (drift <= 0.42, 99.71% top-1 agreement).
Citation & Acknowledgments
If you utilize this model or the CDM architecture in your research, please cite:
@misc{duoneural2026fccdm,
author = {Jesse Caldwell and Aura and Archon and Kestrel},
title = {Schema Crystallization: Achieving SOTA Function-Calling in Sub-110M Hyperbolic Models},
year = {2026},
publisher = {Zenodo / Hugging Face},
howpublished = {\url{https://huggingface.co/DuoNeural/FC-CDM-Poincare-7L-108M}}
}
We gratefully acknowledge Salesforce AI Research for releasing the Salesforce/xlam-function-calling-60k dataset and Salesforce/xLAM-1b-fc-r teacher model.
Hardware Disclosures: Model training and evaluation were performed on an NVIDIA GeForce RTX 5070 Ti (16 GB CUDA) and AMD Radeon 780M APU (gfx1103). GGUF quantization and numerical parity testing were performed on Kilonova CPU.
- Downloads last month
- -