Needle โ€” KAIYA Tool-Calling Model (R3)

Model Details

  • Architecture: SimpleAttentionNetwork (custom encoder-decoder transformer, JAX/Flax)
  • Parameters: 26,315,421 (26M)
  • Training Data: 5,708 examples, 45 tools, KAIYA ecosystem
  • Fine-tuning: 12 epochs, batch=8, max_len=512
  • Training Time: ~1.5 hours on RTX 4050 6GB VRAM

Evaluation Results

Metric Score
Call F1 94.0%
Exact Match 94.0%
Name F1 99.11%
JSON Parse Rate 100%
Args Accuracy 94.84%

Tools Supported (45)

agent_loop, cronjob, captcha, crm, email_api, agenda, payments, accounting, campaign, suite, pipeline, followup, consultora, voice_mgr, tts, ollama, musetalk, cosyvoice, plasma, fable, mythos, bridge, soul_proxy, mem0, memory, session_search, skills, kanban, delegation, profiles, mcp_servers, graphrag, web_search, browser, terminal, file_ops, code_execution, vision, image_gen, video_gen, computer_use, github, smart_home, spotify, agency_agents

Usage

from needle.model.run import load_checkpoint, generate
from needle.model.architecture import SimpleAttentionNetwork
from needle.dataset.dataset import get_tokenizer
import jax

params, config = load_checkpoint("needle-kaiya-tools-v3.pkl")
model = SimpleAttentionNetwork(config)
tokenizer = get_tokenizer()

result = generate(
    model, params, tokenizer,
    "Send an email to maria@example.com",
    tools='[{"name":"email_api","description":"Send email","parameters":{...}}]',
    max_gen_len=512, stream=False, constrained=True
)
print(result)
# [{"name":"email_api","arguments":{"action":"send","to":"maria@example.com",...}}]

Training Data

The kaiya_tools_dataset_v3.jsonl file contains 5,708 training examples covering 45 tools from the KAIYA ecosystem. Each example includes a query, available tools (JSON), and the expected tool call answer (JSON).

License

Apache 2.0 โ€” Trained by KAIYAGO Solutions for the KlawAqua-AGI ecosystem.

Downloads last month
15
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support