Views
No views yet
| Chips | Input Size | Image Num | TTFT (168 tokens) | Throughput (w8a16) | CMM Memory | Flash Memory |
|---|---|---|---|---|---|---|
| AX650 | 384×384 | 1 | 282 ms | 18.5 tokens/sec | 1.27 GiB | 1.54 GiB |
| Chips | Input Size | Image Num | TTFT (600 tokens) | Throughput (w8a16) | CMM Memory | Flash Memory |
|---|---|---|---|---|---|---|
| AX650 | 384×384 | 8 | 706 ms | 18.5 tokens/sec | 1.27 GiB | 1.54 GiB |
1git clone -b axllm https://github.com/AXERA-TECH/ax-llm.git
2cd ax-llm
3./install.shaxllm):curl -fsSL https://raw.githubusercontent.com/AXERA-TECH/ax-llm/axllm/install.sh | bashhttps://github.com/AXERA-TECH/ax-llm/actions?query=branch%3Aaxllm
下载 最新 CI 导出的可执行程序(axllm),然后:1chmod +x axllm
2sudo mv axllm /usr/bin/axllm1mkdir -p AXERA-TECH/Qwen3.5-0.8B-AX650-C128-P1152-CTX2047
2cd AXERA-TECH/Qwen3.5-0.8B-AX650-C128-P1152-CTX2047
3hf download AXERA-TECH/Qwen3.5-0.8B-AX650-C128-P1152-CTX2047 --local-dir .
4
5# structure of the downloaded files
6tree -L 3
7`-- AXERA-TECH
8 `-- Qwen3.5-0.8B-AX650-C128-P1152-CTX2047
9 |-- qwen3_5_vision.axmodel
10 |-- README.md
11 |-- config.json
12 |-- image.png
13 |-- model.embed_tokens.weight.bfloat16.bin
14 |-- post_config.json
15 |-- qwen3_5_tokenizer.txt
16 |-- qwen3_5_text_p128_l0_together.axmodel
17 ...
18 |-- qwen3_5_text_p128_l23_together.axmodel
19 |-- qwen3_5_text_post.axmodel
20 `-- vision_cache
21
223 directories, 39 files1root@ax650 ~/Qwen3.5-0.8B-AX650-C128-P1152-CTX2047 # ./axllm run .
210:34:22.765 INF Init:218 | LLM init start
310:34:22.766 INF Init:226 | mixed attention enabled: full_attention_interval=4 ref_full_layer_idx=3
4tokenizer_type = 3
5 37% | ########### | 10 / 27 [6.61s<17.84s, 1.51 count/s] init 8 axmodel ok,remain_cmm(4623 MB)^C
6 96% | ############################## | 26 / 27 [18.42s<19.13s, 1.41 count/s] init post axmodel ok,remain_cmm(3780 MB)
710:34:41.183 INF Init:368 | max_token_len : 2047
810:34:41.183 INF Init:371 | kv_cache_size : 512, kv_cache_num: 2047
910:34:41.183 INF Init:374 | prefill_token_num : 128
1010:34:41.183 INF Init:379 | grp: 1, prefill_max_kv_cache_num : 1
1110:34:41.183 INF Init:379 | grp: 2, prefill_max_kv_cache_num : 128
1210:34:41.183 INF Init:379 | grp: 3, prefill_max_kv_cache_num : 256
1310:34:41.183 INF Init:379 | grp: 4, prefill_max_kv_cache_num : 384
1410:34:41.183 INF Init:379 | grp: 5, prefill_max_kv_cache_num : 512
1510:34:41.184 INF Init:379 | grp: 6, prefill_max_kv_cache_num : 640
1610:34:41.184 INF Init:379 | grp: 7, prefill_max_kv_cache_num : 768
1710:34:41.184 INF Init:379 | grp: 8, prefill_max_kv_cache_num : 896
1810:34:41.184 INF Init:379 | grp: 9, prefill_max_kv_cache_num : 1024
1910:34:41.184 INF Init:379 | grp: 10, prefill_max_kv_cache_num : 1152
2010:34:41.184 INF Init:384 | prefill_max_token_num : 1152
2110:34:41.184 INF Init:27 | LLaMaEmbedSelector use mmap
22100% | ################################ | 27 / 27 [18.42s<18.42s, 1.47 count/s] embed_selector init ok
2310:34:42.604 INF Init:643 | Qwen-VL token ids: vision_start=248053 image_pad=248056 video_pad=248057
2410:34:42.604 INF Init:668 | VisionModule init ok: type=Qwen3VL, tokens_per_block=144, embed_size=1024, out_dtype=fp32
2510:34:42.604 WRN Init:677 | Vision preprocess backend: SimpleCV (OpenCV not found at build time; minor differences vs OpenCV are possible)
2610:34:42.609 INF load_config:282 | load config:
2710:34:42.609 INF load_config:282 | {
2810:34:42.609 INF load_config:282 | "enable_repetition_penalty": false,
2910:34:42.609 INF load_config:282 | "enable_temperature": false,
3010:34:42.609 INF load_config:282 | "enable_top_k_sampling": true,
3110:34:42.609 INF load_config:282 | "enable_top_p_sampling": false,
3210:34:42.609 INF load_config:282 | "penalty_window": 20,
3310:34:42.609 INF load_config:282 | "repetition_penalty": 1.2,
3410:34:42.609 INF load_config:282 | "temperature": 0.9,
3510:34:42.609 INF load_config:282 | "top_k": 10,
3610:34:42.609 INF load_config:282 | "top_p": 0.8
3710:34:42.609 INF load_config:282 | }
3810:34:42.609 INF Init:448 | LLM init ok
39Commands:
40 /q, /exit 退出
41 /reset 重置 kvcache
42 /dd 删除一轮对话
43 /pp 打印历史对话
44Ctrl+C: 停止当前生成
45VLM enabled: after each prompt, input image path (empty = text-only). Use "video:<frames_dir>" for video.
46----------------------------------------
47prompt >> describe the image
48image >> image.png
4910:35:26.924 INF EncodeForContent:973 | Qwen-VL pixel_values[0] bytes=884736 min=0 max=238 (w=384 h=384 tp=2 ps=16 sm=2)
5010:35:26.970 INF EncodeForContent:996 | vision cache store: image.png
5110:35:27.004 INF SetKVCache:747 | prefill_grpid:3 kv_cache_num:256 precompute_len:0 input_num_token:168
5210:35:27.004 INF SetKVCache:749 | current prefill_max_token_num:1152
5310:35:27.004 INF SetKVCache:750 | first run
5410:35:27.046 INF Run:805 | input token num : 168, prefill_split_num : 2
5510:35:27.046 INF Run:845 | prefill chunk p=0 history_len=0 grpid=1 kv_cache_num=0 input_tokens=128
5610:35:27.046 INF Run:868 | prefill indices shape: p=0 idx_elems=128 idx_rows=1 pos_rows=3
5710:35:27.178 INF Run:845 | prefill chunk p=1 history_len=128 grpid=2 kv_cache_num=128 input_tokens=40
5810:35:27.178 INF Run:868 | prefill indices shape: p=1 idx_elems=128 idx_rows=1 pos_rows=3
5910:35:27.327 INF Run:1010 | ttft: 281.58 ms
60<think>
61
62</think>
63
64This is a surreal, digitally rendered image that blends elements of sci-fi and fantasy.
65
66**Setting & Atmosphere:**
67The scene takes place in an alien, forest-like environment. Tall, misty trees rise in the background, and the ground is covered in lush, pale green and gray foliage, suggesting a dense jungle or canopy. The color palette is desaturated, using greys, whites, and muted greens, which enhances the otherworldly and sterile feel.
68
69**Subject:**
70The central figure is an astronaut in a spacesuit and a helmet, standing in the foreground. The astronaut is positioned on two legs (a human pose) rather than on a standing base, creating an uncanny or surreal effect. Their posture is alert and upright, as if they are actively observing or preparing for action within their new environment.
71
72**Composition & Style:**
73* **Composition:** The astronaut is placed centrally but appears to be emerging from or integrated into the dense background, which can be described as a thick layer of foliage or mist. The framing creates a sense of depth and enclosure.
74* **Style:** The image has a painterly or textured quality, with visible brushstrokes or grain that give it a handmade feel, contrasting with the clean, technical render of the astronaut's helmet.
75
76**Overall Impression:**
77The image creates a sense of wonder or disorientation—the astronaut, with their alien habitat, stands out as both a strange and beautiful figure. It evokes a mood of quiet observation in a vast, otherworldly wilderness.
78
7910:35:44.617 NTC Run:1132 | hit eos,avg 18.51 token/s
8010:35:44.621 INF GetKVCache:721 | precompute_len:356, remaining:7961root@ax650:~# axllm serve AXERA-TECH/Qwen3.5-0.8B-AX650-C128-P1152-CTX2047
2[I][ Init][ 138]: LLM init start
3tokenizer_type = 1
4 96% | ███████████████████████████████ | 30 / 31 [4.63s<4.79s, 6.47 count/s] init post axmodel ok,remain_cmm(9563 MB)
5[I][ Init][ 199]: max_token_len : 2047
6[I][ Init][ 202]: kv_cache_size : 1024, kv_cache_num: 2047
7[I][ Init][ 205]: prefill_token_num : 128
8[I][ Init][ 209]: grp: 1, prefill_max_kv_cache_num : 1
9[I][ Init][ 209]: grp: 2, prefill_max_kv_cache_num : 128
10[I][ Init][ 209]: grp: 3, prefill_max_kv_cache_num : 256
11[I][ Init][ 209]: grp: 4, prefill_max_kv_cache_num : 384
12[I][ Init][ 209]: grp: 5, prefill_max_kv_cache_num : 512
13[I][ Init][ 209]: grp: 6, prefill_max_kv_cache_num : 640
14[I][ Init][ 209]: grp: 7, prefill_max_kv_cache_num : 768
15[I][ Init][ 209]: grp: 8, prefill_max_kv_cache_num : 896
16[I][ Init][ 209]: grp: 9, prefill_max_kv_cache_num : 1024
17[I][ Init][ 209]: grp: 10, prefill_max_kv_cache_num : 1152
18[I][ Init][ 214]: prefill_max_token_num : 1152
19[I][ Init][ 27]: LLaMaEmbedSelector use mmap
20100% | ████████████████████████████████ | 31 / 31 [4.64s<4.64s, 6.69 count/s] embed_selector init ok
21[W][ Init][ 457]: Qwen-VL vision size override: cfg=448x448 bytes=1204224, model_input_bytes=884736 -> 384x384 (square).
22[I][ Init][ 641]: Qwen-VL token ids: vision_start=151652 image_pad=151655 video_pad=151656
23[I][ Init][ 666]: VisionModule init ok: type=Qwen3VL, tokens_per_block=144, embed_size=2048, out_dtype=fp32
24[I][ Init][ 672]: VisionModule deepstack enabled: layers=3
25[I][ load_config][ 282]: load config:
26{
27 "enable_repetition_penalty": false,
28 "enable_temperature": false,
29 "enable_top_k_sampling": false,
30 "enable_top_p_sampling": false,
31 "penalty_window": 20,
32 "repetition_penalty": 1.2,
33 "temperature": 0.9,
34 "top_k": 10,
35 "top_p": 0.8
36}
37
38[I][ Init][ 272]: LLM init ok
39Starting server on port 8000 with model 'AXERA-TECH/Qwen3.5-0.8B-AX650-C128-P1152-CTX2047'...
40OpenAI API Server starting on http://0.0.0.0:8000
41Max concurrency: 1
42Models: AXERA-TECH/Qwen3.5-0.8B-AX650-C128-P1152-CTX20471from openai import OpenAI
2
3API_URL = "http://127.0.0.1:8000/v1"
4MODEL = "AXERA-TECH/Qwen3.5-0.8B-AX650-C128-P1152-CTX2047"
5
6messages = [
7 {"role": "system", "content": [{"type": "text", "text": "you are a helpful assistant."}]},
8 {"role": "user", "content": "hello"},
9]
10
11client = OpenAI(api_key="not-needed", base_url=API_URL)
12completion = client.chat.completions.create(
13 model=MODEL,
14 messages=messages,
15)
16
17print(completion.choices[0].message.content)1from openai import OpenAI
2
3API_URL = "http://127.0.0.1:8000/v1"
4MODEL = "AXERA-TECH/Qwen3.5-0.8B-AX650-C128-P1152-CTX2047"
5
6messages = [
7 {"role": "system", "content": [{"type": "text", "text": "you are a helpful assistant."}]},
8 {"role": "user", "content": "hello"},
9]
10
11client = OpenAI(api_key="not-needed", base_url=API_URL)
12stream = client.chat.completions.create(
13 model=MODEL,
14 messages=messages,
15 stream=True,
16)
17
18print("assistant:")
19for ev in stream:
20 delta = getattr(ev.choices[0], "delta", None)
21 if delta and getattr(delta, "content", None):
22 print(delta.content, end="", flush=True)
23print("
24")