Instructions to use mrcuren/FinLM-8B-TR with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use mrcuren/FinLM-8B-TR with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="mrcuren/FinLM-8B-TR") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("mrcuren/FinLM-8B-TR") model = AutoModelForCausalLM.from_pretrained("mrcuren/FinLM-8B-TR", device_map="auto") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use mrcuren/FinLM-8B-TR with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf mrcuren/FinLM-8B-TR:Q4_K_M # Run inference directly in the terminal: llama cli -hf mrcuren/FinLM-8B-TR:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf mrcuren/FinLM-8B-TR:Q4_K_M # Run inference directly in the terminal: llama cli -hf mrcuren/FinLM-8B-TR:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf mrcuren/FinLM-8B-TR:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf mrcuren/FinLM-8B-TR:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf mrcuren/FinLM-8B-TR:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf mrcuren/FinLM-8B-TR:Q4_K_M
Use Docker
docker model run hf.co/mrcuren/FinLM-8B-TR:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use mrcuren/FinLM-8B-TR with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "mrcuren/FinLM-8B-TR" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mrcuren/FinLM-8B-TR", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/mrcuren/FinLM-8B-TR:Q4_K_M
- SGLang
How to use mrcuren/FinLM-8B-TR with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "mrcuren/FinLM-8B-TR" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mrcuren/FinLM-8B-TR", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "mrcuren/FinLM-8B-TR" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mrcuren/FinLM-8B-TR", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Ollama
How to use mrcuren/FinLM-8B-TR with Ollama:
ollama run hf.co/mrcuren/FinLM-8B-TR:Q4_K_M
- Unsloth Studio
How to use mrcuren/FinLM-8B-TR with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for mrcuren/FinLM-8B-TR to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for mrcuren/FinLM-8B-TR to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for mrcuren/FinLM-8B-TR to start chatting
- Pi
How to use mrcuren/FinLM-8B-TR with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf mrcuren/FinLM-8B-TR:Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "mrcuren/FinLM-8B-TR:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- OpenClaw new
How to use mrcuren/FinLM-8B-TR with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf mrcuren/FinLM-8B-TR:Q4_K_M
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "mrcuren/FinLM-8B-TR:Q4_K_M" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
- Docker Model Runner
How to use mrcuren/FinLM-8B-TR with Docker Model Runner:
docker model run hf.co/mrcuren/FinLM-8B-TR:Q4_K_M
- Lemonade
How to use mrcuren/FinLM-8B-TR with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull mrcuren/FinLM-8B-TR:Q4_K_M
Run and chat with the model
lemonade run user.FinLM-8B-TR-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use mrcuren/FinLM-8B-TR with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf mrcuren/FinLM-8B-TR:Q4_K_M
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default mrcuren/FinLM-8B-TR:Q4_K_M
Run Hermes
hermes
- Atomic Chat
FinLM-8B-TR
Qwen3-8B tabanlı, Türkçe finansal tablo (KAP / BIST bilanço) analizi için LoRA ile fine-tune edilmiş 8B parametreli bir dil modeli.
Model; cari oran, asit-test, ROE, ROIC, FCF, kaldıraç gibi finansal oranları verilen bilanço kalemlerinden hesaplar, sonucu eşik değerlerle karşılaştırır ve Türkçe yorum üretir.
Eğitim verisi 89 BIST şirketinin gerçek KAP finansal tablolarından (52.332 kayıt, 6 dönem) türetilmiştir.
| Base model | unsloth/Qwen3-8B-bnb-4bit (Qwen3-8B) |
| Yöntem | LoRA (PEFT) + SFT, Unsloth |
| Dil | Türkçe |
| Alan | Finansal tablo analizi |
| Veri seti | mrcuren/slm-bilanco-financial-qa-tr |
⚠️ Sorumluluk Reddi
Bu model yatırım tavsiyesi vermez ve yatırım kararlarında kullanılamaz.
- Modelin ürettiği analizler, yorumlar ve değerlendirmeler hiçbir koşulda yatırım tavsiyesi, finansal danışmanlık veya alım-satım önerisi niteliğinde değildir. Yatırım kararları için SPK lisanslı yetkili kuruluşlara ve finansal danışmanlara başvurunuz.
- Model halüsinasyon üretir. Verilmeyen bilanço kalemlerini uydurabilir, hesaplama hatası yapabilir, yanlış oran formülü uygulayabilir. Ürettiği her sayısal değer bağımsız olarak doğrulanmalıdır.
- Eğitim verisindeki finansal değerler gerçek KAP bildirimlerinden alınmıştır; ancak yorum metinleri LLM ile üretilmiştir ve hatalı çıkarım içerebilir. Modelin ürettiği hiçbir analiz resmî KAP bildirimlerinin yerine geçmez — kaynak tablolar doğrudan kap.org.tr üzerinden teyit edilmelidir.
- Model, eğitim verisinin kapsadığı dönemle sınırlıdır. Güncel piyasa koşullarını, enflasyon muhasebesini (TMS 29), sektör dinamiklerini veya şirkete özgü olayları bilmez.
- Fine-tuning sonucunda modelde ciddi catastrophic forgetting oluşmuştur (bkz. Karşılaştırmalı Değerlendirme). Model genel amaçlı bir asistan değildir; finansal analiz alanı dışında kullanılmamalıdır.
- Model ve çıktıları "olduğu gibi" (as-is) sunulmaktadır. Kullanımdan doğacak her türlü sorumluluk kullanıcıya aittir. Geliştirici hiçbir garanti vermez.
- Bu model bir araştırma ve eğitim çıktısıdır; üretim ortamında insan denetimi olmadan kullanılmamalıdır.
Eğitim Ayrıntıları
Yöntem
Base model 4-bit (bnb NF4) yüklenmiş, üzerine LoRA adapter eğitilmiş, ardından adapter merge edilmiştir. train_on_responses_only ile loss yalnızca asistan cevaplarında hesaplanmıştır.
LoRA konfigürasyonu
| Parametre | Değer |
|---|---|
r (rank) |
16 |
lora_alpha |
16 |
lora_dropout |
0.05 |
bias |
none |
target_modules |
q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj |
use_gradient_checkpointing |
unsloth |
| Eğitilen parametre | 43.646.976 / 8.234.382.336 (%0,53) |
Eğitim hiperparametreleri
| Parametre | Değer |
|---|---|
max_seq_length |
2048 |
packing |
True (4.968 örnek → 2.994 paketlenmiş sekans) |
per_device_train_batch_size |
2 |
gradient_accumulation_steps |
4 |
| Efektif batch size | 8 |
learning_rate |
1e-4 |
lr_scheduler_type |
cosine |
warmup_steps |
25 |
optim |
adamw_8bit |
weight_decay |
0.05 |
| Toplam adım | 500 (≈ 1,34 epoch) |
eval_strategy |
steps (her 50 adım) |
early_stopping_patience |
3 |
load_best_model_at_end |
True (eval_loss) |
seed |
3407 |
Donanım ve süre
| GPU | 1 × NVIDIA T4 (Google Colab) |
| Eğitim süresi | 3 saat 45 dakika |
| Framework | Unsloth + TRL SFTTrainer + PEFT |
Loss eğrisi
| Adım | Training Loss | Validation Loss |
|---|---|---|
| 50 | 0,5797 | 0,5373 |
| 100 | 0,4765 | 0,4557 |
| 150 | 0,4255 | 0,4263 |
| 200 | 0,4081 | 0,4083 |
| 250 | 0,3907 | 0,3942 |
| 300 | 0,3669 | 0,3852 |
| 350 | 0,3634 | 0,3757 |
| 400 | 0,3660 | 0,3724 |
| 450 | 0,3235 | 0,3699 |
| 500 | 0,3450 | 0,3694 |
Doğrulama kaybı 350. adımdan sonra platoya girmiştir (son 150 adımda yalnızca −0,006 iyileşme); eğitim yakınsamıştır.
Eğitim Verisi
Veri seti: mrcuren/slm-bilanco-financial-qa-tr
| Kayıt | |
|---|---|
| Train | 4.968 (%90) |
| Validation | 552 (%10) |
| Toplam | 5.520 |
Kaynak veri — gerçek KAP bildirimleri
Veri setinin sayısal temeli gerçek finansal tablolardan gelir; sentetik veya uydurulmuş bilanço değeri kullanılmamıştır.
| Kaynak | KAP (Kamuyu Aydınlatma Platformu) finansal tabloları |
| Şirket sayısı | 89 BIST şirketi |
| Toplam kayıt | 52.332 finansal tablo satırı |
| Tablolar | Bilanço, Gelir Tablosu, Nakit Akım Tablosu, Dipnotlar |
| Kalem çeşidi | 131 |
| Dönemler | 2024/12, 2025/3, 2025/6, 2025/9, 2025/12, 2026/3 (6 dönem) |
Üretim hattı
KAP finansal tabloları → 30 finansal oran hesaplama → seed instruction (24 tip)
52.332 kayıt / 89 şirket (deterministik Python) ↓
[GERÇEK VERİ] [GERÇEK HESAPLAMA] LLM augmentasyonu (Gemini + Groq)
[yalnizca dogal dil ifadesi]
↓
Alpaca formatı (instruction/input/output)
Sorumluluk dağılımı:
- Gerçek ve deterministik:
inputalanındaki tüm bilanço kalemleri (KAP), finansal oranlar (Python ile hesaplanmış), referans cevaplardaki sayısal değerler ve dönem trendleri. - LLM ile üretilen:
instructionalanının ifade çeşitliliği veoutputalanının doğal dil yorumu.
Bu ayrım, modelin sayısal tam eşleşme skorunun neden anlamlı olduğunu açıklar: referans değerler uydurulmamış, gerçek tablolardan hesaplanmıştır.
Kaynak dağılımı
| Kaynak | Kayıt |
|---|---|
| Groq augmented | 4.500 |
| Seed generated | 550 |
| Gemini augmented | 470 |
Kategoriler
likidite · karlılık · kaldıraç · borçluluk · nakit_akışı · verimlilik · trend · varlık_yapısı · sektör_karşılaştırma · yönetici_özeti
Kapsanan oranlar: Cari Oran, Asit-Test, Nakit Oranı, Stok Bağımlılık, Borç/Özkaynak, Net Borç/Özkaynak, Faiz Karşılama (ICR), Brüt/Faaliyet/Net Kâr Marjı, ROA, ROE, ROIC, Varlık/Stok/Alacak Devir Hızı, FCF, FCF/Net Kâr, Nakit Üretimi Oranı, Yatırım/Amortisman.
Format
{
"instruction": "Şirketin cari oranını analiz et ve likidite riskini değerlendir.",
"input": "Dönen Varlıklar: 41,550,520,065 TL\nKısa Vadeli Yükümlülükler: 17,527,567,147 TL",
"output": "Adım 1: Cari Oran = 41,550,520,065 / 17,527,567,147 = 2.37 ...",
"category": "likidite",
"source": "groq"
}
Veri kısıtları
- Veri seti 24 benzersiz instruction tipinden türetilmiştir; talimat çeşitliliği sınırlıdır.
- Augmentasyon dağılımı dengesizdir; augmented kayıtların büyük çoğunluğu tek bir seed tipini temel alır.
- Veri seti %100 finansal analiz içeriğinden oluşur; genel yetenekleri koruyacak replay/anchor verisi içermez. Bu, aşağıda raporlanan catastrophic forgetting'in başlıca nedenidir.
Kullanım Alanları
✅ Amaçlanan kullanım
- Verilen bilanço/gelir tablosu kalemlerinden finansal oran hesaplama ve Türkçe yorumlama
- Likidite, kârlılık, borçluluk, nakit akışı ve verimlilik analizlerinin taslak metinlerini üretme
- Finansal analiz eğitim materyali ve örnek çözüm üretimi
- Türkçe finansal NLP araştırmaları, domain-adaptation çalışmaları için baseline
- Yapılandırılmış finansal tablo verisinden rapor taslağı oluşturma (insan denetimiyle)
❌ Amaçlanmayan / yasak kullanım
- Yatırım kararı alma, portföy yönetimi, alım-satım sinyali üretme
- Müşteriye doğrudan sunulan finansal danışmanlık
- Kredi değerlendirme, risk skorlama, sigorta veya istihdam kararları
- Denetim, vergi beyanı veya resmî finansal raporlama
- Genel amaçlı sohbet asistanı — model bu yetkinliğini büyük ölçüde kaybetmiştir
- Matematik, fen, kodlama veya alan dışı soru-cevap
- İnsan denetimi olmadan otomatik karar verme
Hedef kullanıcı
Finansal analistler, veri bilimciler ve araştırmacılar — çıktıyı doğrulayacak alan bilgisine sahip kullanıcılar. Son kullanıcıya doğrudan sunulmak üzere tasarlanmamıştır.
Karşılaştırmalı Değerlendirme
İki bağımsız benchmark yapılmıştır: (A) alan içi performans, (B) genel yeteneklerde regresyon (catastrophic forgetting).
A. Alan içi benchmark — Finansal analiz
Kurulum: 151 örneklik held-out test seti (veri üretiminde kullanılmayan dönem), 7 kategori. Karşılaştırma: Qwen3-8B (base, fine-tune edilmemiş) vs FinLM-8B-TR.
| Metrik | Qwen3-8B (base) | FinLM-8B-TR | Değişim |
|---|---|---|---|
| ROUGE-L | 0,1973 | 0,3085 | +56,3% |
| BLEU-4 | 0,0186 | 0,0897 | +383% |
| BERTScore F1 | 0,5669 | 0,6888 | +21,5% |
| Sayısal Tam Eşleşme | 0,2564 | 0,5633 | +120% |
Sayısal Tam Eşleşme metriği, referans cevaptaki sayısal değerlerin model çıktısında birebir yer alma oranıdır — modelin yalnızca üslubu değil, hesaplamayı da öğrendiğini gösterir.
Kategori bazında
| Kategori | n | ROUGE-L (base → FT) | BLEU-4 (base → FT) | Sayısal EM (base → FT) |
|---|---|---|---|---|
| likidite | 22 | 0,225 → 0,409 | 0,029 → 0,197 | 0,301 → 0,691 |
| borçluluk | 22 | 0,196 → 0,352 | 0,025 → 0,132 | 0,214 → 0,657 |
| verimlilik | 21 | 0,203 → 0,303 | 0,031 → 0,107 | 0,252 → 0,581 |
| nakit_akışı | 22 | 0,227 → 0,298 | 0,034 → 0,112 | 0,362 → 0,622 |
| kârlılık | 21 | 0,186 → 0,270 | 0,011 → 0,067 | 0,270 → 0,473 |
| trend | 22 | 0,167 → 0,270 | 0,004 → 0,036 | 0,218 → 0,472 |
| genel_özet | 21 | 0,175 → 0,254 | 0,005 → 0,037 | 0,176 → 0,438 |
7/7 kategoride iyileşme vardır. En güçlü kazanım tek-oranlı, deterministik görevlerde (likidite, borçluluk); en zayıf kazanım çok adımlı sentez gerektiren görevlerde (trend, yönetici özeti).
B. Catastrophic forgetting — MMLU-TR
Kurulum: malhajar/mmlu_tr-v0.2, 17 alt alan, 3.956 soru, 5-shot, greedy decoding (temperature=0), max_new_tokens=16.
| Qwen3-8B (base) | FinLM-8B-TR | Değişim | |
|---|---|---|---|
| Doğruluk (tüm sorular) | 57,20% | 5,86% | −51,34 puan |
| Cevapsız oranı | 0,00% | 77,05% | +77,05 puan |
| Cevaplanan soru | 3.956 / 3.956 | 908 / 3.956 | — |
| Doğruluk (yalnızca cevaplananlar) | 57,20% | 25,55% | rastgele seviye (%25) |
Sonuç iki katmanlı okunmalıdır:
- Format kilitlenmesi (%77): Model, çok uzun ve yapılandırılmış finansal analiz formatına kilitlenmiş; 16 token içinde tek harflik cevap üretmeyi bırakmıştır.
- Gerçek bilgi kaybı: Cevap verdiği sorularda dahi doğruluk %25,5 — 4 şıklı testte rastgele tahmin seviyesi. Kayıp yalnızca bir format sorunu değildir.
Alan bazında (seçilmiş)
| Alt alan | Base | FinLM-8B-TR | Cevapsız (FT) |
|---|---|---|---|
| high_school_microeconomics | 69,20% | 11,81% | 37,6% |
| marketing | 70,51% | 17,05% | 28,6% |
| management | 58,59% | 14,14% | 69,7% |
| professional_accounting | 35,13% | 10,04% | 68,1% |
| philosophy | 61,87% | 8,36% | 68,2% |
| miscellaneous | 62,40% | 2,35% | 94,0% |
| elementary_mathematics | 63,00% | 0,00% | 99,7% |
| econometrics | 43,86% | 0,00% | 97,4% |
| high_school_statistics | 54,63% | 0,46% | 98,6% |
Kayıp alan-seçicidir: finans/işletme ile örtüşen alanlar (mikroekonomi, pazarlama) en az; matematik ve istatistik en çok etkilenmiştir.
Değerlendirmenin özeti
FinLM-8B-TR, dar bir alanda uzmanlaşmış bir modeldir. Alan içinde base modeli belirgin biçimde geçer; alan dışında base modelin çok gerisindedir. Genel amaçlı kullanım için base Qwen3-8B tercih edilmelidir.
Bilinen nedenler ve iyileştirme yolu
Forgetting'in başlıca nedenleri: (1) veri setinde replay/anchor örneği bulunmaması, (2) 24 instruction tipiyle sınırlı talimat çeşitliliği, (3) tüm örneklerde sabit sistem promptu, (4) LoRA'nın MLP modüllerini (gate/up/down_proj) 1e-4 öğrenme oranıyla kapsaması.
Planlanan iyileştirmeler: %20-30 genel Türkçe instruction replay verisi eklenmesi, LoRA hedeflerinin yalnızca attention modüllerine daraltılması, öğrenme oranının düşürülmesi ve sistem promptu rotasyonu.
Kullanım
Repo içeriği
| Format | Dosya | Boyut | Kullanım |
|---|---|---|---|
| FP16 (bfloat16) | model-0000X-of-00004.safetensors |
16,4 GB | Transformers, Unsloth, vLLM |
| GGUF Q4_K_M | *.Q4_K_M.gguf |
5,0 GB | llama.cpp, Ollama, LM Studio, Jan |
Transformers
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "mrcuren/FinLM-8B-TR"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
dtype=torch.bfloat16,
device_map="auto",
)
SYSTEM_PROMPT = (
"Sen bir Turkce finansal analiz asistanisin. Sirket bilanco verilerini "
"analiz edip detayli Turkce yorumlar sunarsin. /no_think"
)
messages = [
{"role": "system", "content": SYSTEM_PROMPT},
{"role": "user", "content": (
"AEFES sirketinin borc/ozkaynak dengesini degerlendir.\n"
"Kisa Vadeli Yukumlulukler: 115,470,359,000 TL\n"
"Uzun Vadeli Yukumlulukler: 84,314,227,000 TL\n"
"Ozsermaye: 212,651,768,000 TL"
)},
]
inputs = tokenizer.apply_chat_template(
messages, add_generation_prompt=True,
tokenize=True, return_dict=True, return_tensors="pt",
).to(model.device)
out = model.generate(**inputs, max_new_tokens=512, temperature=0.3, top_p=0.9)
print(tokenizer.decode(out[0][inputs["input_ids"].shape[-1]:], skip_special_tokens=True))
Unsloth
from unsloth import FastLanguageModel
model, tokenizer = FastLanguageModel.from_pretrained(
model_name="mrcuren/FinLM-8B-TR",
max_seq_length=2048,
load_in_4bit=True,
)
FastLanguageModel.for_inference(model)
Ollama / llama.cpp (GGUF)
# llama.cpp
llama-cli -hf mrcuren/FinLM-8B-TR --jinja
# Ollama
ollama run hf.co/mrcuren/FinLM-8B-TR:Q4_K_M
Önerilen inference ayarları
| Parametre | Değer | Not |
|---|---|---|
temperature |
0,3 | Finansal analizde determinizme yakın çıktı için |
top_p |
0,9 | |
max_new_tokens |
512–1024 | Analiz çıktıları uzundur |
| Sistem promptu | Yukarıdaki SYSTEM_PROMPT |
Eğitimdekiyle aynı olmalıdır |
| Chat template | Qwen2.5 tarzı (repoda gömülü) | Eğitimde qwen25 template kullanılmıştır |
/no_think direktifi sistem promptunda korunmalıdır; model bu direktifle eğitilmiştir.
Kısıtlar ve Riskler
- Halüsinasyon: Eksik veri verildiğinde model kalem uydurabilir. Prompt'ta gerekli tüm bilanço kalemlerini açıkça verin.
- Aritmetik güvenilmezliği: Sayısal tam eşleşme %56,3'tür — çıktıların yaklaşık yarısında en az bir sayısal sapma bulunur. Hesaplamalar mutlaka doğrulanmalıdır.
- Alan dışı kullanım: MMLU doğruluğu rastgele seviyededir; model alan dışında kullanılmamalıdır.
- Augmentasyon yanlılığı: Sayısal veriler gerçek olsa da, eğitim verisindeki yorum metinleri Gemini/Groq ile üretilmiştir; model bu üretici modellerin yorumlama yanlılıklarını ve hatalarını devralmış olabilir.
- Sabit format eğilimi: Model uzun, yapılandırılmış analiz formatına eğilimlidir; kısa/serbest formatlı cevap üretmekte zorlanır.
- Enflasyon muhasebesi: Model TMS 29 (yüksek enflasyonlu ekonomilerde raporlama) düzeltmelerini kavramaz; nominal değerler üzerinden yorum yapar.
- Bağlam sınırı: Eğitim 2048 token ile yapılmıştır; çok uzun finansal tablolarda performans düşer.
- Kuantizasyon: GGUF Q4_K_M sürümünde ek doğruluk kaybı beklenmelidir.
Lisans
Apache 2.0 — base model Qwen3-8B lisansı devralınmıştır. Kullanım, Qwen3 lisans koşullarına tabidir.
Atıf
@misc{finlm8btr2026,
title = {FinLM-8B-TR: Türkçe Finansal Tablo Analizi için Fine-tuned Qwen3-8B},
author = {mrcuren},
year = {2026},
url = {https://huggingface.co/mrcuren/FinLM-8B-TR}
}
Teşekkür
Unsloth ile eğitilmiş ve GGUF'a dönüştürülmüştür.
- Downloads last month
- 70

ollama run hf.co/mrcuren/FinLM-8B-TR:Q4_K_M