alt.freeweights.mistral / Devstral-Small-2505-GGUF
From: unsloth <huggingface.co/unsloth>Newsgroups: alt.freeweights.mistralSubject:

Devstral-Small-2505-GGUF

Date: 2026-11-15Commit: 099dd7eSigned: 2DC28CC7B26A283B ✓

Model. Gguf weights, 375 GB in all. Published by unsloth under Apache-2.0.

mistral375GBDevstral-Small-2505-GGUFggufpermissive
FactsParamsnot statedSize375 GBFormatsggufTasknot taggedLicenseApache-2.0From sourcepermissive
$ fw get unsloth/Devstral-Small-2505-GGUF
# manifest sha256 186ad7c84291… · 375 GB · 35 files
$ fw verify ./Devstral-Small-2505-GGUF unsloth/Devstral-Small-2505-GGUF
From sourceHosted (signed)unsloth/Devstral-Small-2505-GGUFLast check: 2026-11-15 04:49 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Quantized of Devstral-Small-2505.

Works with

Convert with

Scan with

Overview

Size
375 GB
Weights
5.56 GB (smallest of 25 GGUF variants)
Parameters
not stated
Formats
gguf
Task
not tagged
License
Apache-2.0 (permissive)
Files
35, each with a sha256
Publisher
unsloth
Added
2026-11-15
Section
alt.freeweights.mistral
Lineage

Original release from the publisher.

Base model: mistralai/Devstral-Small-2505

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 04:49 UTCpassed

Model card

From the publisher at commit 099dd7e. Shown as plain text with links; images open at the publisher.

Note. You should use --jinja to enable the system prompt in llama.cpp

Devstral, enhanced with optional Vision support.

Learn to run Devstral correctly - Read our Guide.

Unsloth Dynamic 2.0 achieves superior accuracy & outperforms other leading quants.

https://github.com/unslothai/unsloth/ https://discord.gg/unsloth https://docs.unsloth.ai/basics/devstral

✨ Run & Fine-tune Devstral with Unsloth!#

Model Card for mistralai/Devstrall-Small-2505#

Devstral is an agentic LLM for software engineering tasks built under a collaboration between Mistral AI and All Hands AI 🙌. Devstral excels at using tools to explore codebases, editing multiple files and power software engineering agents. The model achieves remarkable performance on SWE-bench which positionates it as the #1 open source model on this benchmark.

It is finetuned from Mistral-Small-3.1, therefore it has a long context window of up to 128k tokens. As a coding agent, Devstral is text-only and before fine-tuning from Mistral-Small-3.1 the vision encoder was removed.

For enterprises requiring specialized capabilities (increased context, domain-specific knowledge, etc.), we will release commercial models beyond what Mistral AI contributes to the community.

Learn more about Devstral in our blog post.

Key Features:#

  • Agentic coding: Devstral is designed to excel at agentic coding tasks, making it a great choice for software engineering agents.
  • lightweight: with its compact size of just 24 billion parameters, Devstral is light enough to run on a single RTX 4090 or a Mac with 32GB RAM, making it an appropriate model for local deployment and on-device use.
  • Apache 2.0 License: Open license allowing usage and modification for both commercial and non-commercial purposes.
  • Context Window: A 128k context window.
  • Tokenizer: Utilizes a Tekken tokenizer with a 131k vocabulary size.

Benchmark Results#

SWE-Bench#

Devstral achieves a score of 46.8% on SWE-Bench Verified, outperforming prior open-source SoTA by 6%.

ModelScaffoldSWE-Bench Verified (%)
DevstralOpenHands Scaffold46.8
GPT-4.1-miniOpenAI Scaffold23.6
Claude 3.5 HaikuAnthropic Scaffold40.6
SWE-smith-LM 32BSWE-agent Scaffold40.2

