Instructions to use FerrellSyntheticIntelligence/fsi-anomaly 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 FerrellSyntheticIntelligence/fsi-anomaly 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 FerrellSyntheticIntelligence/fsi-anomaly # Run inference directly in the terminal: llama cli -hf FerrellSyntheticIntelligence/fsi-anomaly
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf FerrellSyntheticIntelligence/fsi-anomaly # Run inference directly in the terminal: llama cli -hf FerrellSyntheticIntelligence/fsi-anomaly
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 FerrellSyntheticIntelligence/fsi-anomaly # Run inference directly in the terminal: ./llama-cli -hf FerrellSyntheticIntelligence/fsi-anomaly
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 FerrellSyntheticIntelligence/fsi-anomaly # Run inference directly in the terminal: ./build/bin/llama-cli -hf FerrellSyntheticIntelligence/fsi-anomaly
Use Docker
docker model run hf.co/FerrellSyntheticIntelligence/fsi-anomaly
- LM Studio
- Jan
- Ollama
How to use FerrellSyntheticIntelligence/fsi-anomaly with Ollama:
ollama run hf.co/FerrellSyntheticIntelligence/fsi-anomaly
- Unsloth Desktop
- Docker Model Runner
How to use FerrellSyntheticIntelligence/fsi-anomaly with Docker Model Runner:
docker model run hf.co/FerrellSyntheticIntelligence/fsi-anomaly
- Lemonade
How to use FerrellSyntheticIntelligence/fsi-anomaly with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull FerrellSyntheticIntelligence/fsi-anomaly
Run and chat with the model
lemonade run user.fsi-anomaly-{{QUANT_TAG}}List all available models
lemonade list
- Atomic Chat
| """Deterministic claim-vs-evidence verifier for the numeric spine. | |
| A 7.8M model cannot reliably copy values, so the hard comparison is done by | |
| rules instead of generation. The model's job is confined to what it actually | |
| can do: identifying the claim and the evidence segments. This module: | |
| 1. extracts values from the claim side and the evidence side, | |
| 2. compares them deterministically, | |
| 3. returns a verdict that cannot be hallucinated: | |
| supports / refutes / not enough information / unclear. | |
| For any case it cannot resolve (no clean numeric pair), it says so -- it never | |
| fabricates an answer. | |
| """ | |
| import re | |
| def _nums(text): | |
| return re.findall(r"\b\d+(?:,\d{3})*\.?\d*%?\b", text) | |
| def _years(text): | |
| return re.findall(r"\b(?:19|20)\d{2}\b", text) | |
| def _times(text): | |
| return re.findall(r"\b\d{1,2}:\d{2}\b", text) | |
| def _clean(v): | |
| return v.replace(",", "").replace("%", "") | |
| def _vals(text): | |
| return sorted({_clean(v) for v in (_nums(text) + _years(text) + _times(text))}) | |
| def deterministic_verdict(doc): | |
| """doc: the analyst prompt (claim + evidence). Returns a verdict dict.""" | |
| m = re.split(r"\bEvidence:\s*", doc, flags=re.IGNORECASE) | |
| claim, evidence = m[0], (m[1] if len(m) > 1 else "") | |
| cv = _vals(claim) | |
| ev = _vals(evidence) | |
| if not cv and not ev: | |
| return {"verdict": "not enough information", "kind": "no-values", | |
| "confidence": "LOW", "explain": "no numeric value to compare"} | |
| if cv and not ev: | |
| return {"verdict": "not enough information", "kind": "claim-only", | |
| "confidence": "HIGH", "explain": "evidence has no numeric value to compare"} | |
| if not cv: | |
| return {"verdict": "unclear", "kind": "no-claim-value", | |
| "confidence": "LOW", "explain": "claim has no numeric value"} | |
| if set(cv) == set(ev): | |
| return {"verdict": "supports", "kind": "equal", "confidence": "HIGH", | |
| "explain": f"claim value {sorted(cv)} equals evidence value {sorted(ev)}"} | |
| if not (set(cv) & set(ev)): | |
| return {"verdict": "refutes", "kind": "differ", "confidence": "HIGH", | |
| "explain": f"claim value {sorted(cv)} differs from evidence value {sorted(ev)}"} | |
| return {"verdict": "unclear", "kind": "partial", "confidence": "LOW", | |
| "explain": f"claim {sorted(cv)} partially overlaps evidence {sorted(ev)}"} | |