---
title: Keye-VL-2.0-30B-A3B-GGUF
canonical_url: "https://www.modelscope.ai/models/Kwai-Keye/Keye-VL-2.0-30B-A3B-GGUF"
md_url: "https://www.modelscope.ai/models/Kwai-Keye/Keye-VL-2.0-30B-A3B-GGUF.md"
repository: Kwai-Keye/Keye-VL-2.0-30B-A3B-GGUF
last_updated: 2026-07-15
license: apache-2.0
pipeline_tag: image-text-to-text
tasks:
  - image-text-to-text
library_name:
  - gguf
language:
  - en
downloads: 164
stars: 0
tags:
  - multimodal
  - gguf
---

# Keye-VL-2.0-30B-A3B-GGUF

> Keye-VL-2.0-30B-A3B-GGUF - An open-source model by Kwai-Keye on ModelScope. Keye-VL-2.0-30B-A3B (GGUF)

Kwai-Keye/Keye-VL-2.0-30B-A3B-GGUF is a image-text-to-text model on ModelScope. licensed under apache-2.0.

- **Repository**: Kwai-Keye/Keye-VL-2.0-30B-A3B-GGUF
- **License**: apache-2.0
- **Tasks**: image-text-to-text
- **Tags**: multimodal, gguf
- **Downloads**: 164
- **Stars**: 0
- **Last updated**: 2026-07-15

Source: https://www.modelscope.ai/models/Kwai-Keye/Keye-VL-2.0-30B-A3B-GGUF

---

# Keye-VL-2.0-30B-A3B (GGUF)

<div align="center">
  <img class="dark:hidden" src="figures/Keye-logo--black.png" width="100%" alt="Kwai Keye-VL Logo">
  <img class="hidden dark:block" src="figures/Keye-logo--white.png" width="100%" alt="Kwai Keye-VL Logo">
</div>

<div align="center">

