跳转至

简介

1. 概述

LLM Converter是一款专为IPU硬件平台设计的大语言模型转换工具,其核心功能是将开源预训练模型高效、精准地适配至专用计算架构。本工具提供从模型转换、结构优化到部署上线的完整解决方案,使开发者无需改动模型核心逻辑,即可实现模型在IPU平台上的高性能运行与稳定部署。

LLM Converter

LLM Converter是一个完整的LLM模型转换和推理框架:

1、📋文件结构说明:

(1) 核心脚本
    ├── converter_hf_to_sim.py:
    ├        将 Hugging Face 模型转换为 IPU 格式的转换工具
    ├── run_llm.py:
    ├        LLM 模型单次推理运行脚本
    └── run_serve.py:
             LLM 模型多轮对话推理运行脚本

2、🔧工作流程说明:

(1) 模型转换:

    使用converter_hf_to_sim.py将 Hugging Face 模型转换为 IPU 格式的模型

(2) 模型推理:使用 run_llm.py 或 run_serve.py运行模型。

3、💡支持特性说明:

(1) 模型类型:文本、多模态、语音等

(2) 支持限制:当前版本的LLM converter工具支持以下两种模型转换途径:

    - 原生AWQ/GPTQ模型:将官方预训练权重量化模型(如AWQ、GPTQ格式)一步转换到离线网络。

    - SGS量化模型:使用SGS量化库配合校准数据对浮点模型进行量化后转换。详见[快速上手](./1_Quick_Start/Quick_Start.md)中的 SGS 量化模型转换章节。

2. 目的

通过LLM Converter提供的工具以及 Python 接口可以便捷地完成以下功能:

(1) 模型转换

  • 支持将 Hugging Face 格式的大语言模型转换为 IPU 平台可执行的推理模型,提供以下两种转换途径:

    • 原生 AWQ/GPTQ 模型:对官方预训练的权重量化模型(如 AWQ、GPTQ 格式)进行一键转换;

    • SGS 量化模型:使用 SGS 量化库对浮点模型进行量化转换,配合校准数据实现高精度部署;

(2) 模型推理

-支持在 IPU 平台上运行转换后的模型进行推理;

-提供多模态输入支持,包括文本、图像、视频、音频等数据类型。


3、支持的模型类型

本工具广泛支持当前主流大语言模型架构,覆盖以下主要系列:

-Llama 系列:LLaMA3

-Qwen 系列:Qwen2.5/3、Qwen-VL、Qwen-Omni

-Gemma 系列:Gemma 1/2/3

-多模态模型:InternVL、Florence2、Whisper

-其他常见开源模型:Phi3、SmolVLM、Minimind

等,并将持续扩展适配范围

兼容性说明

  • 转换工具开发基础:transformers==4.57.3
  • 模型版本要求:必须为基于transformers 4.57.3的HuggingFace模型
  • 不兼容后果:转换过程可能出现错误或生成不可用结果

更详细的模型支持列表请参考已支持模型

本工具链旨在弥合开源大语言模型与专用硬件平台之间的适配差距,助力开发者便捷、高效地在 IPU 上部署与运行各类大语言模型。