Safetensors
GGUF
English
Russian
lfm3
reasoning
test-time-compute
inference-time-scaling
code-generation
llama.cpp
negative-results
conversational
Instructions to use HelioAI/LFM3-1.7B-inference-modules-experiments 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 HelioAI/LFM3-1.7B-inference-modules-experiments 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 HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M # Run inference directly in the terminal: llama cli -hf HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M # Run inference directly in the terminal: llama cli -hf HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
Build from source code
git clone https://github.com/ggml-org/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-app # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama serve -hf HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M # Run inference directly in the terminal: ./build/bin/llama cli -hf HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
Use Docker
docker model run hf.co/HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
- Llama new
- LM Studio
- Jan
- Ollama
How to use HelioAI/LFM3-1.7B-inference-modules-experiments with Ollama:
ollama run hf.co/HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
- Unsloth Desktop
- Pi
How to use HelioAI/LFM3-1.7B-inference-modules-experiments with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
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": "HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use HelioAI/LFM3-1.7B-inference-modules-experiments with Docker Model Runner:
docker model run hf.co/HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
- Lemonade
How to use HelioAI/LFM3-1.7B-inference-modules-experiments with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
Run and chat with the model
lemonade run user.LFM3-1.7B-inference-modules-experiments-Q5_K_M
List all available models
lemonade list
- Hermes Agent
How to use HelioAI/LFM3-1.7B-inference-modules-experiments with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
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 HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use HelioAI/LFM3-1.7B-inference-modules-experiments with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M
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 "HelioAI/LFM3-1.7B-inference-modules-experiments:Q5_K_M" \ --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"
File size: 5,435 Bytes
cd61333 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 | """Shared render-check-repair logic for visual answers, used by lfm3_deliberate.solve_visual.
(The same rules as scripts/visual_repair.py, which produced the measured numbers.)
problems(rep, animated, src, kind, hints) -> (weighted badness, feedback lines) from a render.py report;
feedback(kind, lines) -> the repair turn text; fix_importmap from vis_autofix (deterministic, no model call).
"""
import re
from vis_autofix import IMPORT_MAP, fix_importmap # noqa: F401 (re-exported for callers)
# browser error -> the fix a web developer would apply (general knowledge, never a solution of a particular task)
HINTS = [
(r'Failed to resolve module specifier "three', "A module imports the bare name 'three' (three.js addons do this "
f"too). Put the import map in <head>, before any module script: {IMPORT_MAP}, then write "
"import * as THREE from 'three'; and import addons like import { OrbitControls } from "
"'three/addons/controls/OrbitControls.js';"),
(r"THREE is not defined", "three.js is not a global variable. Add the import map "
f"{IMPORT_MAP} and, inside <script type=\"module\">, write import * as THREE from 'three';"),
(r"THREE\.(\w+) is not a constructor", "THREE.{0} does not exist in three.js r160. Addons are imported "
"separately, e.g. import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; then "
"new OrbitControls(camera, renderer.domElement). Otherwise check the class name."),
(r"Assignment to constant variable", "A variable declared with const is assigned again: declare variables "
"that change with let."),
(r"ReferenceError: (\w+) is not defined", "'{0}' is used where it is not declared: declare it with const/let "
"at the top level, before the functions that use it run."),
(r"Cannot read properties of (?:undefined|null) \(reading '(\w+)'\)", "Something is undefined or null when "
"its property '{0}' is read: an element id that does not exist, an object used before it is created, or an "
"array index out of range."),
(r"(\S+) is not a function", "{0} is not a function: a property is called like a method or a name is "
"misspelled (canvas.width/height are numbers; drawing methods are ctx.fillRect, ctx.arc, ctx.beginPath, "
"ctx.fill, ctx.stroke; angles in Math are radians, there is no Math.radians)."),
]
BLANK_THREE = ("Add lights for MeshStandardMaterial (AmbientLight and DirectionalLight), put the camera away from "
"the objects with camera.lookAt(0, 0, 0) and render every frame with "
"renderer.setAnimationLoop(() => renderer.render(scene, camera)).")
BLANK_CANVAS = ("Set canvas.width = innerWidth and canvas.height = innerHeight, draw in every frame and use a fill "
"color that differs from the background.")
STATIC_HINT = ("Compute positions from the elapsed time inside a requestAnimationFrame loop (or "
"renderer.setAnimationLoop) and redraw every frame.")
SVG_HINT = "Close every tag, quote every attribute value, write & as & and keep one root <svg> element."
def hints_for(rep, animated, src):
out = []
for e in rep.get("errors", []):
for pat, text in HINTS:
m = re.search(pat, e)
if m:
h = text.replace("{0}", m.group(1)) if m.groups() else text
if h not in out:
out.append(h)
break
if rep.get("parse_error"):
out.append(SVG_HINT)
if rep.get("blank") and not rep.get("parse_error") and not rep.get("errors"):
out.append(BLANK_THREE if "three" in (src or "") else BLANK_CANVAS if "<canvas" in (src or "") else
"Make sure the content is visible: real sizes, colors that differ from the background, nothing "
"hidden by CSS.")
if animated and not rep.get("animated") and not rep.get("blank"):
out.append(STATIC_HINT)
return out
def problems(rep, animated, src, kind, hints=False):
"""(weighted badness, feedback lines); 0 = renders cleanly."""
if not src:
return 10, [f"Your answer does not contain the complete file in a ```{kind} code block."]
bad, lines = 0, []
if rep.get("parse_error"):
bad += 4
lines.append(f"The SVG is not valid XML: {rep['parse_error']}")
if rep["errors"]:
bad += 3
lines += [f"JavaScript error: {e}" for e in rep["errors"][:4]]
if rep["failed"]:
bad += 3
lines += [f"This resource failed to load: {u}" for u in rep["failed"][:3]]
if rep["blank"]:
bad += 3
lines.append("Nothing is visible: the rendered page is blank (a single colour).")
if animated and not rep["animated"]:
bad += 1
lines.append("The animation does not move: two screenshots taken 0.7 seconds apart are identical.")
if rep.get("overflow"):
bad += 1
lines.append("The page is wider than the 1024 px window (there is a horizontal scrollbar).")
if hints and bad:
lines += ["Hint: " + h for h in hints_for(rep, animated, src)]
return bad, lines
def feedback(kind, lines):
what = "SVG" if kind == "svg" else "page"
return (f"I opened your {what} in Chrome (window 1024x768) and found these problems:\n"
+ "\n".join("- " + x for x in lines)
+ f"\n\nFix them and give the complete corrected file in a single ```{kind} code block.")
|