When evaluated under the same test scaffold (OpenHands, provided by All Hands AI 🙌), Devstral exceeds far larger models such as Deepseek-V3-0324 and Qwen3 232B-A22B.

Image: SWE Benchmark

Usage#

We recommend to use Devstral with the OpenHands scaffold. You can use it either through our API or by running locally.

API#

Follow these instructions to create a Mistral account and get an API key.

Then run these commands to start the OpenHands docker container.

export MISTRAL_API_KEY=<MY_KEY>

docker pull docker.all-hands.dev/all-hands-ai/runtime:0.39-nikolaik

mkdir -p ~/.openhands-state && echo '{"language":"en","agent":"CodeActAgent","max_iterations":null,"security_analyzer":null,"confirmation_mode":false,"llm_model":"mistral/devstral-small-2505","llm_api_key":"'$MISTRAL_API_KEY'","remote_runtime_resource_factor":null,"github_token":null,"enable_default_condenser":true}' > ~/.openhands-state/settings.json

docker run -it --rm --pull=always \
    -e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.39-nikolaik \
    -e LOG_ALL_EVENTS=true \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v ~/.openhands-state:/.openhands-state \
    -p 3000:3000 \
    --add-host host.docker.internal:host-gateway \
    --name openhands-app \
    docker.all-hands.dev/all-hands-ai/openhands:0.39
Local inference#

You can also run the model locally. It can be done with LMStudio or other providers listed below.

Launch Openhands You can now interact with the model served from LM Studio with openhands. Start the openhands server with the docker

docker pull docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik
docker run -it --rm --pull=always \
	-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
	-e LOG_ALL_EVENTS=true \
	-v /var/run/docker.sock:/var/run/docker.sock \
	-v ~/.openhands-state:/.openhands-state \
	-p 3000:3000 \
	--add-host host.docker.internal:host-gateway \
	--name openhands-app \
	docker.all-hands.dev/all-hands-ai/openhands:0.38

The server will start at http://0.0.0.0:3000. Open it in your browser and you will see a tab AI Provider Configuration. Now you can start a new conversation with the agent by clicking on the plus sign on the left bar.

The model can also be deployed with the following libraries:

Launch a server to deploy Devstral-Small-2505#

Make sure you launched an OpenAI-compatible server such as vLLM or Ollama as described above. Then, you can use OpenHands to interact with Devstral-Small-2505.

In the case of the tutorial we spineed up a vLLM server running the command:

vllm serve mistralai/Devstral-Small-2505 --tokenizer_mode mistral --config_format mistral --load_format mistral --tool-call-parser mistral --enable-auto-tool-choice --tensor-parallel-size 2

The server address should be in the following format: http://<your-server-url>:8000/v1

Launch OpenHands#

You can follow installation of OpenHands here.

The easiest way to launch OpenHands is to use the Docker image:

docker pull docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik

docker run -it --rm --pull=always \
    -e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
    -e LOG_ALL_EVENTS=true \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v ~/.openhands-state:/.openhands-state \
    -p 3000:3000 \
    --add-host host.docker.internal:host-gateway \
    --name openhands-app \
    docker.all-hands.dev/all-hands-ai/openhands:0.38

Then, you can access the OpenHands UI at http://localhost:3000.

Connect to the server#

When accessing the OpenHands UI, you will be prompted to connect to a server. You can use the advanced mode to connect to the server you launched earlier.

Fill the following fields:

  • Custom Model: openai/mistralai/Devstral-Small-2505
  • Base URL: http://<your-server-url>:8000/v1
  • API Key: token (or any other token you used to launch the server if any)
Use OpenHands powered by Devstral#

Now you're good to use Devstral Small inside OpenHands by starting a new conversation. Let's build a To-Do list app.

To-Do list app</summary

  1. Let's ask Devstral to generate the app with the following prompt:
Build a To-Do list app with the following requirements:
- Built using FastAPI and React.
- Make it a one page app that:
   - Allows to add a task.
   - Allows to delete a task.
   - Allows to mark a task as done.
   - Displays the list of tasks.
