seanpoyner/smolcode-coder-csharp-3b-tools

TEXT GENERATIONConcurrency Cost:1Model Size:3.1BQuant:BF16Ctx Length:32kTool Calling:SupportedPublished:Jun 14, 2026License:apache-2.0Architecture:Transformer Open Weights Cold

seanpoyner/smolcode-coder-csharp-3b-tools is a 3.1 billion parameter LoRA fine-tune of Qwen2.5-Coder-1.5B-Instruct, developed by seanpoyner. This model is specifically designed to enable native function emission, allowing small coder models to drive agentic coding loops. It excels at integrating tool use within coding assistants by correctly formatting tool calls for runtimes like Ollama and llama.cpp. The model's primary use case is facilitating agentic coding workflows, particularly for the smolcode assistant.

Loading preview...

Overview

smolcode-coder-csharp-3b-tools is a LoRA fine-tune of the Qwen2.5-Coder-1.5B-Instruct model, developed by seanpoyner. Its core purpose is to enable small language models (SLMs) to emit native <tool_call> function calls, which is crucial for driving agentic coding loops in environments like Ollama and llama.cpp. This addresses a common limitation where small Qwen-Coder models typically describe tool calls as plain-text JSON, breaking agentic tool-use workflows.

Key Capabilities

  • Native Tool Call Emission: The model is specifically trained to output <tool_call>{"name": ..., "arguments": ...}</tool_call> when tool use is required, ensuring compatibility with agentic runtimes.
  • Agentic Coding Support: Designed to power agentic coding assistants, allowing SLMs to interact effectively with external tools.
  • Optimized for Small Models: This fine-tune brings advanced tool-use capabilities to a tiny (≤2B parameter) model class.

Training Details

  • Base Model: Qwen/Qwen2.5-Coder-1.5B-Instruct.
  • Methodology: Utilizes bf16 LoRA with assistant-only loss, focusing on tool calls and final answers.
  • Data: Trained on a combination of NousResearch/hermes-function-calling-v1 and synthetic smolcode tool-use trajectories, ensuring the training target is byte-identical to the inference prompt.
  • Version 2 Improvements: This v2 release fixes a critical train/inference template mismatch present in v1, ensuring robust free-generation tool-call parsing with a target of ≥90% accuracy on held-out prompts.

Good For

  • Developers building agentic coding assistants that require precise tool-call formatting.
  • Integrating tool-use capabilities into resource-constrained environments using small language models.
  • Enhancing the functionality of SLMs for automated code generation and interaction with external APIs.