Skip to content

Commit a9b895f

Browse files
authored
Merge pull request #9 from LJ-Hao/main
Add: VLM and LLM model for RK3588, RK3576
2 parents b41a7f7 + 7ef3101 commit a9b895f

24 files changed

+1835
-389
lines changed
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
name: Build and Push DeepseekOCR-RK3576 Series
2+
3+
on:
4+
push:
5+
branches: [ main, master ]
6+
paths:
7+
- 'src/vlm/**'
8+
- 'docker/RK3576/VLM/DeepseekOCR.dockerfile'
9+
- '.github/workflows/RK3576-DeepseekOCR.yml'
10+
- 'lib/**'
11+
workflow_dispatch:
12+
13+
env:
14+
REGISTRY: ghcr.io
15+
IMAGE_BASE_NAME: ${{ github.repository_owner }}/RK3576-DeepseekOCR
16+
17+
jobs:
18+
build-and-push:
19+
runs-on: ubuntu-latest
20+
permissions:
21+
contents: read
22+
packages: write
23+
24+
strategy:
25+
fail-fast: false
26+
matrix:
27+
include:
28+
- alias: "w4a16"
29+
vision_file: "deepseekocr_vision_rk3576.rknn"
30+
vision_url: "https://huggingface.co/JiahaoLi/DeepseekOCR-RK3576/resolve/main/deepseekocr_vision_rk3576.rknn"
31+
llm_file: "deepseekocr_w4a16_rk3576.rkllm"
32+
llm_url: "https://huggingface.co/JiahaoLi/DeepseekOCR-RK3576/resolve/main/deepseekocr_w4a16_rk3576.rkllm"
33+
34+
steps:
35+
- name: Checkout repository
36+
uses: actions/checkout@v4
37+
with:
38+
lfs: true
39+
40+
- name: Force LFS Pull
41+
run: |
42+
git lfs install
43+
git lfs pull
44+
45+
- name: Free Disk Space
46+
uses: jlumbroso/free-disk-space@main
47+
with:
48+
tool-cache: true
49+
android: true
50+
dotnet: true
51+
large-packages: true
52+
docker-images: true
53+
54+
- name: Set up QEMU
55+
uses: docker/setup-qemu-action@v3
56+
with:
57+
platforms: arm64
58+
59+
- name: Set up Docker Buildx
60+
uses: docker/setup-buildx-action@v3
61+
62+
- name: Log in to GHCR
63+
uses: docker/login-action@v3
64+
with:
65+
registry: ${{ env.REGISTRY }}
66+
username: ${{ github.actor }}
67+
password: ${{ secrets.GITHUB_TOKEN }}
68+
69+
- name: Extract metadata
70+
id: meta
71+
uses: docker/metadata-action@v5
72+
with:
73+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_BASE_NAME }}
74+
tags: |
75+
type=raw,value=${{ matrix.alias }}-latest
76+
77+
- name: Build and push
78+
uses: docker/build-push-action@v5
79+
with:
80+
context: .
81+
file: ./docker/RK3576/VLM/DeepseekOCR.dockerfile
82+
# 重要:不指定 target,确保所有指令被执行
83+
push: true
84+
platforms: linux/arm64
85+
provenance: false
86+
build-args: |
87+
LLM_URL=${{ matrix.llm_url }}
88+
LLM_FILE=${{ matrix.llm_file }}
89+
VISION_URL=${{ matrix.vision_url }}
90+
VISION_FILE=${{ matrix.vision_file }}
91+
tags: ${{ steps.meta.outputs.tags }}
92+
labels: ${{ steps.meta.outputs.labels }}
93+
cache-from: type=gha
94+
cache-to: type=gha,mode=max
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
name: Build and Push InternVL3-RK3576 Series
2+
3+
on:
4+
push:
5+
branches: [ main, master ]
6+
paths:
7+
- 'src/vlm/**'
8+
- 'docker/RK3576/VLM/InternVL3.dockerfile'
9+
- '.github/workflows/RK3576-InternVL3.yml'
10+
- 'lib/**'
11+
workflow_dispatch:
12+
13+
env:
14+
REGISTRY: ghcr.io
15+
IMAGE_BASE_NAME: ${{ github.repository_owner }}/RK3576-InternVL3
16+
17+
jobs:
18+
build-and-push:
19+
runs-on: ubuntu-latest
20+
permissions:
21+
contents: read
22+
packages: write
23+
24+
strategy:
25+
fail-fast: false
26+
matrix:
27+
include:
28+
- alias: "1b-w4a16-g128"
29+
vision_file: "internvl3-1b_vision_fp16_rk3576.rknn"
30+
vision_url: "https://huggingface.co/JiahaoLi/InternVL3-3576/resolve/main/internvl3-1b_vision_fp16_rk3576.rknn"
31+
llm_file: "internvl3-1b_w4a16_g128_rk3576.rkllm"
32+
llm_url: "https://huggingface.co/JiahaoLi/InternVL3-3576/resolve/main/internvl3-1b_w4a16_g128_rk3576.rkllm"
33+
34+
steps:
35+
- name: Checkout repository
36+
uses: actions/checkout@v4
37+
with:
38+
lfs: true
39+
40+
- name: Force LFS Pull
41+
run: |
42+
git lfs install
43+
git lfs pull
44+
45+
- name: Free Disk Space
46+
uses: jlumbroso/free-disk-space@main
47+
with:
48+
tool-cache: true
49+
android: true
50+
dotnet: true
51+
large-packages: true
52+
docker-images: true
53+
54+
- name: Set up QEMU
55+
uses: docker/setup-qemu-action@v3
56+
with:
57+
platforms: arm64
58+
59+
- name: Set up Docker Buildx
60+
uses: docker/setup-buildx-action@v3
61+
62+
- name: Log in to GHCR
63+
uses: docker/login-action@v3
64+
with:
65+
registry: ${{ env.REGISTRY }}
66+
username: ${{ github.actor }}
67+
password: ${{ secrets.GITHUB_TOKEN }}
68+
69+
- name: Extract metadata
70+
id: meta
71+
uses: docker/metadata-action@v5
72+
with:
73+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_BASE_NAME }}
74+
tags: |
75+
type=raw,value=${{ matrix.alias }}-latest
76+
77+
- name: Build and push
78+
uses: docker/build-push-action@v5
79+
with:
80+
context: .
81+
file: ./docker/RK3576/VLM/InternVL3.dockerfile
82+
# 重要:不指定 target,确保所有指令被执行
83+
push: true
84+
platforms: linux/arm64
85+
provenance: false
86+
build-args: |
87+
LLM_URL=${{ matrix.llm_url }}
88+
LLM_FILE=${{ matrix.llm_file }}
89+
VISION_URL=${{ matrix.vision_url }}
90+
VISION_FILE=${{ matrix.vision_file }}
91+
tags: ${{ steps.meta.outputs.tags }}
92+
labels: ${{ steps.meta.outputs.labels }}
93+
cache-from: type=gha
94+
cache-to: type=gha,mode=max
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
name: Build and Push Qwen3-VL-RK3576 Series
2+
3+
on:
4+
push:
5+
branches: [ main, master ]
6+
paths:
7+
- 'src/vlm/**'
8+
- 'docker/RK3576/VLM/Qwen3-VL.dockerfile'
9+
- '.github/workflows/RK3576-Qwen3-VL.yml'
10+
- 'lib/**'
11+
workflow_dispatch:
12+
13+
env:
14+
REGISTRY: ghcr.io
15+
IMAGE_BASE_NAME: ${{ github.repository_owner }}/RK3576-Qwen3-VL
16+
17+
jobs:
18+
build-and-push:
19+
runs-on: ubuntu-latest
20+
permissions:
21+
contents: read
22+
packages: write
23+
24+
strategy:
25+
fail-fast: false
26+
matrix:
27+
include:
28+
- alias: "2b-Instruct_w4a16_g128"
29+
vision_file: "qwen3-vl-2b_vision_rk3576.rknn"
30+
vision_url: "https://huggingface.co/JiahaoLi/Qwen3-VL-RK3576/resolve/main/qwen3-vl-2b_vision_rk3576.rknn"
31+
llm_file: "qwen3-vl-2b-instruct_w4a16_g128_rk3576.rkllm"
32+
llm_url: "https://huggingface.co/JiahaoLi/Qwen3-VL-RK3576/resolve/main/qwen3-vl-2b-instruct_w4a16_g128_rk3576.rkllm"
33+
- alias: "3b-Instruct_w4a16_g128"
34+
vision_file: "qwen3-vl-4b_vision_rk3576.rknn"
35+
vision_url: "https://huggingface.co/JiahaoLi/Qwen3-VL-RK3576/resolve/main/qwen3-vl-4b_vision_rk3576.rknn"
36+
llm_file: "qwen3-vl-4b-instruct_w4a16_g128_rk3576.rkllm"
37+
llm_url: "https://huggingface.co/JiahaoLi/Qwen3-VL-RK3576/resolve/main/qwen3-vl-4b-instruct_w4a16_g128_rk3576.rkllm"
38+
39+
steps:
40+
- name: Checkout repository
41+
uses: actions/checkout@v4
42+
with:
43+
lfs: true
44+
45+
- name: Force LFS Pull
46+
run: |
47+
git lfs install
48+
git lfs pull
49+
50+
- name: Free Disk Space
51+
uses: jlumbroso/free-disk-space@main
52+
with:
53+
tool-cache: true
54+
android: true
55+
dotnet: true
56+
large-packages: true
57+
docker-images: true
58+
59+
- name: Set up QEMU
60+
uses: docker/setup-qemu-action@v3
61+
with:
62+
platforms: arm64
63+
64+
- name: Set up Docker Buildx
65+
uses: docker/setup-buildx-action@v3
66+
67+
- name: Log in to GHCR
68+
uses: docker/login-action@v3
69+
with:
70+
registry: ${{ env.REGISTRY }}
71+
username: ${{ github.actor }}
72+
password: ${{ secrets.GITHUB_TOKEN }}
73+
74+
- name: Extract metadata
75+
id: meta
76+
uses: docker/metadata-action@v5
77+
with:
78+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_BASE_NAME }}
79+
tags: |
80+
type=raw,value=${{ matrix.alias }}-latest
81+
82+
- name: Build and push
83+
uses: docker/build-push-action@v5
84+
with:
85+
context: .
86+
file: ./docker/RK3576/VLM/Qwen3-VL.dockerfile
87+
# 重要:不指定 target,确保所有指令被执行
88+
push: true
89+
platforms: linux/arm64
90+
provenance: false
91+
build-args: |
92+
LLM_URL=${{ matrix.llm_url }}
93+
LLM_FILE=${{ matrix.llm_file }}
94+
VISION_URL=${{ matrix.vision_url }}
95+
VISION_FILE=${{ matrix.vision_file }}
96+
tags: ${{ steps.meta.outputs.tags }}
97+
labels: ${{ steps.meta.outputs.labels }}
98+
cache-from: type=gha
99+
cache-to: type=gha,mode=max

0 commit comments

Comments
 (0)