- Store the tasks in a SQLite database.

Image: Agent prompting

  1. Let's see the result

You should see the agent construct the app and be able to explore the code it generated.

If it doesn't do it automatically, ask Devstral to deploy the app or do it manually, and then go the front URL deployment to see the app.

Image: Agent working Image: App UI

  1. Iterate

Now that you have a first result you can iterate on it by asking your agent to improve it. For example, in the app generated we could click on a task to mark it checked but having a checkbox would improve UX. You could also ask it to add a feature to edit a task, or to add a feature to filter the tasks by status.

Enjoy building with Devstral Small and OpenHands!

Download the weights from huggingface:

pip install -U "huggingface_hub[cli]"
huggingface-cli download \
"mistralai/Devstral-Small-2505_gguf" \
--include "devstralQ4_K_M.gguf" \
--local-dir "mistralai/Devstral-Small-2505_gguf/"

You can serve the model locally with LMStudio.

  • Download LM Studio and install it
  • Install lms cli ~/.lmstudio/bin/lms bootstrap
  • In a bash terminal, run lms import devstralQ4_K_M.ggu in the directory where you've downloaded the model checkpoint (e.g. mistralai/Devstral-Small-2505_gguf)
  • Open the LMStudio application, click the terminal icon to get into the developer tab. Click select a model to load and select Devstral Q4 K M. Toggle the status button to start the model, in setting oggle Serve on Local Network to be on.
  • On the right tab, you will see an API identifier which should be devstralq4_k_m and an api address under API Usage. Keep note of this address, we will use it in the next step.

Launch Openhands You can now interact with the model served from LM Studio with openhands. Start the openhands server with the docker

docker pull docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik
docker run -it --rm --pull=always \
	-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
	-e LOG_ALL_EVENTS=true \
	-v /var/run/docker.sock:/var/run/docker.sock \
	-v ~/.openhands-state:/.openhands-state \
	-p 3000:3000 \
	--add-host host.docker.internal:host-gateway \
	--name openhands-app \
	docker.all-hands.dev/all-hands-ai/openhands:0.38

Click “see advanced setting” on the second line. In the new tab, toggle advanced to on. Set the custom model to be mistral/devstralq4_k_m and Base URL the api address we get from the last step in LM Studio. Set API Key to dummy. Click save changes.

We recommend using this model with the vLLM library to implement production-ready inference pipelines.

Installation

Make sure you install vLLM >= 0.8.5:

pip install vllm --upgrade

Doing so should automatically install mistral_common >= 1.5.4.

To check:

python -c "import mistral_common; print(mistral_common.__version__)"

You can also make use of a ready-to-go docker image or on the docker hub.

Server#

We recommand that you use Devstral in a server/client setting.

  1. Spin up a server:
vllm serve mistralai/Devstral-Small-2505 --tokenizer_mode mistral --config_format mistral --load_format mistral --tool-call-parser mistral --enable-auto-tool-choice --tensor-parallel-size 2
  1. To ping the client you can use a simple Python snippet.
import requests
import json
from huggingface_hub import hf_hub_download


url = "http://<your-server-url>:8000/v1/chat/completions"
headers = {"Content-Type": "application/json", "Authorization": "Bearer token"}

model = "mistralai/Devstral-Small-2505"

def load_system_prompt(repo_id: str, filename: str) -> str:
    file_path = hf_hub_download(repo_id=repo_id, filename=filename)
    with open(file_path, "r") as file:
        system_prompt = file.read()
    return system_prompt

SYSTEM_PROMPT = load_system_prompt(model, "SYSTEM_PROMPT.txt")

messages = [
    {"role": "system", "content": SYSTEM_PROMPT},
    {
        "role": "user",
        "content": [
            {
                "type": "text",
                "text": "Write a function that computes fibonacci in Python.",
            },
        ],
    },
]

