---
title: zhiyu2
canonical_url: "https://www.modelscope.cn/models/StabilityLab/zhiyu2"
md_url: "https://www.modelscope.cn/models/StabilityLab/zhiyu2.md"
repository: StabilityLab/zhiyu2
chinese_name: "稳定性保障实验室-SRE领域通用模型-智域2.0-32B-zhiyu"
last_updated: 2026-01-16
license: "Apache License 2.0"
pipeline_tag: text-generation
tasks:
  - text-generation
model_type:
  - qwen3
architectures:
  - Qwen3ForCausalLM
base_model:
  - Qwen/Qwen3-32B
base_model_relation: finetune
library_name:
  - safetensors
  - pytorch
frameworks:
  - pytorch
language:
  - zh
  - en
downloads: 199
stars: 3
tags:
  - SRE
  - AIOps
  - "智能运维"
  - "稳定性保障"
---

# zhiyu2

> zhiyu2 - StabilityLab 在 ModelScope 开源的模型。一、领域数据扩充 预训练数据大幅扩充（新增 1.3B Token SRE领域数据）

StabilityLab/zhiyu2 是 ModelScope 魔搭社区上的text-generation模型，采用 Apache License 2.0 许可，基于 Qwen/Qwen3-32B 构建。

- **Repository**: StabilityLab/zhiyu2
- **License**: Apache License 2.0
- **Tasks**: text-generation
- **Base model**: Qwen/Qwen3-32B
- **Tags**: SRE, AIOps, 智能运维, 稳定性保障
- **Downloads**: 199
- **Stars**: 3
- **Last updated**: 2026-01-16

Source: https://www.modelscope.cn/models/StabilityLab/zhiyu2

---

# 智域2.0更新说明

## 一、领域数据扩充
预训练数据大幅扩充（新增 1.3B Token SRE领域数据）

**SRE领域专业数据扩展**
- 中文数据：新增 **0.2B Token** 高质量SRE领域语料
- 英文数据：新增 **1.1B Token** 高质量SRE领域语料

## 二、训练数据质量提升

构建数据清洗体系，适用于Pretrain预训练数据和SFT监督微调数据的质量提升。整个方案采用"规则引擎+大模型智能识别"的双重保障策略，充分结合了中文数据的特点进行深度适配。在规则层面，通过中文规则来评估和处理常见的数据质量问题；在智能识别层面，利用大模型的理解能力进行更深层次的质量评估和修复。

规则清洗层面设计了七项针对性的评估器来捕获各类格式和内容问题，快速识别并过滤掉明显的低质量数据。这些评估器包括：

- RuleColonEnd 用于检查异常的冒号结尾
- RuleContentNull 用于过滤空内容
- RuleDocRepeat 用于识别重复内容
- RuleHtmlEntity 用于检测HTML实体
- RuleNoPunc 用于检查标点缺失
- RuleSpecialCharacter 用于过滤特殊字符
- RuleLineStartWithBulletpoint 用于校验项目符号的格式规范性

在大模型清洗层面使用两个核心评估器来完成预训练数据与微调数据质量提升。

- DatamanPretrainAssessment 用于预训练数据的质量评估，它从13个维度对数据进行1到5分的打分，这些维度涵盖了准确性、学术规范性、语义密度、知识新颖性、主题聚焦性等关键指标，同时支持15个预定义领域的分类，并最终给出0到1分的综合数据得分
- DatamanSFTAssessment 通过优化Prompt来适配SFT数据的评估需求，更好地服务于指令遵循场景

对于评估为低质量的数据建立了智能修复机制。基于评估器生成的数据质量问题描述进行针对性的数据重写，力求最大化保留有价值的数据。进一步，在重写机制的基础上增加一致性校验环节，判断重写前后的语义一致性，避免信息失真与幻觉引入。

![](images/data.png)

## 三、领域逻辑推理能力提升
针对SRE领域构建的思维链数据集，能够显著增强模型在专业运维场景下的推理和决策能力，DevOps-Eval评测从78.84%提升至83.48%。

### 3.1 构建SRE领域思维链数据集（总计 73,655条）
针对SRE领域构建思维链数据集，总规模达到73,655条，旨在全面提升模型的推理能力和领域专业性。数据集由两个核心部分组成，分别针对不同的推理场景进行设计和优化。

第一部分是选择题SRE领域思维链数据集，规模达到58,057条，占据了整个数据集的主体。基于SRE领域预训练数据生成选择题题目，然后采用推理大模型生成完整的思维链过程，保证推理过程的逻辑性和连贯性。建立严格筛选机制仅保留答案正确的高质量数据，避免错误推理路径对模型训练的负面影响。这部分数据旨在提升模型在SRE领域场景中的逻辑推理能力和选择判断能力。

