TGI v0.9.4 版本参考适配代码

文件目录与TGI v2.0.4基本一致,由于支持的特性不同,部分文件有差异:
Tgi-MindIE
 |______cover
        |______models
               |________init__.py
 |______tgi_npu
        |______init__.py
        |____cache_manager.py
        |____info.py
        |____mind_model.py
        |____token_mindie.py
|______pyproject.toml
|______install.sh
|______README.m

各源文件的含义和作用如下表所示:

源文件

含义及作用

cover/models/__init__.py

替换原仓中server/text_generation_server/models/__init__.py文件,将推理模型引导至MindIE LLM

tgi_npu/__init__.py

针对NPU硬件环境进行必要的初始化。

tgi_npu/cache_manager.py

KV Cache管理器,主要针对NPU进行KV Cache初始化。

tgi_npu/info.py

NPU信息。

tgi_npu/mind_model.py

定义了推理模型入口类MindModel以及对应的数据通信格式MindFlashCasualLMBatch,分别继承自原仓的FlashCasualLM以及FlashCasualLMBatch。在MindModel中,generate_token方法沿用了原版大部分代码,并结合MindIE LLM调用过程进行了修改。其中,Forward方法改为调用MindIE LLM提供的forward_tensor方法。warmup 结合NPU访存特点进行修改。

tgi_npu/token_mindie.py

后采样代码。

pyproject.toml

适配安装包配置文件。

样例代码: