Update README.md
This commit is contained in:
@@ -355,109 +355,101 @@ Designed for Linux devices, including Arch and Debian/Ubuntu-based systems.
|
|||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Bilgi Hastaları için</summary>
|
<summary>Bilgi Hastaları için</summary>
|
||||||
1. Chat yönetimi
|
1. Chat yönetimi
|
||||||
Yeni chat oluşturma (chat_1.json, chat_2.json…)
|
Chat oluşturma, değiştirme, silme, yeniden adlandırma, sabitleme/sabitten çıkarma. Chatler önce sabitlenenler, sonra son değiştirilme zamanına göre sıralanır.
|
||||||
Chat’ler arasında geçiş
|
|
||||||
Chat silme (onay pencereli, geri alınamaz)
|
|
||||||
Chat ismini değiştirme (rename popover)
|
|
||||||
Chat sabitleme (📌 pinned)
|
|
||||||
Chat liste sıralaması: önce pinned, sonra son değiştirilene gör
|
|
||||||
|
|
||||||
2. Kalıcı ayarlar (config.json)
|
2. Yerel chat saklama
|
||||||
Son açık chat’i hatırlama (last_chat)
|
Tüm chatler uygulamanın cache klasörü altında yerel olarak saklanır.
|
||||||
Karanlık/Aydınlık tema tercihi (dark_mode)
|
|
||||||
Sabitlenen chat’ler listesi (pinned_chats)
|
|
||||||
Model listesi (ai_models)
|
|
||||||
Chat başına model eşlemesi (chat_models)
|
|
||||||
OpenRouter API key saklama (open_router_key)
|
|
||||||
Mikrofon modu online/offline seçimi (is_mic_online)
|
|
||||||
Online STT model seçimi (stt_model_online)
|
|
||||||
Offline STT için whisper.cpp binary/model yolları (whisper_cpp_bin, whisper_cpp_model)
|
|
||||||
|
|
||||||
3. Sidebar UI
|
3. Bölümlü chat yükleme
|
||||||
Sidebar daralt / genişlet (☰)
|
Chatler lazy loading kullanır. İlk olarak sadece son 10 mesaj yüklenir, yukarı kaydırıldıkça eski mesajlar yüklenir.
|
||||||
Chats listesini aç/kapat
|
|
||||||
AI models listesini aç/kapat
|
|
||||||
|
|
||||||
4. Model yönetimi (chat başına)
|
4. Kalıcı yapılandırma
|
||||||
Her chat için ayrı aktif model
|
Tema, modeller, sabit chatler, son chat, STT, RAG, renkler, local provider’lar ve dil ayarları tek bir config.json dosyasında tutulur.
|
||||||
Model seçince o chat’e atanır
|
|
||||||
LRU mantığı: seçtiğin model liste başına alınır
|
|
||||||
Model silme (son model silinemez; en az 1 model kalır)
|
|
||||||
Silinen model chat’lerde kullanılıyorsa otomatik default modele çekilir (self-heal)
|
|
||||||
“AI Models +” ile yeni model ekleme (dialog + OpenRouter models linki)
|
|
||||||
|
|
||||||
5. Mesaj seçim modu
|
5. Chat başına model yönetimi
|
||||||
Mesaja tıklayarak bir/çok mesaj seçme
|
Her chat kendi aktif AI modeline sahip olabilir. En son seçilen modeller listenin en üstüne alınır.
|
||||||
Seçili mesaj sayısını gösteren bar
|
|
||||||
Seçimi tek tuşla temizleme (✕)
|
|
||||||
Seçili mesajlar balon üzerinde outline ile işaretlenir
|
|
||||||
|
|
||||||
6. Reference trees (referans zinciri / ağaç)
|
6. Online ve local model desteği
|
||||||
Seçtiğin referans mesajların used_refs zincirini genişletir
|
OpenRouter modelleri ve Ollama gibi local API tabanlı modeller desteklenir.
|
||||||
Yani referansın referansı da otomatik dahil edilir (foto/ref kaybolmasın diye)
|
|
||||||
Gönderilen yeni kullanıcı mesajına:
|
|
||||||
used_refs (AI’ya giden index seti)
|
|
||||||
refs_groups (UI’da referans önizleme grupları)
|
|
||||||
kaydedilir
|
|
||||||
|
|
||||||
7. Referans önizleme (refs preview)
|
7. Local provider ayarları
|
||||||
Referansla gönderilmiş mesajlar üstte “mini preview” olarak gösterilir
|
Base URL, başlatma komutu, durdurma komutu, system prompt ve model parametreleri tanımlanabilir.
|
||||||
Grup grup gösterim (refs_groups)
|
|
||||||
Uzun satırlar kısaltılır (200 karakter)
|
|
||||||
|
|
||||||
8. Regenerate (♻)
|
8. Sidebar arayüzü
|
||||||
Tek seçili balonda görünür
|
Açılıp kapanabilen sidebar içinde ayrı Chat ve AI Model listeleri bulunur.
|
||||||
User mesajı seçilirse: aynı mesajı yeniden sorar
|
|
||||||
Bot mesajı seçilirse:
|
|
||||||
önceki user sorusunu bulur
|
|
||||||
bot cevabını “kopyalama bloğu” içeriğiyle iyileştirerek yeniden üretir
|
|
||||||
Regenerate mesajı özel renkle işaretlenir (regen)
|
|
||||||
Regenerate sırasında referans zinciri korunur (reference trees)
|
|
||||||
|
|
||||||
9. Copy (📋)
|
9. Context modu geçişi
|
||||||
Tek seçili balonda görünür
|
Her chat Direct mode ve RAG mode arasında geçiş yapabilir.
|
||||||
Mesaj içeriğinde copy ... copy bloğu varsa sadece içi kopyalanır
|
|
||||||
Yoksa tüm mesaj kopyalanır
|
|
||||||
|
|
||||||
10. Kod bloğu algılama
|
10. Chat başına RAG sistemi
|
||||||
İçerikte copy sınırları varsa “code-block” görünümü ile render eder
|
Kısa süreli hafıza, özet hafıza, basit retrieval ve kod farkındalıklı context desteği vardır.
|
||||||
Kod bloğunda “Kopyala” butonu vardır (overlay)
|
|
||||||
|
|
||||||
11. Görsel gönderme / önizleme
|
11. Reference tree desteği
|
||||||
Bir görsel “pending_image” olarak eklenebilir
|
Seçilen referanslar recursive olarak genişletilir, böylece context kaybı yaşanmaz.
|
||||||
Chat’e mesajla birlikte image path kaydedilir
|
|
||||||
Mesajlarda görsel varsa küçük preview gösterilir
|
|
||||||
Gönderim öncesi preview kutusu gösterilir, gönderince temizlenir
|
|
||||||
|
|
||||||
12. Typing indicator
|
12. Mesaj seçme modu
|
||||||
AI yanıtı beklerken “Düşünüyor…” animasyonu
|
Kullanıcı bir veya birden fazla mesaj seçebilir, temizleyebilir, kopyalayabilir, yeniden oluşturabilir veya referans olarak kullanabilir.
|
||||||
Yanıt gelince otomatik kaldırılır
|
|
||||||
|
|
||||||
13. Scroll davranışları
|
13. Regenerate (yeniden oluşturma)
|
||||||
Aşağı kaydırma butonu (↓) — kullanıcı yukarıdaysa görünür
|
Seçilen user veya bot mesajlarından yeniden üretim yapılır ve referans context korunur.
|
||||||
Tıklayınca en alta iner ve auto-scroll tekrar açılır
|
|
||||||
Scroll konumuna göre buton otomatik gizlenir/gösterilir
|
|
||||||
(Sende ayrıca “sadece regenerate’de aşağı kaydır” mantığını da ayarladık)
|
|
||||||
|
|
||||||
14. Input kısayolları
|
14. Kopyalanabilir kod blokları
|
||||||
Enter: gönder
|
Copy ile işaretlenen içerikler, kopyalama butonu olan kod blokları olarak gösterilir.
|
||||||
Shift+Enter: yeni satır
|
|
||||||
(Eklediğimiz) Ctrl+C / Ctrl+V / Ctrl+X / Ctrl+A kopyala–yapıştır–kes–tümünü seç
|
|
||||||
|
|
||||||
15. Mikrofon: Sesle yazma (Voice-to-text)
|
15. Görsel üretimi ve yönetimi
|
||||||
🎤 butonu ile kayıt başlat / ⏹ ile durdur
|
Görsel üretimi, önizleme, cache’lenmiş görseller ve image attachment desteği bulunur.
|
||||||
Linux’ta pw-record varsa onu kullanır, yoksa arecord
|
|
||||||
Durdurunca offline/online STT’ye göre transcribe edip input’a ekler
|
|
||||||
|
|
||||||
16. Offline STT (whisper.cpp)
|
16. Doküman desteği
|
||||||
whisper-cli + ggml-tiny.bin ile düşük CPU transkripsiyon
|
PDF, DOCX, XLSX, TXT ve MD dosyaları oluşturma ve çıktı alma desteklenir. Üretilen dosyalar indirilebilir olarak sunulur.
|
||||||
Çıktıyı .txt’den okur (veya stdout fallback)
|
|
||||||
|
|
||||||
17. Online STT (OpenRouter)
|
17. PDF işleme
|
||||||
is_mic_online: true ise OpenRouter üzerinden STT
|
PDF metin içeriyorsa text olarak gönderilir. Metin yoksa ilk sayfalar PNG’ye çevrilerek image_url olarak gönderilir.
|
||||||
Audio input input_audio ile base64 wav gönderme
|
|
||||||
Model stt_model_online ile seçilir
|
18. Doküman düzenleme davranışı
|
||||||
|
AI, izin verildiğinde dosyaları okuyabilir, analiz edebilir, özetleyebilir, yeniden yazabilir ve düzenlenmiş çıktı oluşturabilir.
|
||||||
|
|
||||||
|
19. Dosya oluşturma protokolü
|
||||||
|
DOCX, XLSX, PDF, TXT ve MD dosyaları AI çıktısından oluşturulabilir ve indirilebilir olarak sunulur.
|
||||||
|
|
||||||
|
20. XLSX desteği
|
||||||
|
Yeni tablolar oluşturabilir ve mevcut XLSX dosyaları filtreleyebilir.
|
||||||
|
|
||||||
|
21. Drag & drop dosya ekleme
|
||||||
|
Dosyalar ve görseller sürükle-bırak veya dosya seçici ile eklenebilir.
|
||||||
|
|
||||||
|
22. Düzenlenebilir dosya izni
|
||||||
|
Eklenen dosyalar editable olarak işaretlenebilir. AI sadece izin verildiğinde değişiklik yapar.
|
||||||
|
|
||||||
|
23. Voice-to-text girişi
|
||||||
|
Mikrofon ile kayıt ve online/local STT ile metne çevirme desteklenir.
|
||||||
|
|
||||||
|
24. Offline STT
|
||||||
|
whisper.cpp kullanarak yerel ses tanıma yapılır.
|
||||||
|
|
||||||
|
25. Online STT
|
||||||
|
OpenRouter üzerinden ses modeli kullanılarak WAV verisi input_audio olarak gönderilir.
|
||||||
|
|
||||||
|
26. Token kullanım gösterimi
|
||||||
|
Her mesaj için input, output ve toplam token kullanımı gösterilebilir.
|
||||||
|
|
||||||
|
27. Token maliyet hesaplama
|
||||||
|
Mesaj maliyeti, ayarlanabilir token fiyatına göre tahmin edilebilir.
|
||||||
|
|
||||||
|
28. Tema sistemi
|
||||||
|
Dark/light tema ve özelleştirilebilir UI renkleri desteklenir.
|
||||||
|
|
||||||
|
29. Dil sistemi
|
||||||
|
Türkçe ve İngilizce gibi dış dil dosyaları desteklenir ve cache’lenerek performans artırılır.
|
||||||
|
|
||||||
|
30. Prompt chooser
|
||||||
|
copyable, apply, PDF edit, file create, structured output ve code gibi prompt blokları açılıp kapatılabilir.
|
||||||
|
|
||||||
|
31. Terminal kontrolü
|
||||||
|
STT ve bazı UI özellikleri hariç terminal üzerinden kullanım desteklenir.
|
||||||
|
|
||||||
|
32. Linux uyumluluğu
|
||||||
|
Arch ve Debian/Ubuntu dahil Linux sistemler için tasarlanmıştır.
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
## 🔒 License
|
## 🔒 License
|
||||||
|
|||||||
Reference in New Issue
Block a user