第二部分是SRE领域QA思维链数据集，规模为15,598条，这部分数据是基于SRE领域SFT数据中的问答数据进行深度优化构造的。采用语义相似度与推理质量的双重筛选标准，确保每一条数据不仅在语义上准确，而且推理过程清晰合理。通过这种严格的质量把控，我们保留了整体质量较高的思维链问答数据。这部分数据旨在提升模型问答的准确性和推理透明度，使模型不仅能给出正确答案，还能展现清晰的推理过程，增强可解释性。

#### 选择题思维链数据集
- **数据规模：58,057条**
- **构建方式**：基于预训练数据自动生成选择题，采用推理大模型生成完整思维链
- **质量保证**：仅保留答案正确的高质量数据
- **核心价值**：增强模型逻辑推理和选择判断能力

#### QA思维链数据集
- **数据规模：15,598条**
- **优化方法**：基于原始QA数据构造，通过语义相似度与推理质量双重筛选
- **质量标准**：保留整体质量较高的带思维链问答数据
- **核心价值**：提升模型问答准确性和推理透明度

### 3.2 Reasoning数据训练效果提升
**1. 综合能力评估**
- **MMLU**：0.8058 → 0.8351（+2.93%）

**2. 工具调用能力提升**
- **Function Call（BFCL-v3）**：0.6627 → 0.6906（提升2.79个百分点）

**3. 指令遵循能力稳步提升**
- **指令遵从（IFEval）**：0.8801 → 0.8981（提升1.80个百分点）
- 思维链训练增强了模型对复杂指令的理解和执行能力

**4. 领域测试集**
- **DevOps-Eval评测**：0.7884 → 0.8348（+4.64%）

## 四、SRE场景多轮工具使用强化学习
在SRE场景智能体构建过程中，经常会面临高上下文依赖、多工具协同的复杂推理问题。然而，传统的有监督微调范式通常需要较高的标注成本，且难以保障泛化性。因此，本阶段采用一种**Agentic RL训练范式**，将SRE场景智能体建模为具备工具调用能力的策略模型，并通过强化学习优化其决策轨迹，而非仅学习静态输出。该训练范式以大语言模型作为决策核心，通过**多角色LLM协同数据构建**、**细粒度多维奖励建模**、以及**基于GRPO的训练机制**，实现对复杂SRE运维任务中工具调用序列的自主推理与高效执行。为了保障训练和评估的可行性，该阶段还构建了MCP系统以提供训练与评估的闭环支撑。目前，该训练阶段已在包含378条训练样本与97条评估样本的真实SRE数据集上验证了有效性。
### 4.1 整体架构

![](images/rl_framework.png)

如图中所示，该训练阶段由以下四大组件构成：
- **LLM协同增强的数据集构建流水线**：通过多角色LLM协同，从SRE场景知识库和原始查询中生成高质量、结构化的轨迹样本。
- **多维可配置奖励系统**：对每条工具调用轨迹进行细粒度评分，构成强化学习的监督信号。
- **MCP系统**：统一管理多源异构工具，为训练和评估提供基础保障。
- **GRPO驱动的Agentic RL训练**：基于群组轨迹进行学习，仅对“思考与调用”部分进行策略梯度更新。

### 4.2 LLM协同增强的数据集构建流水线
为构建适用于Agentic RL训练的轨迹数据集，该阶段设计了一套四阶段闭环数据构建流水线，其核心在于将真实运维经验与LLM的泛化生成能力相结合，并通过模拟工具结果与质量过滤机制保障数据可用性。具体流程如下：

#### 4.2.1 场景理解与种子模板聚类（LLM-Analyzer + LLM-Cluster）
训练集起始于两类原始输入：

- SRE场景知识库：包含与具体业务场景绑定的知识库。例如，可以是业务具体拓扑、常见故障模式、标准操作流程、工具接口规范、历史工单等各种结构化与非结构化运维知识。
- 企业内SRE场景中真实查询：来自生产环境的用户原始自然语言请求（如“xx服务响应超时，请分析xxx业务的服务端问题”）。这是构建合成数据的重要参考信息。

将上述输入交由**LLM-Analyzer**模块进行深度语义解析，理解查询背后涉及的具体业务场景信息，并提供初步的工具调用链建议。接着，使用**LLM-Cluster**模块，基于知识库与用户查询行为，基于语义相似性对样本进行分组，识别出高频的提问模式（如“XX服务响应异常”）与对应的黄金工具调用链模式（如 [ID查询 --> 分析工具 --> 结论]）。每个聚类簇提炼出一个代表性“种子样本”，作为后续数据扩充的模板。

#### 4.2.2 基于种子的可控数据扩充（LLM-Enhancer + LLM-Mocker）