[![X](https://img.shields.io/badge/X-@KwaiKeye-000000?style=flat-square&logo=x&logoColor=white)](https://x.com/KwaiKeye)&emsp;[![Discord](https://img.shields.io/badge/Discord-Kwai%20Keye-5865F2?style=flat-square&logo=discord&logoColor=white)](https://discord.gg/4Q6AmzxpEK)&emsp;[![Homepage](https://img.shields.io/badge/Homepage-kwai--keye.github.io-4285F4?style=flat-square&logo=googlechrome&logoColor=white)](https://kwai-keye.github.io/)&emsp;[![GitHub](https://img.shields.io/badge/GitHub-Kwai--Keye%2Fllama.cpp-181717?style=flat-square&logo=github&logoColor=white)](https://github.com/Kwai-Keye/llama.cpp)

[![Keye-VL Tech Report](https://img.shields.io/badge/arXiv-Keye--VL-B31B1B?style=flat-square&logo=arxiv&logoColor=white)](https://arxiv.org/abs/2507.01949)&emsp;[![Keye-VL-1.5 Tech Report](https://img.shields.io/badge/arXiv-Keye--VL--1.5-B31B1B?style=flat-square&logo=arxiv&logoColor=white)](https://arxiv.org/abs/2509.01563)&emsp;[![Keye-VL-2.0 Tech Report](https://img.shields.io/badge/arXiv-Keye--VL--2.0-B31B1B?style=flat-square&logo=arxiv&logoColor=white)](https://arxiv.org/abs/2606.10651)

[![Keye-VL-8B-Preview](https://img.shields.io/badge/🤗%20Model-Keye--VL--8B--Preview-FFD21E?style=flat-square)](https://huggingface.co/Kwai-Keye/Keye-VL-8B-Preview)&emsp;[![Keye-VL-1.5-8B](https://img.shields.io/badge/🤗%20Model-Keye--VL--1.5--8B-FFD21E?style=flat-square)](https://huggingface.co/Kwai-Keye/Keye-VL-1_5-8B/)&emsp;[![Keye-VL-2.0-30B-A3B](https://img.shields.io/badge/🤗%20Model-Keye--VL--2.0--30B--A3B-FFD21E?style=flat-square)](https://huggingface.co/Kwai-Keye/Keye-VL-2.0-30B-A3B/)

</div>

Meet Keye-VL-2.0-30B-A3B — the latest 30B-class flagship base model in the Keye series, purpose-built to push the frontier of long-video understanding and to unlock the first generation of Agent capabilities in the Keye family.

## Highlights

<div align="center">
  <img src="figures/video_fig.png" width="85%" alt="Video Benchmark Comparison">
</div>

* **Outstanding Video Understanding and Temporal Localization**: Across five video benchmarks, Keye-VL-2.0-30B-A3B leads open-source competitors and matches or surpasses Gemini-3-Flash on temporal grounding.

* **DSA-Native Long-Context Architecture**: Sparse attention and targeted feature aggregation enable precise hour-long video understanding while keeping computation efficient.

* **High-Efficiency Inference and Training Stack**: DSA (DeepSeek Sparse Attention), ExtraIO, heterogeneous ViT-LM parallelism, activation optimization, and custom kernels reduce long-sequence prefill cost and boost training throughput.

* **Data-Centric Multimodal Pre-Training**: A carefully curated data pipeline, Keye-VL-1.5 vision encoder, and synthetic CoT data strengthen perception, OCR/chart/table understanding, and reasoning continuity.

* **Robust Post-Training for Reliable Reasoning**: MOPD, bucket advantage scaling, Context-RL, and high-SNR data filtering improve cross-modal expert merging, reduce hallucinations, and stabilize long-context decisions.

* **Agent-Ready Multimodal Capabilities**: Built-in Code, Tool, and Search agent abilities support repository tasks, API-style tool use, web-grounded search, and visual self-correction workflows.

As the first multi-modal model to land DSA in production, Keye-VL-2.0-30B-A3B delivers nearly lossless reasoning over 256K ultra-long context. It tops video understanding benchmarks at its scale and consistently rivals — or surpasses — top-tier closed-source models on fine-grained temporal perception. More importantly, it is the first Keye base model to ship with a built-in Agent collaboration mechanism, demonstrating solid system-level orchestration in Search, Tool, and Code scenarios.

## Model Performance on Benchmarks

We compare Keye-VL-2.0-30B-A3B against leading open- and closed-source models (Qwen3.5-35B-A3B, InternVL3.5-241B-A28B, GPT-5-mini, Qwen3-VL 30B-A3B / 32B / 235B-A22B) across **seven capability dimensions**: Video, Coding, Agent, Math & Reasoning, STEM, Instruction Following, and General VQA.

![Performance Comparison](figures/all_metric.png)

Selected highlights (see the technical report for the full table):

* **Fine-grained Temporal Understanding (TimeLens)**:
  * Charades-TimeLens: **58.4** mIoU, on par with the strongest closed-source video baselines we tested (Gemini 3 Flash 61.19).
  * ActivityNet-TimeLens: **58.5** mIoU, surpassing Gemini 3 Flash (56.95).
  * QVHighlights-TimeLens: **70.1** mIoU, neck-and-neck with the top closed-source models on the official leaderboard and far ahead of Gemini 3 Flash (49.45).

* **Long-Context Scaling (VideoMME V2)**: Where most competitors degrade as the input frame count grows, our model's accuracy *increases* from **35.3%** at 64 frames to **42.4%** at 512 frames; the non-linear reasoning score climbs from 18.5 to 24.2.

* **Comprehensive Long-Video Understanding**:
  * LongVideoBench: **74.1**, surpassing both Qwen3.5-35B-A3B and the much larger Qwen3-VL-235B-A22B, demonstrating strong long-video understanding at 30B scale.

At 30B scale, Keye-VL-2.0-30B-A3B not only outperforms open-source models with 200B+ parameters (e.g., Qwen3-VL-235B) on temporal understanding, but also goes head-to-head with — and in places exceeds — top closed-source giants.

## GGUF Model Weights

| Component | Quantization | File | Size |
|---|---|---|---|
| Language Model | BF16 | `Keye-VL-2.0-30B-A3B-BF16.gguf` | 57 GB |
| Language Model | F16 | `Keye-VL-2.0-30B-A3B-F16.gguf` | 58 GB |
| Language Model | Q8_0 | `Keye-VL-2.0-30B-A3B-Q8_0.gguf` | 29 GB |
| Language Model | Q4_K_M | `Keye-VL-2.0-30B-A3B-Q4_K_M.gguf` | 16 GB |
| Language Model | Q3_K_M | `Keye-VL-2.0-30B-A3B-Q3_K_M.gguf` | 14 GB |
| Multimodal Projector | BF16 | `mmproj-Keye-VL-2.0-30B-A3B-BF16.gguf` | 922 MB |
| Multimodal Projector | F16 | `mmproj-Keye-VL-2.0-30B-A3B-F16.gguf` | 921 MB |
| Multimodal Projector | Q8_0 | `mmproj-Keye-VL-2.0-30B-A3B-Q8_0.gguf` | 613 MB |

## Quickstart

### Related Repository

- llama.cpp (KeyeVL2 support): https://github.com/Kwai-Keye/llama.cpp.git (`keye-vl-v2-30b-release-video` branch)

### Build

```shell
git clone -b keye-vl-v2-30b-release-video https://github.com/Kwai-Keye/llama.cpp.git
cd llama.cpp

# CUDA build
cmake -B build-gpu -DGGML_CUDA=ON
cmake --build build-gpu --config Release -j$(nproc)
```

The server binary will be at `build-gpu/bin/llama-server`.

### Launch Server

```shell
./build-gpu/bin/llama-server \
    -m Keye-VL-2.0-30B-A3B-Q4_K_M.gguf \
    --mmproj mmproj-Keye-VL-2.0-30B-A3B-Q8_0.gguf \
    --host 0.0.0.0 \
    --port 8000
```

### Client Usage

The server exposes an OpenAI-compatible API. Below are examples for image and video inference.

#### Image Input

```python
import json
import requests
import base64

BASE_URL = "http://localhost:8000"

def generate(messages):
    payload = {
        "model": "KeyeVL2",
        "messages": messages,
        "max_tokens": 256,
        "temperature": 0.0,
    }
    resp = requests.post(
        f"{BASE_URL}/v1/chat/completions",
        headers={"Content-Type": "application/json"},
        data=json.dumps(payload),
        timeout=1800,
    )
    resp.raise_for_status()
    return resp.json()

# Example: image + text
messages = [
    {
        "role": "user",
        "content": [
            {
                "type": "image_url",
                "image_url": {"url": "https://raw.githubusercontent.com/sgl-project/sglang/main/assets/logo.png"},
            },
            {"type": "text", "text": "Describe this image in detail."},
        ],
    }
]

result = generate(messages)
print(result["choices"][0]["message"]["content"])
```

## Technical Report

For more details, please refer to the Keye-VL-2.0 technical report: [arXiv:2606.10651](https://arxiv.org/abs/2606.10651)