data = {"model": model, "messages": messages, "temperature": 0.15}

response = requests.post(url, headers=headers, data=json.dumps(data))
print(response.json()["choices"][0]["message"]["content"])

Output

Certainly! The Fibonacci sequence is a series of numbers where each number is the sum of the two preceding ones, usually starting with 0 and 1. Here's a simple Python function to compute the Fibonacci sequence:

Iterative Approach#

This approach uses a loop to compute the Fibonacci number iteratively.

def fibonacci(n):
    if n <= 0:
        return "Input should be a positive integer."
    elif n == 1:
        return 0
    elif n == 2:
        return 1

    a, b = 0, 1
    for _ in range(2, n):
        a, b = b, a + b
    return b

# Example usage:
print(fibonacci(10))  # Output: 34
Recursive Approach#

This approach uses recursion to compute the Fibonacci number. Note that this is less efficient for large n due to repeated calculations.

def fibonacci_recursive(n):
    if n <= 0:
        return "Input should be a positive integer."
    elif n == 1:
        return 0
    elif n == 2:
        return 1
    else:
        return fibonacci_recursive(n - 1) + fibonacci_recursive(n - 2)

# Example usage:
print(fibonacci_recursive(10))  # Output: 34

\### Memoization Approach This approach uses memoization to store previously computed Fibonacci numbers, making it more efficient than the simple recursive approach.

def fibonacci_memo(n, memo={}):
    if n <= 0:
        return "Input should be a positive integer."
    elif n == 1:
        return 0
    elif n == 2:
        return 1
    elif n in memo:
        return memo[n]

    memo[n] = fibonacci_memo(n - 1, memo) + fibonacci_memo(n - 2, memo)
    return memo[n]

# Example usage:
print(fibonacci_memo(10))  # Output: 34

\### Dynamic Programming Approach This approach uses an array to store the Fibonacci numbers up to n.

def fibonacci_dp(n):
    if n <= 0:
        return "Input should be a positive integer."
    elif n == 1:
        return 0
    elif n == 2:
        return 1

    fib = [0, 1] + [0] * (n - 2)
    for i in range(2, n):
        fib[i] = fib[i - 1] + fib[i - 2]
    return fib[n - 1]

# Example usage:
print(fibonacci_dp(10))  # Output: 34

You can choose any of these approaches based on your needs. The iterative and dynamic programming approaches are generally more efficient for larger values of n.

Mistral-inference#

We recommend using mistral-inference to quickly try out / "vibe-check" Devstral.

Install#

Make sure to have mistral_inference >= 1.6.0 installed.

pip install mistral_inference --upgrade
Download#
from huggingface_hub import snapshot_download
from pathlib import Path

mistral_models_path = Path.home().joinpath('mistral_models', 'Devstral')
mistral_models_path.mkdir(parents=True, exist_ok=True)

snapshot_download(repo_id="mistralai/Devstral-Small-2505", allow_patterns=["params.json", "consolidated.safetensors", "tekken.json"], local_dir=mistral_models_path)
Python#

You can run the model using the following command:

mistral-chat $HOME/mistral_models/Devstral --instruct --max_tokens 300

If you prompt it with "Write me a unique and efficient function that computes fibonacci in Python", the model should generate something along the following lines:

Output

Certainly! A common and efficient way to compute Fibonacci numbers is by using memoization to store previously computed values. This avoids redundant calculations and significantly improves performance. Below is a Python function that uses memoization to compute Fibonacci numbers efficiently:

def fibonacci(n, memo=None):
    if memo is None:
        memo = {}

    if n in memo:
        return memo[n]

    if n <= 1:
        return n

    memo[n] = fibonacci(n - 1, memo) + fibonacci(n - 2, memo)
    return memo[n]

# Example usage:
n = 10
print(f"Fibonacci number at position {n} is {fibonacci(n)}")
Explanation:#
  1. Base Case: If n is 0 or 1, the function returns n because the Fibonacci sequence starts with 0 and 1.
  2. Memoization: The function uses a dictionary memo to store the results of previously computed Fibonacci numbers.
  3. Recursive Case: For other values of n, the function recursively computes the Fibonacci number by summing the results of fibonacci(n - 1) and fibonacci(n)
Ollama#

You can run Devstral using the Ollama CLI.

ollama run devstral
Transformers#

To make the best use of our model with transformers make sure to have installed mistral-common >= 1.5.5 to use our tokenizer.

pip install mistral-common --upgrade

Then load our tokenizer along with the model and generate:

import torch

from mistral_common.protocol.instruct.messages import (
    SystemMessage, UserMessage
)
from mistral_common.protocol.instruct.request import ChatCompletionRequest
from mistral_common.tokens.tokenizers.mistral import MistralTokenizer
from mistral_common.tokens.tokenizers.tekken import SpecialTokenPolicy
from huggingface_hub import hf_hub_download
from transformers import AutoModelForCausalLM

def load_system_prompt(repo_id: str, filename: str) -> str:
    file_path = hf_hub_download(repo_id=repo_id, filename=filename)
    with open(file_path, "r") as file:
        system_prompt = file.read()
    return system_prompt

model_id = "mistralai/Devstral-Small-2505"
tekken_file = hf_hub_download(repo_id=model_id, filename="tekken.json")
SYSTEM_PROMPT = load_system_prompt(model_id, "SYSTEM_PROMPT.txt")

tokenizer = MistralTokenizer.from_file(tekken_file)

model = AutoModelForCausalLM.from_pretrained(model_id)

tokenized = tokenizer.encode_chat_completion(
    ChatCompletionRequest(
        messages=[
            SystemMessage(content=SYSTEM_PROMPT),
            UserMessage(content="Write me a function that computes fibonacci in Python."),
        ],
    )
)

output = model.generate(
    input_ids=torch.tensor([tokenized.tokens]),
    max_new_tokens=1000,
)[0]

decoded_output = tokenizer.decode(output[len(tokenized.tokens):])
print(decoded_output)

Files