以聚类得到的种子样本为基础，**LLM-Enhancer**执行可控的多样性扩充，例如：

- 改写提问表述（如“响应慢”改成“延迟升高”、“TP99突增”等）。
- 扩展至新业务线（如将“A业务”改成“B业务”等）。
- 生成符合工具接口规范的调用参数（如生成合法的业务ID、时间范围、错误码等）。

由于扩充样本可能涉及尚未发生的真实工具调用，为构建完整的轨迹（含工具返回），系统同步调用**LLM-Mocker**模块：

- LLM-Mocker基于工具的真实返回格式（由SRE工具库定义）与上下文语义，模拟生成仿真的工具响应（如日志片段、性能指标、配置快照）。
- 确保模拟结果在格式、字段、数值范围上与真实工具一致，从而维持轨迹的语义连贯性与训练真实性。

此阶段产出扩充的完整轨迹样本，每个样本包含“自然语言查询 --> 模型思考 --> 工具调用 --> 模拟工具返回 --> 后续思考 --> 最终回答”的链条，以及与奖励系统适配的评分配置。

#### 4.2.3 质量过滤与拒绝采样（LLM-Rejector）
为保障训练数据质量，所有扩充样本需通过**LLM-Rejector**的多维质量校验。该模块基于SRE专家规则与LLM判断，从多个维度执行拒绝采样，例如：
- 工具调用缺失关键步骤（违反完整性）。
- 调用顺序违反依赖约束（如未获取ID直接查日志）。
- 工具参数不符合接口Schema（如传入字符串到数值字段）。
- 模拟工具返回与调用上下文逻辑冲突（如查询ID返回空但后续仍使用该ID）。
- 最终结论与工具返回信息不一致。

被拒绝的样本会被剔除，剩余高质量样本构成最终数据集。

### 4.3 多维可配置奖励系统
为指引策略模型学习高质量决策行为，系统设计了六维度、样本级、可动态加权的奖励函数，每条轨迹获得一个综合得分：

- 轨迹完整性：完成当前任务需要调用的工具都调用到。
- 轨迹高效性：完成当前任务无需调用的工具不要滥用。
- 工具调用顺序正确性：有依赖关系的工具需要按照顺序调用。
- 工具调用参数正确性：调用工具生成的参数需要准确。
- 格式正确性：需要按照要求正确生成格式。
- 结果正确性：最终结论需要符合真实标注。

由于SRE场景的复杂性和多样性，该奖励系统提供样本级的定制配置，且各维度可独立配置权重，支持多场景适配。该奖励系统构成GRPO训练的核心信号源。

### 4.4 MCP系统

为支撑上述训练与评估需求，该阶段构建了MCP系统，对多源异构的工具来源进行统一支持，例如：
- **SRE工具库**
- **场景注册工具**
- **场景MCP工具**
- **检索工具**

为了支持模型训练和评估，该系统同时支持了在线模式和离线模式。其中：

- **在线模式**：通过直连线上真实环境，可以在智能体执行过程中获取真的工具调用结果，作为LLM-Mocker的参考等。
- **离线模式**：对离线缓存（在线模式收集或轨迹结果直接保存）的工具调用结果进行直接返回，从而提供高并发、高稳定、可复现的工具环境，保障模型的训练和评估。

### 4.5 GRPO驱动的Agentic RL训练

不同于标准PPO，GRPO通过群组内相对排序提升样本利用效率与训练稳定性。具体流程如下：

#### 4.5.1 轨迹采样

对同一输入查询（如“xxx服务响应超时，请分析xxx业务的服务端问题”），策略模型并行采样生成n条轨迹（例如n=4），每条轨迹由交替的“模型生成段”与“工具返回段”组成。

#### 4.5.2 Mask机制与梯度控制

为每个token设置mask标志：
- **mask=1**：模型生成的“思考”与“工具调用”部分（需优化）。
- **mask=0**：工具返回的客观结果（如日志片段、ID值等，不可训练）。

此设计确保梯度仅在策略动作空间反向传播，避免模型试图“生成工具输出”，从而解耦决策与感知。

#### 4.5.3 群组排序与损失计算
- 每条轨迹由奖励系统打分。
- 均值和优势计算。
- 计算GRPO损失：

![](images/rl_formula.png)

其中G即为同一查询下的轨迹群组。该损失鼓励高分轨迹的概率高于低分轨迹。

#### 4.5.4 参数更新

仅对`mask=1`的token计算策略梯度，完成模型参数更新。此机制有效聚焦于“如何正确调用工具”，而非“如何臆测工具返回内容”。

