🇹🇷 Needle-TR LoRA: Türkçe Araç Çağırıcı Model

Needle-TR LoRA, Türkçe doğal dil komutlarını yüksek doğrulukla yerel fonksiyon/araç çağrılarına (Tool Calling / Function Calling) dönüştürmek üzere eğitilmiş hafif bir LoRA adaptörüdür. Cactus Needle (needle3) mimarisinden ilham alarak geliştirilmiştir.


Model Details

Model Description


Uses

Doğrudan Kullanım (Direct Use)

  • Türkçe kullanıcı komutlarını JSON tabanlı fonksiyon çağrılarına dönüştürme.
  • Cihaz üzerinde (on-device) çalışan yerel yapay zeka asistanları ve akıllı ev / mobil ajan sistemleri.
  • Desteklenen temel araçlar: get_weather (hava durumu), send_message (mesaj iletme), set_alarm (alarm kurma), calculate (matematiksel işlem).

Kapsam Dışı Kullanım (Out-of-Scope Use)

  • Fonksiyon çağırma amacı taşımayan genel sohbet ve serbest metin üretimi.
  • Kötü niyetli, zararlı ya da yetkisiz sistem otomasyonları.

Bias, Risks, and Limitations

  • Model, önceden tanımlanmış araç şemalarıyla en yüksek performansı verecek şekilde optimize edilmiştir.
  • Tanımlı araçların dışındaki bir talep geldiğinde araç uydurmak yerine boş çağrı ([]) üretmesi hedeflenmiştir.

How to Get Started with the Model

Modeli transformers ve peft kütüphaneleriyle doğrudan kullanabilirsiniz:

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

base_model_id = "Qwen/Qwen2.5-0.5B-Instruct"
lora_model_id = "emrekayik/needle-tr-lora"

tokenizer = AutoTokenizer.from_pretrained(lora_model_id)
base_model = AutoModelForCausalLM.from_pretrained(
    base_model_id,
    torch_dtype=torch.float32,
    device_map="auto",
)
model = PeftModel.from_pretrained(base_model, lora_model_id)

messages = [
    {
        "role": "system",
        "content": "Sen Türkçe komutları uygun araçlara dönüştüren bir yapay zeka asistanısın."
    },
    {
        "role": "user",
        "content": "İstanbul'da hava durumu nasıl?"
    }
]

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

with torch.no_grad():
    outputs = model.generate(**inputs, max_new_tokens=128)

response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
print(response)
# Çıktı:
# ```json
# {"name": "get_weather", "arguments": {"city": "İstanbul"}}
# ```
Downloads last month
34
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 1 Ask for provider support

Model tree for emrekayik/needle-tr-lora

Adapter
(2)
this model