소스 정보
- 저장소
- mindspore-ai/akg
- 최근 소스 활동
- 2026년 4월 7일 11:59
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 259
- 포크
- 48
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/mindspore-ai/akg --skill vllm-ascend-post-process명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | vllm-ascend-post-process |
| description | 后处理优化 - 对vllm-ascend计算结果进行优化处理,包括Triton Kernel优化、NPU算子优化等。 |
| triggers | ["vllm-ascend后处理优化","vllm-ascend post process","vllm-ascend后处理"] |
vllm-ascend 是基于 vllm 二次开发适配 ASCEND (华为昇腾) 的推理框架,使用 PyTorch + NPU 后端,后处理使用 Triton 自定义算子 实现。
vllm-ascend 有两套采样架构:
| Rule | Value |
|---|---|
| 采样架构 | V1 (PyTorch+NPU) / V2 (Triton) |
| 核心文件 | vllm_ascend/worker/v2/sample/ |
| 优化重点 | Triton Kernel、NPU算子、惩罚计算、Gumbel采样 |
文件路径 | 作用 | 关键函数
vllm_ascend/worker/v2/sample/sampler.py | V2采样主入口 | AscendSampler.sample()
vllm_ascend/worker/v2/sample/penalties.py | 核心后处理-惩罚计算 | apply_penalties_and_temperature(), _penalties_and_temperature_kernel (Triton)
vllm_ascend/worker/v2/sample/gumbel.py | Gumbel采样 | gumbel_sample(), _gumbel_sample_kernel (Triton)
vllm_ascend/sample/sampler.py | V1采样实现 | AscendSampler, AscendTopKTopPSampler
csrc/apply_top_k_topp_custom/ | Top-K/Top-P 自定义算子 | NPU融合算子实现
模型输出 Logits
│
▼
┌─────────────────────────────────────────┐
│ 1. 惩罚计算 (penalties.py) │
│ - Repetition Penalty (重复惩罚) │
│ - Frequency Penalty (频率惩罚) │
│ - Presence Penalty (存在惩罚) │
│ - Temperature (温度调节) │
│ - Triton Kernel: _penalties_and_temperature_kernel
└─────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ 2. Min-P 过滤 (sampler.py) │
│ - apply_min_p() │
└─────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ 3. Top-K/Top-P 过滤 (sampler.py) │
│ - apply_top_k_top_p() │
│ - NPU融合算子 / PyTorch原生 │
└─────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ 4. Gumbel采样 (gumbel.py) │
│ - _gumbel_sample_kernel (Triton) │
└─────────────────────────────────────────┘
│
▼
采样结果
使用 Triton Kernel: _penalties_and_temperature_kernel
三种惩罚的默认生效条件:
已实现短路返回(penalties.py 第58-60行):
if not (use_penalty or use_temperature):
# Early return to avoid loading logits.
return
_gumbel_sample_kernel<existing_optimizations>
torch.ops._C_ascend.npu_apply_top_k_top_p)</existing_optimizations>
按以下检查项进行:
基于背景知识中后处理流程架构,识别后处理相关代码,遍历相关代码,分析当前后处理流程
基于以下优化手段,分析优化机会
对于每个优化点,严格按照以下步骤进行检查,在思考过程中逐个进行
is not None 或类似方式实现了基础的按需计算all() 比较)本身也有开销。确保优化带来的收益大于其成本。输出优化结果,保存为当前目录的opt_result/vllm-ascend-post-process-result.md,必须逐条包含以下内容: