File size: 4,435 Bytes
f6ffa6a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19db9e9
 
 
 
 
 
 
f6ffa6a
 
 
 
 
 
 
 
 
 
 
 
 
f713245
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f6ffa6a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
---
license: apache-2.0
language:
  - en
library_name: transformers
tags:
  - genomics
  - tool-calling
  - function-calling
  - qwen3.5
  - qwen
pipeline_tag: text-generation
base_model: Qwen/Qwen3.5-4B
pretty_name: CodeXomics-ToolAgent-4B-v1
---

# CodeXomics-ToolAgent-4B-v1

**CodeXomics-ToolAgent-4B-v1** (internally `qwen3.5:4b-codexomics-tools-v5`) is a 4.2B-parameter
tool-calling model fine-tuned from `Qwen/Qwen3.5-4B` for the CodeXomics genomics workbench. It
performs native function calling against the CodeXomics tool registry (file loading, navigation,
sequence analysis, annotation, track control, export, BLAST, primer design, database/protein
retrieval, task management, and UI control).

CodeXomics is an AI-native genome browser: a cross-platform desktop application in which
conversational AI agents drive genome visualization and run real biological analyses, with built-in
tool execution, a dynamic tool registry, plugin development, and Model Context Protocol (MCP)
integration. Source code and documentation:
[github.com/Scilence2022/CodeXomics](https://github.com/Scilence2022/CodeXomics) and
[scilence2022.github.io/CodeXomics](https://scilence2022.github.io/CodeXomics/).

## Fine-tuning

- Method: QLoRA (rank 16, scale 32.0, dropout 0.05, 4 layers) with MLX-LM 0.31.2 / MLX 0.32.0
- Trainable parameters: 4.058M (0.096%)
- Optimizer: AdamW, learning rate 1.0e-5, effective batch size 4, 200 iterations
- Maximum sequence length: 3,072 tokens; prompt masking enabled
- Hardware: Apple M3 Max; peak memory 191 GB (including swap)
- Checkpoint selection: iteration 75 (validation loss 0.020); test loss 0.074 (perplexity 1.077)
- Training data: CodeXomics-ToolCalling-v1 (373/123/30 train/validation/test examples)

## Evaluation

On the CodeXomics Benchmark (172 automatic tests: 143 single-operation, 29 multi-step), evaluated
in the real application loop with task-completion scoring plus execution evidence. Both the
fine-tuned model and the un-fine-tuned Qwen3.5-4B baseline were evaluated in three independent
complete sessions; results were identical across sessions for both models.

| Suite | Qwen3.5-4B (base) | CodeXomics-ToolAgent-4B-v1 |
| --- | ---: | ---: |
| Simple | 139/143 | 143/143 |
| Complex | 26/29 | 29/29 |
| **Total** | **165/172 (95.9%)** | **172/172 (100%)** |

Fine-tuning improved the overall accuracy by 7 tests (+4 simple, +3 complex). Inference settings:
temperature 0, thinking enabled.

Inference speed (mean ± SD over three independent runs; offline harness, 172 tests, Ollama Q4_K_M
on Apple M3 Max):

| Metric | Qwen3.5-4B (base) | CodeXomics-ToolAgent-4B-v1 |
| --- | ---: | ---: |
| Average latency per test (s) | 12.0 ± 0.1 | 10.7 ± 0.9 |
|   Simple suite (s) | 9.2 ± 0.1 | 8.6 ± 0.7 |
|   Complex suite (s) | 25.8 ± 0.3 | 21.5 ± 1.9 |
| Average latency per tool call (s) | 7.9 ± 0.1 | 7.3 ± 0.6 |
| Generation throughput (tokens/s) | 33.9 ± 0.4 | 33.9 ± 2.8 |
| Generated tokens per test | 408 (identical across runs) | 363 (identical across runs) |
| Prompt tokens per test | 9,004 (identical across runs) | 8,777 (identical across runs) |

![CodeXomics Benchmark: base vs. fine-tuned 4B](codexomics-v5-benchmark-comparison.png)

**Figure 1.** Two-panel comparison between the un-fine-tuned Qwen3.5-4B baseline and
CodeXomics-ToolAgent-4B-v1. Left: CodeXomics Benchmark pass rates (simple/complex/total; three
sessions each, identical results). Right: average inference latency per test with error bars
(mean ± SD over three runs; Ollama Q4_K_M, Apple M3 Max). Latency values are the mean of the
per-suite rows above; error bars show the run-to-run SD.

## Usage

```python
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained("CodeXomics-ToolAgent-4B-v1")
tokenizer = AutoTokenizer.from_pretrained("CodeXomics-ToolAgent-4B-v1")
```

For deployment in CodeXomics, the model is served through Ollama as `qwen3.5:4b-codexomics-tools-v5`
(Q4_K_M, 2.7 GB) with native tool calling and thinking enabled.

## Limitations

- The model is specialized for CodeXomics genomic workflows; generalization to other tool-calling
  domains was not evaluated.

## Citation

```bibtex
@software{codexomics-toolagent-v1,
  title = {CodeXomics-ToolAgent-4B-v1},
  author = {Song, Lifu},
  year = {2026},
  license = {Apache-2.0},
  publisher = {Hugging Face},
  base_model = {Qwen/Qwen3.5-4B}
}
```