README.md 4.13 KB
Newer Older
luopl's avatar
luopl committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# gemma-4-31B-it
## 论文
[gemma-4-31B-it](https://blog.google/innovation-and-ai/technology/developers-tools/gemma-4/)

## 模型简介
Gemma 4 模型是多模态模型,用于处理文本和图片输入(小型模型支持音频输入)以及生成文本输出。此版本包含预训练和指令调优的开放权重模型。Gemma 4 的上下文窗口最多可容纳 25.6 万个 token,并支持 140 多种语言。

Gemma 4 同时采用密集型架构和混合专家 (MoE) 架构,非常适合文本生成、编码和推理等任务。这些模型有四种不同的规模:E2B、E4B、26B A4B 和 31B。这些模型的大小各异,因此可部署在从高端手机到笔记本电脑和服务器的各种环境中,从而让更多人能够使用最先进的 AI。

Gemma 4 引入了关键的功能和架构改进:
- **推理** - 该系列中的所有模型都设计为高能力推理器,具有可配置的思考模式。

- **扩展的多模态功能** - 处理文本、支持可变宽高比和分辨率的图片(所有型号)、视频和音频(在 E2B 和 E4B 型号上原生支持)。

- **多样化且高效的架构** - 提供不同大小的密集型和混合专家 (MoE) 变体,以实现可伸缩的部署。

- **针对设备端进行了优化** - 较小的模型专为在笔记本电脑和移动设备上高效本地执行而设计。

- **更大的上下文窗口** - 小型模型的上下文窗口为 12.8 万个 token,中型模型的上下文窗口为 25.6 万个 token。

- **增强的编码和智能体功能** - 在编码基准方面取得了显著改进,同时支持原生函数调用,可打造功能强大的自主代理。

- **原生系统提示支持** - Gemma 4 引入了对 system 角色的原生支持,从而实现更结构化和可控的对话。

## 环境依赖
| 软件 |   版本    |
| :------: |:-------:|
| DTK |  26.04  |
| python | 3.10.12 |
| transformers |  5.5.0  |
| vllm |   0.18.1+das.3266200.dtk2604   |
| triton |   3.4.0+git1ef59765    |
| torch |   2.10.0+das.opt1.dtk2604.20260325.g6b060a   |

当前仅支持定制镜像: harbor.sourcefind.cn:5443/dcu/admin/base/custom:vllm018-ubuntu22.04-dtk26.04-gemma4-0413

- 挂载地址`-v` 根据实际模型情况修改
```bash
docker run -it \
    --shm-size 200g \
    --network=host \
    --name gemma-4 \
    --privileged \
    --device=/dev/kfd \
    --device=/dev/dri \
    --device=/dev/mkfd \
    --group-add video \
    --cap-add=SYS_PTRACE \
    --security-opt seccomp=unconfined \
    -u root \
    -v /opt/hyhal/:/opt/hyhal/:ro \
    -v /path/your_code_data/:/path/your_code_data/ \
    harbor.sourcefind.cn:5443/dcu/admin/base/custom:vllm018-ubuntu22.04-dtk26.04-gemma4-0413 bash
```
更多镜像可前往[光源](https://sourcefind.cn/#/service-list)下载使用。

关于本项目DCU显卡所需的特殊深度学习库可从[光合](https://developer.sourcefind.cn/tool/)开发者社区下载安装。
```

## 数据集
暂无

## 训练
暂无

## 推理
### vllm
#### 单机推理

启动vllm server

```bash
## serve启动
vllm serve google/gemma-4-31B-it \
    -tp 2 \
    --attention-backend TRITON_ATTN \
    --trust-remote-code \
    --enable-prefix-caching \
    --enable-chunked-prefill \
    --reasoning-parser gemma4 \
    --tool-call-parser gemma4  \
    --enable-auto-tool-choice

## client访问
curl http://localhost:8000/v1/chat/completions   \
    -H "Content-Type: application/json"  \
    -d '{
        "model": "google/gemma-4-31B-it",
        "messages": [
          {"role": "user", "content": "which one is bigger, 9.11 or 9.9? think carefully"}
        ],
        "temperature": 0.6
    }'
```

## 效果展示
<div align=center>
    <img src="./doc/result-dcu.png"/>
</div>

### 精度
DCU与GPU精度一致,推理框架:vllm。

## 预训练权重
|  模型名称  | 权重大小 | DCU型号  | 最低卡数需求 |         下载地址          |
|:------:|:----:|:------:|:------:|:---------------------:|
| gemma-4-31B-it | 33B | BW1000 |   2    | [Hugging Face](https://huggingface.co/google/gemma-4-31B-it) |

## 源码仓库及问题反馈
- https://developer.sourcefind.cn/codes/modelzoo/gemma-4-31b-it_vllm

## 参考资料
- https://github.com/google-gemma