35 files · 375 GBWeights 5.56 GB (smallest of 25 GGUF variants). Sizes and sha256 from the signed manifest.
Show all 35 files with their sha256
FileSizesha256
.gitattributes3.46 KBefcc8bf011ea4782cc4da5164bb05fdfb859d76215635599fed2074a90161271
Devstral-Small-2505-BF16.gguf47.2 GB9cb264f12e35e7c86d6c3d4534ac1bc744ffbd13e08ac4c3d086ecb57c1bb253
Devstral-Small-2505-IQ4_NL.gguf13.5 GB1f482f7de3f04e580daf9507029707ec104b6c187670823a05e6bb4d343a684e
Devstral-Small-2505-IQ4_XS.gguf12.8 GBd1efaa1b3a84242a39bae6736b87d2c2de213fcc276a69141661cafe5dc84c71
Devstral-Small-2505-Q2_K.gguf8.89 GB2f632ede5e616a6f2efa1c31fa803f03d782b565ef24ca8fd4f342c575cd38d6
Devstral-Small-2505-Q2_K_L.gguf9.05 GBcc63045ba9c3b64249f9cfae61790352ffbd1b8b36aef7aed6b8a9ec675ae343
Devstral-Small-2505-Q3_K_M.gguf11.5 GB1f8fad245983b7fb7697d02f0c67b6cd45d1d422f01daf74c487467cd35a0e81
Devstral-Small-2505-Q3_K_S.gguf10.4 GB6e7e6af0c4985439fc133131418910f59ef0e4887a1036140d491e474e404ee4
Devstral-Small-2505-Q4_1.gguf14.9 GB9813e56840b1e3d276b8c859ba078a7bafd8720b8cf5c71bf3df3e6795a1b33d
Devstral-Small-2505-Q4_K_M.gguf14.3 GBd98d8300f6907baf284ac8d81c190bf9390cd9e55a0d8dee93693da1cd4e656b
Devstral-Small-2505-Q4_K_S.gguf13.5 GBcf11d0e670acb4926b265dd2f45fcb9319fb9d44e2d5f3aa0986034e9e331122
Devstral-Small-2505-Q5_K_M.gguf16.8 GB2776a60f837e933517736e6713209a344d257a9755146cf39eba2309376e825f
Devstral-Small-2505-Q5_K_S.gguf16.3 GB720550ee2e1e3515b8843ed97c9b93291474edcfe45cf513b01a1062e2b3589d
Devstral-Small-2505-Q6_K.gguf19.3 GB5868991237628f6430bf34dc22249bc6840c48414cfcda1f85d15ef0f815a21b
Devstral-Small-2505-Q8_0.gguf25.1 GB516104073e05d64321dc168566364c0cf0142f644208f71f38a1ca4093da6d68
Devstral-Small-2505-UD-IQ1_M.gguf6.02 GBafc01e5f23c6f0e381c1f33e25609863357976e6653304e635b7ea794048e724
Devstral-Small-2505-UD-IQ1_S.gguf5.56 GBd12d88dbb1dce118496cc89a9375f846b3b764ddaa1fd882692d614f22892e19
Devstral-Small-2505-UD-IQ2_M.gguf8.24 GBbe8922c7e5eb28fe93fd633c29f297e121f54fe3d501d4bb9053bc44561b726a
Devstral-Small-2505-UD-IQ2_XXS.gguf6.75 GB8104fd9dbf7a27c43fb8e89d7e43bd5cf591bfb8b075717bb3b471158b4b2b39
Devstral-Small-2505-UD-IQ3_XXS.gguf9.41 GB83741c39920090fbc83eebd4ba7d5bd8f6dcf75c06fb0b28198a47763c9260d6
Devstral-Small-2505-UD-Q2_K_XL.gguf9.29 GB0412b56d9f657e34c3ef91d688270a4f1a1b982e96c3f93a6f350907c07622b7
Devstral-Small-2505-UD-Q3_K_XL.gguf11.9 GBb916e3fa19f7d398461e8503f431dce47a9040e56acc922e32a65be67d586e3e
Devstral-Small-2505-UD-Q4_K_XL.gguf14.5 GBd8d48447e4de4c6ffab551d77c48d0898b50ea5d2b7f71ebf48332a7cb58c9a6
Devstral-Small-2505-UD-Q5_K_XL.gguf16.8 GB6a0bd5565982dfc837dced0dcab5d9f923b912eb5707bdc2bd441d94de9dbe02
Devstral-Small-2505-UD-Q6_K_XL.gguf20.8 GBef47e51f5b719e7591fd9faf0e9cb542dca76fc0769b0ef6cc029bad92419137
Devstral-Small-2505-UD-Q8_K_XL.gguf29.0 GB249babcc2c3ed84cb75b54cf7fd33aa370ed6b28eb5b6877cbf7ef514826f078
README.md20.5 KB73725f94ca008e3a5925e9e5fba20cc189538333b0fad260d6766731793185f8
config.json667 B5ee26dfca96780f43064d9e14d35185de576fd4a264e18b124381792281e6e89
imatrix_unsloth.dat10.0 MB19207bae9437d50ec61e413ba71e0de7e083f981f1d4564f125fb4519c618b27
mmproj-BF16.gguf878 MB26c877400a69146fdaf8b9da566a7d8a283e335c9e17c74360b2af30ff15a40a
mmproj-F16.gguf878 MB402640c0a0e4e00cdb1e94349adf7c2289acab05fee2b20ee635725ef588f994
mmproj-F32.gguf1.76 GBfe008d4fa9f135369cdfab450e2267212989fc76d533ef67242d1ccbde449efc
params200 Bf33f9ff08d53bfba0be7931806604efe66576f7aedfcc21c41a0679d832bdea7
system5.65 KB5725afc40acd80cbeefba61e41cf50eb7924f6ed2fe6aec2dc6fa0e9f2c396d1
template695 B6db27cd4e277c91264572b9c899c1980daa8dea11e902f0070a6f4763f3d13c8
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
099dd7ee95 pinned now2026-11-15 04:49 UTC35 files · 375 GB

