You need to agree to share your contact information to access this model

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

Log in or Sign Up to review the conditions and access this model content.

Farabi-1.7B-agent-rag

A 1.7B Kazakh / Russian / English assistant tuned for grounded RAG and agentic tool-calling. It drops into agent stacks that expect OpenAI-style function calling and runs comfortably on a single GPU.

Built on Qwen3-1.7B and adapted for Kazakh, Russian, and English.

Capabilities

  • Grounded RAG. Answers strictly from provided passages, attributes claims to the supporting text, and abstains when the evidence is insufficient instead of fabricating an answer.
  • Tool-calling (Hermes / OpenAI function calling). Decides when a tool is needed, asks for missing required arguments, and grounds the final answer in the tool result.
    • Parallel tool-calling — issues multiple independent calls in a single turn.
    • Crosslingual argument normalization — maps inflected Kazakh/Russian entities to canonical executable arguments (city → English name, dates → ISO-8601, currency → ISO-4217, units → canonical).
    • Error recovery — retries repairable failures, and reports non-repairable ones (not-found / permission-denied / empty) honestly instead of inventing success.
  • Prompt-injection resistance. Treats retrieved documents and tool outputs as untrusted data, not instructions; ignores embedded directives, prefers least-privilege tools, and refuses to exfiltrate secrets found in context.
  • Text workbench. Spelling / grammar / formality / clarity / concision edits, rewriting, translation, and summarization across kk / ru / en.
  • No hidden chain-of-thought in trainable outputs — clean final answers and tool calls, suitable for production serving.

Benchmarks

Agentic & RAG capabilities (held-out probe)

Capability Score
Prompt-injection resistance (overall) 96%
  • instruction-in-retrieved-chunk 100%
  • tool-output injection 100%
  • least-privilege tool use 100%
  • secret / data-exfiltration refusal 82%
Parallel tool-calling 94%
Crosslingual argument normalization 91%
Text editing / workbench 86%

Note: secret-exfiltration refusal (82%) is the model's weakest safety dimension — for credential-bearing contexts, pair the model with an output filter.

Academic (ISSAI Kazakh/Russian QOLDA suite, n=250/bench; RAGBench = chrF)

Accuracy (%), compared with same-size and larger models for context. AVG is the mean of the 10 accuracy benchmarks.

Model Size ARC-kk ARC-ru MMLU-kk GPQA-kk GPQA-ru GSM8k-kk GSM8k-ru PolyMath-kk MMLU-Pro-kk MMLU-Pro-ru RAGBench (chrF) AVG
Farabi-1.7B-agent-rag 1.7B 58.8 74.4 35.2 28.8 24.0 32.4 50.4 14.0 14.8 22.4 25.4 35.5
ISSAI foggen-1.7B 1.7B 45.6 77.6 31.6 31.2 22.8 35.2 68.4 20.0 11.6 24.0 33.5 36.8
Qwen3-1.7B 1.7B 47.6 78.4 31.6 26.4 14.4 40.4 72.8 14.4 12.8 14.4 36.0 35.3
ISSAI Sherkala-8B-Chat 8B 74.8 78.4 47.6 30.0 25.6 68.8 80.0 20.4 20.4 22.4 41.0 46.8

Farabi-1.7B is competitive with the same-size ISSAI foggen-1.7B and Qwen3-1.7B on the QOLDA average, and leads its size class on the Kazakh knowledge benchmarks (ARC-kk, MMLU-kk, MMLU-Pro-kk, GPQA-ru). Sherkala-8B is shown as a larger-model reference point.

Translation (FLORES-200, BLEU)

Direction BLEU
ru → en 24.4
en → ru 18.5
kk → en 17.3
kk → ru 8.3
en → kk 8.2
ru → kk 7.7

Serving

Works with vLLM's OpenAI-compatible server using the Hermes tool-call parser:

vllm serve nur-dev/farabi-1.7b-agent-rag \
  --chat-template chat_template.jinja \
  --enable-auto-tool-choice --tool-call-parser hermes

Then call it with the OpenAI SDK (and the OpenAI Agents SDK):

from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="x")

resp = client.chat.completions.create(
    model="nur-dev/farabi-1.7b-agent-rag",
    messages=[{"role": "user", "content": "Бүгін Алматыда ауа райы қандай?"}],
    tools=[{
        "type": "function",
        "function": {
            "name": "get_weather",
            "description": "Current weather for a city.",
            "parameters": {
                "type": "object",
                "properties": {"city": {"type": "string", "description": "Canonical English city name."}},
                "required": ["city"],
            },
        },
    }],
    tool_choice="auto",
)
print(resp.choices[0].message.tool_calls)

Languages

Kazakh (kk), Russian (ru), English (en).

License

CC BY-NC 4.0 — non-commercial use only. The model weights are released for research, education, and evaluation; commercial use is not permitted. Built on Qwen3-1.7B (Apache-2.0); the base-model components remain under their original Apache-2.0 terms.

Downloads last month
151
Safetensors
Model size
2B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for nur-dev/farabi-1.7b-agent-rag

Finetuned
Qwen/Qwen3-1.7B
Finetuned
(823)
this model