mistralai/Mistral-Medium-3.5-128B
摘要
Mistral AI 发布了 Mistral Medium 3.5,这是一款拥有 1280 亿参数的密集多模态模型,具备 256K 上下文窗口、可配置推理能力,并在指令遵循、推理和编程任务方面实现了性能提升。
查看缓存全文
缓存时间: 2026/05/08 08:56
mistralai/Mistral-Medium-3.5-128B · Hugging Face 来源:https://huggingface.co/mistralai/Mistral-Medium-3.5-128B
Mistral Medium 3.5 是我们首款旗舰级合并模型。这是一款拥有 128B 参数的稠密模型,具备 256k 上下文窗口,在单一权重集合中同时处理指令遵循、推理和编程任务。Mistral Medium 3.5 取代了其前代产品 Mistral Medium 3.1 和 Magistral 在 Le Chat 中的位置,同时也替代了 Devstral 2 在我们编程智能体 Vibe 中的角色。具体而言,与之前发布的模型相比,这款统一的新模型在指令遵循、推理和编程任务上都有更出色的表现。推理强度可按请求配置,因此同一模型既能快速回复聊天,也能完成复杂的智能体任务。
我们从头训练了视觉编码器,以处理可变图像尺寸和宽高比。更多信息请访问我们的博客(https://mistral.ai/news/vibe-remote-agents-mistral-medium-3-5)。
如需使用 vLLM 或 SGLang 加速本地推理,请查看我们发布的 EAGLE 模型(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B-EAGLE)。
Transformers 配置最初存在一个错误条目,导致长上下文性能下降。此问题已在此提交中修复(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B/commit/c4be198050fb5789774a55b92ed697becfbf20ae)。在此提交之前使用 Transformers 配置生成的 GGUF 也会受到影响。请使用正确的配置以获得最佳性能。
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#key-features 核心特性
Mistral Medium 3.5 包含以下架构设计:
- 128B 稠密参数
- 256k 上下文长度
- 多模态输入:接受文本和图像输入,输出文本
- 指令遵循与推理功能,支持函数调用(推理强度可按请求配置)
Mistral Medium 3.5 提供以下能力:
- 推理模式:在快速即时回复模式和推理模式之间切换,按需通过测试时计算提升性能
- 视觉:分析图像并基于视觉内容提供洞察,同时支持文本
- 多语言:支持数十种语言,包括英语、法语、西班牙语、德语、意大利语、葡萄牙语、荷兰语、中文、日语、韩语和阿拉伯语
- 系统提示:对系统提示有强遵循性和支持
- 智能体:具备原生函数调用和 JSON 输出的顶级智能体能力
- 大上下文窗口:支持 256k 上下文窗口
我们在**修改版 MIT 许可证(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B/blob/main/LICENSE)**下发布此模型:对商业和非商业用途均开源,但对高收入企业有例外条款。
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#recommended-settings 推荐设置
-
推理强度:
'none'→ 不使用推理'high'→ 使用推理(推荐用于复杂提示和智能体场景)
对复杂任务和智能体编程使用
reasoning_effort="high"。 -
Temperature:
reasoning_effort="high"时使用 0.7;reasoning_effort="none"时根据任务在 0.0 到 0.7 之间调整。通常,较低值意味着回答更简洁,较高值允许模型更具创造性。建议尝试不同值以优化模型性能满足需求。 -
Top p:
reasoning_effort="high"时使用 0.95。可尝试不同值,但保持接近此值通常效果最佳。reasoning_effort="none"时设为None(或1.0)。
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#benchmarks 基准测试
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#agentic-benchmarks 智能体基准测试
Mistral Medium 3.5 超越了我们之前所有编程模型,即 Devstral,在所有基准测试中表现更优。它在 τ3-Telecom 上得分 91.4%,在 SWE-Bench Verified 上得分 77.6%。由于其更强的智能体能力,Mistral Medium 3.5 在我们的编程智能体 Vibe CLI 中替代了 Devstral 2。
Mistral 智能体基准测试(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B/resolve/main/images/image2.png) Mistral 智能体基准测试 SWE-bench(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B/resolve/main/images/image3.png) Mistral 智能体与竞品模型基准测试(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B/resolve/main/images/image4.png)
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#instruction-following-reasoning-and-coding-benchmarks 指令遵循、推理与编程基准测试
我们将 Mistral Medium 3.5 与竞品模型在指令遵循、推理(数学)和编程基准上进行了比较。凭借其统一的能力,它在所有这些任务中都取得了优异成绩,Mistral Medium 3.5 现已为 Le Chat 提供支持。
指令遵循、推理与智能体基准测试(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B/resolve/main/images/image1.png)
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#usage 使用方法
Mistral Medium 3.5 已在多个推理和微调库中获得支持。我们在此感谢所有帮助实现这一目标的贡献者和维护者。
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#mistral-vibe Mistral-Vibe
通过 Mistral Vibe(https://github.com/mistralai/mistral-vibe)使用 Mistral Medium 3.5。
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#install 安装
安装最新版本:
uv pip install mistral-vibe --upgrade
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#api-usage API 使用
启动 vibe 即可选择 Mistral Medium 3.5。如果是首次启动 vibe,它将:
- 在 ~/.vibe/config.toml 创建默认配置文件
- 如果 API 密钥尚未配置,提示您输入
- 将 API 密钥保存到 ~/.vibe/.env 以供将来使用
现在选择 mistral-medium-3.5 开始构建吧!
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#local-server 本地服务器
如果您想使用本地 vLLM 服务器而非调用 Mistral API,可以按以下步骤操作:
- 按照
Usage - vllm(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#vllm-recommended)中的说明启动 vllm 服务器 - 在
~/.vibe/config.toml中添加模型配置:
display_name = "Mistral Medium 3.5 (local vLLM)"
description = "Mistral Medium 3.5 mode using local vLLM"
safety = "neutral"
active_model = "mistral-medium-3.5" # 确保这是唯一的 active_model 条目
[[providers]]
name = "vllm"
api_base = "http://<your-server-url>:8000/v1"
api_key_env_var = ""
backend = "generic"
api_style = "reasoning"
[[models]]
name = "mistralai/Mistral-Medium-3.5-128B"
provider = "vllm"
alias = "mistral-medium-3.5"
thinking = "high"
temperature = 0.7
auto_compact_threshold = 168000
[tools.bash]
default_timeout = 1200
注意:
- 确保将 `` 替换为您的服务器 URL
- 也支持其他推理后端。更多信息请查看 Mistral Vibe 仓库(https://github.com/mistralai/mistral-vibe)
然后重启 vibe 并 “tab-shift” 切换到 “mistral-medium-3.5” 模式。在一些编程智能体任务上试试吧,开始构建酷炫的东西!
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#inference 推理
该模型可通过以下方式部署:
vllm (recommended)(https://github.com/vllm-project/vllm):见此处(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#vllm-recommended)llama.cpp(https://github.com/ggml-org/llama.cpp):见此处(https://huggingface.co/unsloth/Mistral-Medium-3.5-128B-GGUF)获取 Unsloth 的 GGUFLM studio(https://lmstudio.ai/):进行中,敬请期待!Ollama(https://ollama.com//):见此处(https://ollama.com/library/mistral-medium-3.5)SGLang(https://github.com/sgl-project/sglang):见此处(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#sglang)transformers(https://github.com/huggingface/transformers):见此处(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#transformers)
为获得最佳性能,如果本地服务效果不佳,我们建议使用 Mistral AI API。 确保依赖 Transformers 配置的框架(包括 GGUF 文件)已更新至此次提交(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B/commit/c4be198050fb5789774a55b92ed697becfbf20ae)中的修复。否则,您将体验到次优性能,尤其在长上下文会话中。
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#fine-tuning 微调
通过以下方式微调模型:
Axolotl(https://github.com/axolotl-ai-cloud/axolotl):见此处(https://docs.axolotl.ai/docs/models/mistral-medium-3_5.html)Unsloth(https://unsloth.ai/):见此处(https://unsloth.ai/docs/models/mistral-3.5)
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#vllm-recommended vLLM(推荐)
我们推荐使用 vLLM 库(https://github.com/vllm-project/vllm)进行生产级推理。
如需使用 vLLM 加速本地推理,请查看我们发布的 EAGLE 模型(https://huggingface.co/mistralai/Mistral-Medium-3.5-128B-EAGLE)
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#installation 安装
确保安装 vllm nightly:
uv pip install -U vllm \
--torch-backend=auto \
--extra-index-url https://wheels.vllm.ai/nightly
执行上述命令应自动安装 mistral_common >= 1.11.1(https://github.com/mistralai/mistral-common/releases/tag/v1.11.0)和 transformers >= 5.4.0。
验证安装:
python -c "import mistral_common; print(mistral_common.__version__)"
python -c "import transformers; print(transformers.__version__)"
您也可以使用即用型 Docker 镜像(https://github.com/vllm-project/vllm/blob/main/docker/Dockerfile)或在 Docker Hub(https://hub.docker.com/layers/vllm/vllm-openai/nightly)上获取。
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#serve-the-model 启动模型服务
我们推荐服务器/客户端架构:
vllm serve mistralai/Mistral-Medium-3.5-128B --tensor-parallel-size 8 \
--tool-call-parser mistral --enable-auto-tool-choice --reasoning-parser mistral --max_num_batched_tokens 16384 --max_num_seqs 128 \
--gpu_memory_utilization 0.8
https://huggingface.co/mistralai/Mistral-Medium-3.5-128B#ping-the-server 测试服务器
指令遵循 — Mistral Medium 3.5 能严格按您的指令执行。
from datetime import datetime, timedelta
from huggingface_hub import hf_hub_download
from openai import OpenAI
# 修改 OpenAI 的 API 密钥和 API 基础地址以使用 vLLM 的 API 服务器。
openai_api_key = "EMPTY"
openai_api_base = "http://localhost:8000/v1"
REASONING_EFFORT = "none" # 使用 'high' 切换推理模式。
match REASONING_EFFORT:
case "none":
TEMP = 0.1
TOP_P = None
case "high":
TEMP = 0.7
TOP_P = 0.95
case _:
raise ValueError("仅支持 REASONING_EFFORT 为 ['none', 'high']。")
client = OpenAI(
api_key=openai_api_key,
base_url=openai_api_base,
)
models = client.models.list()
model = models.data[0].id
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()
today = datetime.today().strftime("%Y-%m-%d")
yesterday = (datetime.today() - timedelta(days=1)).strftime("%Y-%m-%d")
model_name = repo_id.split("/")[-1]
return system_prompt.format(name=model_name, today=today, yesterday=yesterday)
SYSTEM_PROMPT = load_system_prompt(model, "SYSTEM_PROMPT.txt")
messages = [
{"role": "system", "content": SYSTEM_PROMPT},
{
"role": "user",
"content": "Write me a sentence where every word starts with the next letter in the alphabet - start with 'a' and end with 'z'.",
},
]
response = client.chat.completions.create(
model=model,
messages=messages,
reasoning_effort=REASONING_EFFORT,
temperature=TEMP,
top_p=TOP_P,
)
print("==============================================================")
print(f"Request with {REASONING_EFFORT=}, {TEMP=} and {TOP_P=}.")
print("==============================================================")
print("REASONING")
print("~~~~~~~~~")
print(response.choices[0].message.reasoning)
print("==============================================================")
print("CONTENT")
print("~~~~~~~")
print(response.choices[0].message.content)
工具调用 — 借助我们简单的 Python 计算器工具来解方程。
import json
from datetime import datetime, timedelta
from openai import OpenAI
from huggingface_hub import hf_hub_download
# 修改 OpenAI 的 API 密钥和 API 基础地址以使用 vLLM 的 API 服务器。
openai_api_key = "EMPTY"
openai_api_base = "http://localhost:8000/v1"
REASONING_EFFORT = "none" # 使用 'high' 切换推理模式。
match REASONING_EFFORT:
case "none":
TEMP = 0.1
TOP_P = None
case "high":
TEMP = 0.7
TOP_P = 0.95
case _:
raise ValueError("仅支持 REASONING_EFFORT 为 ['none', 'high']。")
client = OpenAI(
api_key=openai_api_key,
base_url=openai_api_base,
)
models = client.models.list()
model = models.data[0].id
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()
today = datetime.today().strftime("%Y-%m-%d")
yesterday = (datetime.today() - timedelta(days=1)).strftime("%Y-%m-%d")
model_name = repo_id.split("/")[-1]
return system_prompt.format(name=model_name, today=today, yesterday=yesterday)
SYSTEM_PROMPT = load_system_prompt(model, "SYSTEM_PROMPT.txt")
image_url = "https://math-coaching.com/img/fiche/46/expressions-mathematiques.jpg"
def my_calculator(expression: str) -> str:
return str(eval(expression))
tools = [
{
"type": "function",
"function": {
"name": "my_calculator",
"description": "A calculator that can evaluate a mathematical expression.",
"parameters": {
"type": "object",
"properties": {
"expression": {
"type": "string",
"description": "The mathematical expression to evaluate.",
},
},
"required": ["expression"],
},
},
},
{
"type": "function",
"function": {
"name": "rewrite",
"description": "Rewrite a given text for improved clarity",
"parameters": {
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "The input text to rewrite",
}
},
},
},
},
]
messages = [
{"role": "system", "content": SYSTEM_PROMPT},
{
"role": "user",
"content": [
{
"type": "text",
"text": "Thanks to your calculator, compute the results for the equations that involve numbers displayed in the image.",
},
{
"type": "image_url",
"image_url": {
"url": image_url,
},
},
],
},
]
response = client.chat.completions.create(
model=model,
messages=messages,
tools=tools,
tool_choice="auto",
reasoning_effort=REASONING_EFFORT,
temperature=TEMP,
top_p=TOP_P,
)
tool_calls = response.choices[0].message.tool_calls
results = []
for tool_call in tool_calls:
function_name = tool_call.function.name
function_args = tool_call.function.arguments
if function_name == "my_calculator":
result = my_calculator(**json.loads(function_args))
results.append(result)
messages.append({"role": "assistant", "tool_calls": tool_calls})
for tool_call, result in zip(tool_calls, results):
messages.append(
{
"role": "tool",
"tool_call_id": tool_call.id,
"name": tool_call.function.name,
"content": result,
}
)
response = client.chat.completions.create(
model=model,
messages=messages,
reasoning_effort=REASONING_EFFORT,
temperature=TEMP,
top_p=TOP_P,
)
print("==============================================================")
print(f"Request with {REASONING_EFFORT=}, {TEMP=} and {TOP_P=}.")
print("==============================================================")
print("REASONING")
print("~~~~~~~~~")
print(response.choices[0].message.reasoning)
print("==============================================================")
print("CONTENT")
print("~~~~~")
相似文章
@mishig25: 开源真的回来了 http://hf.co/mistralai/Mistral-Medium-3.5-128B…
Mistral AI发布了Mistral Medium 3.5,这是一个开源的128B稠密模型,支持256k上下文、多模态输入、可配置推理和智能体能力。
Mistral OCR 4
Mistral AI 发布了 Mistral OCR 4,一款紧凑型文档智能模型,能够提供边界框、块分类和内置信度评分,用于结构化文本提取。该模型支持170种语言,可在单个容器中运行以实现自托管部署,并与 Mistral Search Toolkit 集成,用于企业搜索和 RAG 管线。
微软的全新MAI模型
微软宣布推出两款全新大语言模型(LLMs):MAI-Thinking-1(350亿参数推理模型)和MAI-Code-1-Flash(50亿参数代码模型)。两款模型均基于企业级、无污染的干净数据训练,且未使用第三方蒸馏技术。据称,在盲评中,MAI-Thinking-1的受欢迎程度超过了Sonnet 4.6。
Mistral Vibe
Mistral Vibe 是一款专为长时间运行、多步骤工作和编码任务设计的 AI 智能体。
MiniMaxAI/MiniMax-M3
MiniMax 发布 M3,一款原生多模态模型,拥有100万上下文和约4280亿参数,采用 MiniMax Sparse Attention (MSA) 实现高效长上下文处理,达到前沿级别的编码和智能体性能。