Use it

$ fw get unsloth/Devstral-Small-2505-GGUF
# manifest sha256 186ad7c84291… · 375 GB · 35 files
$ fw verify ./Devstral-Small-2505-GGUF unsloth/Devstral-Small-2505-GGUF
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/unsloth/Devstral-Small-2505-GGUF.json --dir ./Devstral-Small-2505-GGUF $ python3 fw.py verify ./Devstral-Small-2505-GGUF ./unsloth__Devstral-Small-2505-GGUF.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download unsloth/Devstral-Small-2505-GGUF --revision 099dd7ee959e17c68c0f47fe060e5b46cc41f82c --local-dir ./Devstral-Small-2505-GGUF
llama.cppDownload one GGUF variant (Devstral-Small-2505-UD-IQ1_S, 5.56 GB), then serve it.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download unsloth/Devstral-Small-2505-GGUF --include "Devstral-Small-2505-UD-IQ1_S*" --local-dir ./Devstral-Small-2505-GGUF $ llama-server -m ./Devstral-Small-2505-GGUF/Devstral-Small-2505-UD-IQ1_S.gguf
OllamaMake an Ollama model from the downloaded file.
$ printf 'FROM ./Devstral-Small-2505-GGUF/Devstral-Small-2505-UD-IQ1_S.gguf\n' > Modelfile $ ollama create devstral-small-2505-gguf -f Modelfile

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
73725f94ca008e3a5925e9e5fba20cc189538333b0fad260d6766731793185f8
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: unsloth <huggingface.co/unsloth>Newsgroups: alt.freeweights.mistralSubject: Devstral-Small-2505-GGUFDate: 2026-11-15Commit: 099dd7eSigned: 2DC28CC7B26A283B ✓
Upstream
unsloth/Devstral-Small-2505-GGUF
Pinned commit
099dd7ee959e17c68c0f47fe060e5b46cc41f82c
Manifest
Devstral-Small-2505-GGUF.json · .minisig
Manifest sha256
186ad7c84291524f18a3bd0e3580feba5b87e812b521827ab86f5490808f28b3
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 04:49 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/unsloth/Devstral-Small-2505-GGUF.json $ curl -O https://freeweights.allternit.com/manifests/unsloth/Devstral-Small-2505-GGUF.json.minisig $ minisign -Vm Devstral-Small-2505-GGUF.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

Parent

mistralai/Devstral-Small-2505 · this model is a quantization of it

No model in the catalog names this one as its parent.

Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download unsloth/Devstral-Small-2505-GGUF
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. Devstral-Small-2505-GGUF.json. Provenance. Takedown history: none.
From: bartowski <huggingface.co/bartowski>Subject: alamios_Mistral-Small-3.1-DRAFT-0.5B-GGUF
From: microsoft <huggingface.co/microsoft>Subject: chatbench-mistral-7b
From: NousResearch <huggingface.co/NousResearch>Subject: DeepHermes-3-Mistral-24B-Preview
From: mistralai <huggingface.co/mistralai>Subject: Devstral-Small-2-24B-Instruct-2512
From: mlx-community <huggingface.co/mlx-community>Subject: Devstral-Small-2-24B-Instruct-2512-4bit
From: mlx-community <huggingface.co/mlx-community>Subject: Devstral-Small-2-24B-Instruct-2512-6bit