Instructions to use Italianhype/Blum with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use Italianhype/Blum with MLX:
# Make sure mlx-lm is installed # pip install --upgrade mlx-lm # Generate text with mlx-lm from mlx_lm import load, generate model, tokenizer = load("Italianhype/Blum") prompt = "Write a story about Einstein" messages = [{"role": "user", "content": prompt}] prompt = tokenizer.apply_chat_template( messages, add_generation_prompt=True ) text = generate(model, tokenizer, prompt=prompt, verbose=True) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Pi
How to use Italianhype/Blum with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Italianhype/Blum"
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "Italianhype/Blum" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use Italianhype/Blum with Hermes Agent:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Italianhype/Blum"
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 Italianhype/Blum
Run Hermes
hermes
- OpenClaw new
How to use Italianhype/Blum with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Italianhype/Blum"
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 "Italianhype/Blum" \ --custom-provider-id mlx-lm \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
- MLX LM
How to use Italianhype/Blum with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Interactive chat REPL mlx_lm.chat --model "Italianhype/Blum"
Run an OpenAI-compatible server
# Install MLX LM uv tool install mlx-lm # Start the server mlx_lm.server --model "Italianhype/Blum" # Calling the OpenAI-compatible server with curl curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Italianhype/Blum", "messages": [ {"role": "user", "content": "Hello"} ] }'
BLUM Finance 4B
Financial Reasoning, Risk & Trading Intelligence
BLUM Finance 4B is an open financial reasoning model adapted from
mlx-community/Qwen3-4B-4bit.
It turns timestamped evidence into a balanced thesis, contradictory evidence,
explicit risks, invalidation conditions and an explicit confidence value.
It is not a price oracle, broker, autonomous execution system or source of live market truth. BLUM Engine validates market facts and calculations.
Quick Start
pip install "mlx-lm>=0.31,<0.32"
from mlx_lm import load, generate
model, tokenizer = load("Italianhype/Blum")
prompt = tokenizer.apply_chat_template(
[
{
"role": "system",
"content": "Use only supplied point-in-time evidence. Return JSON.",
},
{
"role": "user",
"content": '{"ticker":"NVDA","as_of":"2026-07-28T10:00:00Z","evidence":[{"type":"risk","value":"Volume confirmation is missing."}]}',
},
],
tokenize=False,
add_generation_prompt=True,
enable_thinking=False,
)
print(generate(model, tokenizer, prompt=prompt, max_tokens=512, verbose=False))
Measured Evaluation
The candidate was compared with the exact base revision
4dcb3d101c2a062e5c1d4bb173588c54ea6c4d25 on an untouched temporal test split.
| Metric | Value |
|---|---|
| Test samples | 53 |
| Base aggregate | 0.0 |
| BLUM aggregate | 0.962601 |
| Delta | 0.962601 |
| No-fabrication | 0.928571 |
| Structured validity | 1.0 |
| Calibration error | Not measured (0 labeled outcomes) |
The base score can be low when otherwise readable prose fails the required JSON contract. The aggregate delta therefore measures BLUM task adherence, evidence handling and safety structure on this test; it is not a general intelligence comparison with the base model.
These language-model results measure financial reasoning behavior. This evaluation does not prove trading alpha, future profitability or benchmark outperformance.
Intended Use
- financial thesis drafting from supplied evidence;
- bull/bear contradiction analysis;
- risk and technical invalidation explanation;
- portfolio and benchmark-aware research;
- conservative abstention when evidence is incomplete;
- English and Italian financial analysis.
Limitations
The model can still produce incorrect or stale statements.
It has no guaranteed access to current prices, news or filings.
Numerical levels must be validated by the calling application.
The current held-out set has no labeled market outcomes, so confidence is conservatively capped but not empirically calibrated.
It must not independently authorize or execute a financial transaction.
Performance can vary by market, regime, language and prompt structure.
This release uses the MLX runtime and requires Apple Silicon. A portable Transformers/GGUF release remains a separate validation target.
Known Failure Cases
- Missing or contradictory point-in-time evidence can force an abstention.
- Unsupported prompts may still elicit plausible but incorrect market facts.
- Long filings can exceed the context supplied by the caller.
- The model is not validated for broker execution or unattended capital control.
Related BLUM Resources
Community Memory
Inference and installation send no telemetry. Users may explicitly create a
redacted contribution with blum-contribute. Contributions enter
Italianhype/Blum-Finance-Memory in quarantine and never update active weights
without review, versioning and out-of-sample validation.
Incremental learning is explicit opt-in. Accepted, deduplicated contributions can join a future immutable training snapshot only after provenance, privacy, schema and quality checks. Each training cycle creates a versioned challenger, compares it with the active model on an untouched test split and promotes it only when the release gates pass. A failed challenger is retained as evidence and cannot replace the active model.
BLUM never trains inside an inference request or lets anonymous input mutate released weights.
Lineage
- Base revision:
4dcb3d101c2a062e5c1d4bb173588c54ea6c4d25 - Candidate revision:
ea297ba88ab008e97104b0c118103eef2f8f9ec1 - Dataset revision:
76ad77699d498fc930daf02e452fe3ec8b490f90 - Dataset:
Italianhype/Blum-Finance-Reasoning
Disclaimer
For research and educational use. This model does not provide financial advice, guaranteed signals or guaranteed profits.
Citation
@misc{blum_finance_4b,
title = {BLUM Finance 4B},
author = {Italianhype},
year = {2026},
url = {https://huggingface.co/Italianhype/Blum}
}
- Downloads last month
- 22
4-bit