### 4.6 结论
| 模型 | SRE场景测试集 |
| --- | --- |
| Qwen3-32B | 0.6324 ± 0.0184 |
| zhiyu-2.0-32B | 0.8202 ± 0.0146 |

总体而言，该训练阶段核心在于：

- LLM协同增强的数据集构建流水线，解决高质量轨迹数据稀缺问题。
- 多维可配置奖励系统，精准评估、指导模型学习运维专家行为。
- MCP系统，提供可靠的训练和评估工具环境。
- GRPO驱动的Agentic RL训练，实现高效、稳定的策略优化。

![](images/rl_detail.png)

# 部署指引
## NVIDIA VLLM 部署方式
- 推荐硬件配置：24C 48G L20 * 4
- 先将模型文件下载到主机目录（具体可参考[模型的下载](https://modelscope.cn/docs/models/download)），假设本地保存的目录为：`/local/dir/of/zhiyu2`
- 启动镜像，此处用最新的VLLM官方镜像即可，启动命令可以参考(需要提前安装nvidia-docker插件)
```bash
docker run  -d --network host  -v /local/dir:/local/dir  --gpus 4 vllm/vllm-openai:v0.9.2 \
    --port 8000 --model /local/dir/of/zhiyu2 \
    --tensor-parallel-size 4 \
    --pipeline-parallel-size 1 \
    --served-model-name zhiyu2 \
     --trust-remote-code \
     --api-key your_token_key \
     --gpu-memory-utilization 0.9 \
     --enable-auto-tool-choice \
     --tool-call-parser hermes \
     --enforce-eager --max-num-seqs 32 \
     --rope-scaling {"rope_type":"yarn","factor":4.0,"original_max_position_embeddings":32768} \
     --max-model-len 131072
```

## 昇腾 VLLM 部署方式
- 推荐硬件配置：24C 48G 910B * 2
- 先将模型文件下载到主机目录，假设本地保存的目录为：`/local/dir/of/zhiyu2`
- 启动镜像（可以联系华为云的支持获取最新的vllm镜像）
```bash
docker run -i -t  -d \
        --user root \
        --name test-0 \
        --device=/dev/davinci0\
        --device=/dev/davinci1\
        -v /etc/localtime:/etc/localtime  \
        -v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
        -v /usr/local/Ascend/firmware:/usr/local/Ascend/firmware \
        --device=/dev/davinci_manager \
        --device=/dev/devmm_svm \
        --device=/dev/hisi_hdc \
        -e ASCEND_RT_VISIBLE_DEVICES=0,1  \
        -v /var/log/npu/:/usr/slog \
        -v /usr/local/sbin/npu-smi:/usr/local/sbin/npu-smi \
        -v /local/dir:/local/dir \
        --net=host \

# 此处{VLLM_IMAGE_NAME}替换为真实的镜像名称
{VLLM_IMAGE_NAME} python -m vllm.entrypoints.openai.api_server --model /local/dir/of/zhiyu2 \
--max-num-seqs=256 \
--max-model-len=32768 \
--max-num-batched-tokens=32768 \
--tensor-parallel-size=2 \
--block-size=128 \
--host=0.0.0.0 \
--port=8081 \
--gpu-memory-utilization=0.9 \
--num-scheduler-steps=8  \
--multi-step-stream-outputs=false \
--trust-remote-code \
--enable-auto-tool-choice \
--tool-call-parser hermes \
--served-model-name zhiyu2
```

# 使用指引
## 使用 openai
如果使用vllm部署方式，则参考[vllm官方手册](https://docs.vllm.ai/en/latest/getting_started/quickstart.html)进行调用即可。
```python
from openai import OpenAI

# 需根据实际部署配置修改对应参数值
openai_api_key = "your_token_key"
openai_api_base = "http://localhost:8000/v1"
client = OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)
chat_response = client.chat.completions.create(
    model="zhiyu2",
    messages=[
        {"role": "user", "content": "什么是CI、CD、CO？"},
    ]
)
print("Chat response:", chat_response)
```

## 使用 modelscope
如果基于modelscope，则使用的代码示例如下：
```python
from modelscope import AutoModelForCausalLM, AutoTokenizer

model_name = "StabilityLab/zhiyu2"

# 加载分词器和模型
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto",
)

# 模型输入
prompt = "什么是CI、CD、CO？"
messages = [
    {"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)

# 模型预测
generated_ids = model.generate(
    **model_inputs,
    max_new_tokens=32768,
)
output_ids = generated_ids[0][len(model_inputs.input_ids[0]):].tolist() 
output = tokenizer.decode(output_ids, skip_special_tokens=True)
print(output)
```

# 开源协议
本模型权重采用Apache 2.0许可证授权。

需注意：
本模型衍生自Qwen-3系列模型（原采用Apache 2.0许可证）
