HuggingFace镜像/OmniCoder-9B
模型介绍文件和版本分析
下载使用量0
OmniCoder

OmniCoder-9B

基于425K智能体轨迹微调的90亿参数编码智能体

License Base Model GGUF

!! 3/12/26 更新 -> 为您的编码智能体安装

快速开始 | 性能基准 | GGUF 下载


概述

OmniCoder-9B 是由 Tesslate 开发的90亿参数编码智能体模型,基于 Qwen3.5-9B 的混合架构(门控Delta网络与标准注意力机制交织)进行微调。它在425,000+条精选智能体编码轨迹上训练而成,涵盖真实世界软件工程任务、工具使用、终端操作和多步骤推理。

训练数据特别源自Claude Opus 4.6智能体及编码推理轨迹,针对Claude Code、OpenCode、Codex和Droid的框架模式。该数据集包含来自Claude Opus 4.6、GPT-5.4、GPT-5.3-Codex和Gemini 3.1 Pro等模型的成功轨迹。

该模型展现出强大的智能体行为:能够从错误中恢复(先读后写)、响应LSP诊断,并使用适当的编辑差异而非完全重写。这些模式直接从其训练所用的真实世界智能体轨迹中习得。

核心特性

  • 前沿智能体轨迹训练:基于Claude Opus 4.6、GPT-5.3-Codex、GPT-5.4和Gemini 3.1 Pro的智能体编码轨迹构建,覆盖Claude Code、OpenCode、Codex和Droid框架
  • 混合架构:继承Qwen3.5的门控Delta网络与标准注意力机制交织结构,实现高效长上下文处理
  • 262K原生上下文:完整的262,144 token上下文窗口,可扩展至100万+
  • 错误恢复:习得先读后写模式,响应LSP诊断,并应用最小编辑差异而非完全重写
  • 思考模式:支持 </think>...</RichMediaReference> 推理链,用于复杂问题分解
  • Apache 2.0协议:完全开放权重,无使用限制

基准测试

基准测试OmniCoder-9BQwen3.5-9BQwen3-Next-80BGPT-OSS-120BGPT-OSS-20BGLM-4.7-FlashGLM 4.7Claude Haiku 4.5
AIME 2025(pass@5)9091.791.6
GPQA Diamond(pass@1)83.881.777.280.171.573
GPQA Diamond(pass@3)86.4
Terminal-Bench 2.023.614.633.427
  • GPQA Diamond pass@1:83.8%(166/198)。相较于 Qwen3.5-9B 基础模型(81.7)提升 2.1 分。在 pass@3 指标上:86.4(171/198)。
  • AIME 2025 pass@5:90%(27/30)。
  • Terminal-Bench 2.0:23.6%(21/89)。相较于 Qwen3.5-9B 基础模型(14.6%,13/89)提升 8.99 分(性能提升 61%)。

快速开始

Transformers

from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "Tesslate/OmniCoder-9B"

tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype="auto", device_map="auto")

messages = [
    {"role": "system", "content": "You are a helpful coding assistant."},
    {"role": "user", "content": "Write a Python function to find the longest common subsequence of two strings."},
]

text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer([text], return_tensors="pt").to(model.device)

outputs = model.generate(**inputs, max_new_tokens=2048, temperature=0.6, top_p=0.95, top_k=20)
print(tokenizer.decode(outputs[0][inputs.input_ids.shape[-1]:], skip_special_tokens=True))

vLLM

vllm serve Tesslate/OmniCoder-9B --tensor-parallel-size 1 --max-model-len 65536
from openai import OpenAI

client = OpenAI(base_url="http://localhost:8000/v1", api_key="token")
response = client.chat.completions.create(
    model="Tesslate/OmniCoder-9B",
    messages=[{"role": "user", "content": "Explain the difference between a mutex and a semaphore."}],
    temperature=0.6,
)
print(response.choices[0].message.content)

llama.cpp(GGUF)

llama-cli --hf-repo Tesslate/OmniCoder-9B-GGUF --hf-file omnicoder-9b-q4_k_m.gguf -p "Your prompt" -c 8192

所有量化版本:Tesslate/OmniCoder-9B-GGUF


训练详情

基础模型Qwen3.5-9B
训练方法LoRA SFT(r=64,alpha=32)
数据集来自5个来源的425K智能体轨迹
样本打包样本打包,效率达99.35%
硬件4x NVIDIA H200(DDP)
框架Axolotl
精度bf16
优化器AdamW(学习率=2e-4,余弦调度)

架构

OmniCoder 继承了 Qwen3.5-9B 的混合架构:

  • 门控 Delta 网络:线性注意力层与标准注意力交错,以高效处理长程依赖
  • VLM 主干:基于 Qwen3_5ForConditionalGeneration 构建

推荐采样参数

参数值
Temperature(温度)0.6
Top-P0.95
Top-K20
Presence Penalty(存在惩罚)0.0

对于智能体/工具调用任务,可考虑降低温度(0.2-0.4)以获得更具确定性的行为。


局限性

  • 尚未对非英语任务的性能进行广泛评估
  • 工具调用格式具有灵活性,但在训练中所见的框架模式下效果最佳

致谢

特别感谢 Axolotl 团队以及 axolotl#3453 中的讨论,他们帮助实现了 Qwen3.5 的样本打包支持。


引用

@misc{omnicoder2025,
  title={OmniCoder-9B: A Frontier Open Coding Agent},
  author={Tesslate},
  year={2025},
  url={https://huggingface.co/Tesslate/OmniCoder-9B}
}

由 Tesslate 打造