🤖 OmniGPT-355M-Instruct

OmniGPT-355M-Instruct, GPT-2 Medium (355M parametre) mimarisi üzerine inşa edilmiş ve Stanford Alpaca veri seti ile talimat odaklı (Instruction-Tuned) olarak ince ayar (Fine-Tuning) yapılmış yerel ve bağımsız bir dil modelidir.

Özellikle Self-Reflective RAG (Retrieval-Augmented Generation) mimarilerinde bir "Üretici (Builder/Generator)" ajan olarak çalışmak üzere optimize edilmiştir.

📌 Model Detayları

  • Geliştirici: Onur Demircioğlu
  • Model Tipi: Causal Language Model (Transformer Decoder)
  • Mimari: GPT-2 Medium (355M)
  • Bağlam Sınırı (Max Position Embeddings): 256 Token
  • Eğitim Stratejisi: Supervised Fine-Tuning (SFT) - Instruction Tuning
  • Kullanılan GPU: 2x NVIDIA T4 (Kaggle P100/T4 Environment)
  • Dil: Temel olarak İngilizce (İlerleyen sürümlerde Knowledge Distillation ile Türkçe yeteneği artırılacaktır).

🚀 Kullanım Amacı ve Mimari Vizyon

Bu model, tek başına devasa bilgiler ezberlemesi için değil; "Verilen bilgiyi sentezleme ve talimatlara uyma" amacıyla tasarlanmıştır.

Geliştirilen Otonom Yapay Zeka Mimarisi kapsamında OmniGPT; FAISS / MiniLM tabanlı bir vektör veritabanından bağlamı (context) alarak bilgi sentezler. Self-Reflective (Kendi Kendini Denetleyen) sistemlerde bir "Üretici (Builder)" ajan olarak yüksek performansla görev yapabilecek şekilde yapılandırılmıştır.

💻 Nasıl Kullanılır?

Modeli doğrudan Hugging Face transformers kütüphanesi ile çekebilirsiniz:

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

model_id = "OnurDemircioglu/OmniGPT-355M-Instruct"

tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id, 
    torch_dtype=torch.float16, 
    attn_implementation="eager" # Windows CUDA cihazlar için önerilir
).to("cuda")

# Alpaca Prompt Formatı
prompt = """Below is an instruction that describes a task. Write a response that appropriately completes the request.

### Instruction:
Explain what artificial intelligence is in simple terms.

### Response:
"""

inputs = tokenizer(prompt, return_tensors="pt", truncation=True, max_length=150).to("cuda")

output_ids = model.generate(
    inputs["input_ids"],
    attention_mask=inputs["attention_mask"],
    max_new_tokens=60,
    do_sample=True,
    temperature=0.7,
    top_p=0.9,
    repetition_penalty=1.3,
    pad_token_id=tokenizer.eos_token_id
)

response = tokenizer.decode(output_ids[0], skip_special_tokens=True)
print(response)

⚠️ Sınırlamalar ve Uyarılar (Limitations)

  • Token Sınırı (WPE Overflow): Modelin maksimum konum yerleştirmesi (Max Position Embeddings) 256'dır. Girdiğiniz metin (prompt) ve üretilecek kelimelerin toplamı 256'yı geçerse CUDA device-side assert hatası alınabilir. Giriş metnini her zaman max_length=150 gibi sınırlarla (truncation_side="left") koruma altına alın.
  • Dil Engeli: Model şu an itibarıyla ağırlıklı olarak İngilizce verilerle eğitilmiştir. Türkçe sorularda (veya RAG bağlamlarında) anlam kaybı yaşayabilir veya İngilizce/Türkçe karışımı ("Tarzanca") cevaplar verebilir.
  • Repetition Loop (Tekrara Düşme): Küçük modeller doğası gereği döngüye girmeye yatkındır. Üretim (Generation) sırasında repetition_penalty=1.3 veya üzeri değerlerin kullanılması zorunludur.

🔮 Gelecek Yol Haritası (Phase 5 - Continuous Learning)

Bu model, statik bir yapıdan ziyade Self-Improving RAG (Kendi Hatasından Öğrenen Sistem) boru hattının ilk üreticisidir. İlerleyen aşamalarda:

  • Daha büyük Teacher modellerinden damıtılan (Knowledge Distillation) sentetik veri setleriyle kapasitesi artırılacaktır.
  • Model, bir Data Flywheel içinde biriktirilen insan/yargıç tercihleriyle, DPO (Direct Preference Optimization) kullanılarak kendi ağırlıklarını otonom olarak güncelleyecek şekilde geliştirilmektedir.
Downloads last month
2
Safetensors
Model size
0.4B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for OnurDemircioglu/OmniGPT-355M-Instruct

Quantizations
1 model

Dataset used to train OnurDemircioglu/OmniGPT-355M-Instruct