[{"content":"","date":"10 Haziran 2026","externalUrl":null,"permalink":"/tags/bilgi-erisimi/","section":"Tags","summary":"","title":"Bilgi-Erisimi","type":"tags"},{"content":" Kütüphaneci \u0026amp; Yazılım Geliştirici # Bilgi erişimi, RAG sistemleri ve dijital arşivler üzerine çalışıyorum. TBMM Kütüphanesi\u0026rsquo;ndeki mesleki deneyimimi yazılım geliştirme ve yapay zeka çalışmalarıyla birleştirerek bilgiyi daha erişilebilir, aranabilir ve kullanılabilir hale getirmeye odaklanıyorum.\nHakkımda Projelerimi incele Uzmanlık Alanlarım # RAG ve üretken yapay zeka # Büyük dil modellerini güvenilir bilgi kaynaklarıyla buluşturan Retrieval-Augmented Generation sistemleri ve retrieval kalitesi üzerine çalışıyorum.\nBilgi erişimi # Arama motorları, doküman sıralama, anlamsal arama ve kullanıcıların doğru bilgiye hızlı ulaşmasını sağlayan çözümler geliştiriyorum.\nDijital arşivler # Arşiv belgelerinin dijitalleştirilmesi, üstveri yönetimi, OCR süreçleri ve kurumsal arşiv uygulamalarıyla ilgileniyorum.\nYazılım geliştirme # Kütüphane ve arşiv ihtiyaçlarına yönelik sürdürülebilir, araştırılabilir ve kullanışlı yazılım çözümleri üretiyorum.\nÖne Çıkan Projeler # Archivist # Belge yönetimi, PDF içerik görüntüleme ve tam metin arama özelliklerine sahip açık kaynak arşiv yönetim sistemi.\nProjeyi GitHub\u0026rsquo;da incele →\nTirnavali.Converter.BasicRumiToGregorian # Rumi takvim tarihlerini Miladi takvime dönüştürmek için geliştirilmiş hafif bir C# kütüphanesi.\nProjeyi GitHub\u0026rsquo;da incele →\nAcknowledge # Bilgi yönetimi ve kişisel üretkenlik süreçlerini destekleyen açık kaynak çalışma.\nProjeyi GitHub\u0026rsquo;da incele →\nTüm projeleri görüntüle →\nKariyer ve Eğitim # TBMM Kütüphanesi — Kütüphaneci ve Yazılım Geliştirici Ankara Üniversitesi — Yapay Zeka Çalışmaları Doktora Öğrencisi Hacettepe Üniversitesi — Bilgi ve Belge Yönetimi Yüksek Lisans Hacettepe Üniversitesi — Bilgi ve Belge Yönetimi Lisans Seçilmiş Yazılar # Bilgi erişimi, yapay zeka, dijital arşivler ve yazılım geliştirme üzerine notlarımı blog bölümünde paylaşıyorum.\nRAG Sistemlerinde Retrieval Kalitesini Artırma Yöntemleri TBMM Dijital Arşiv Projesi: Teknik Mimari Osmanlıca Rumi Takvimden Miladi Takvime Dönüşümün İncelikleri Blog yazılarının tümünü görüntüle →\nBirlikte Çalışalım # RAG, bilgi erişimi, dijital arşiv veya kütüphane teknolojileri üzerine bir fikriniz varsa iletişime geçebilirsiniz.\nİletişime geç →\n","date":"10 Haziran 2026","externalUrl":null,"permalink":"/","section":"Bilgi, yapay zeka ve yazılımın kesişiminde üretiyorum","summary":"Kütüphaneci \u0026 Yazılım Geliştirici # Bilgi erişimi, RAG sistemleri ve dijital arşivler üzerine çalışıyorum. TBMM Kütüphanesi’ndeki mesleki deneyimimi yazılım geliştirme ve yapay zeka çalışmalarıyla birleştirerek bilgiyi daha erişilebilir, aranabilir ve kullanılabilir hale getirmeye odaklanıyorum.\n","title":"Bilgi, yapay zeka ve yazılımın kesişiminde üretiyorum","type":"page"},{"content":"Bilgi erişimi, RAG sistemleri, dijital arşiv ve yazılım geliştirme konularında düşüncelerimi ve deneyimlerimi paylaştığım blog bölümü.\n","date":"10 Haziran 2026","externalUrl":null,"permalink":"/blog/","section":"Blog","summary":"Bilgi erişimi, RAG sistemleri, dijital arşiv ve yazılım geliştirme konularında düşüncelerimi ve deneyimlerimi paylaştığım blog bölümü.\n","title":"Blog","type":"blog"},{"content":"","date":"10 Haziran 2026","externalUrl":null,"permalink":"/categories/","section":"Categories","summary":"","title":"Categories","type":"categories"},{"content":"","date":"10 Haziran 2026","externalUrl":null,"permalink":"/tags/nlp/","section":"Tags","summary":"","title":"Nlp","type":"tags"},{"content":"","date":"10 Haziran 2026","externalUrl":null,"permalink":"/tags/rag/","section":"Tags","summary":"","title":"Rag","type":"tags"},{"content":"","date":"10 Haziran 2026","externalUrl":null,"permalink":"/series/rag-sistemleri/","section":"Series","summary":"","title":"RAG Sistemleri","type":"series"},{"content":" Giriş # Retrieval-Augmented Generation (RAG), büyük dil modellerinin (LLM) dış bilgi kaynaklarıyla desteklenerek daha doğru ve güncel yanıtlar üretmesini sağlayan bir mimaridir. Sistemin başarısı büyük ölçüde retrieval aşamasının kalitesine bağlıdır.\nRetrieval Kalitesini Etkileyen Faktörler # 1. Doküman Parçalama (Chunking) Stratejisi # Dokümanların anlamlı parçalara bölünmesi, retrieval kalitesini doğrudan etkiler:\nSabit boyutlu chunking: Basit ama anlam bütünlüğünü bozabilir Anlamsal chunking: Cümle/paragraf sınırlarına göre bölme Örtüşen chunking: Bağlam kaybını önlemek için chunk\u0026rsquo;lar arası bindirme # Anlamsal chunking örneği from langchain.text_splitter import RecursiveCharacterTextSplitter splitter = RecursiveCharacterTextSplitter( chunk_size=500, chunk_overlap=100, separators=[\u0026#34;\\n\\n\u0026#34;, \u0026#34;\\n\u0026#34;, \u0026#34;. \u0026#34;, \u0026#34; \u0026#34;, \u0026#34;\u0026#34;] ) 2. Embedding Model Seçimi # Embedding modelinin kalitesi, semantik aramanın başarısını belirler:\nModel Boyut Dil Desteği text-embedding-3-small 1536 Çok dilli text-embedding-3-large 3072 Çok dilli Cohere Embed v3 1024 Çok dilli BGE-M3 1024 Çok dilli 3. Hibrit Arama Yaklaşımı # Yalnızca vektör araması yerine, seyrek (sparse) ve yoğun (dense) retrieval yöntemlerini birleştiren hibrit yaklaşımlar daha iyi sonuç verir:\nBM25 — Anahtar kelime tabanlı seyrek arama Dense embeddings — Anlamsal benzerlik tabanlı arama Fusion yöntemleri — RRF (Reciprocal Rank Fusion), Convex Combination Sonuç # RAG sistemlerinde retrieval kalitesini artırmak için çok katmanlı bir yaklaşım gerekir. Doğru chunking stratejisi, uygun embedding modeli ve hibrit arama yöntemlerinin kombinasyonu en iyi sonuçları verir.\n","date":"10 Haziran 2026","externalUrl":null,"permalink":"/blog/rag-sistemlerinde-retrieval-kalitesi/","section":"Blog","summary":"Giriş # Retrieval-Augmented Generation (RAG), büyük dil modellerinin (LLM) dış bilgi kaynaklarıyla desteklenerek daha doğru ve güncel yanıtlar üretmesini sağlayan bir mimaridir. Sistemin başarısı büyük ölçüde retrieval aşamasının kalitesine bağlıdır.\n","title":"RAG Sistemlerinde Retrieval Kalitesini Artırma Yöntemleri","type":"blog"},{"content":"","date":"10 Haziran 2026","externalUrl":null,"permalink":"/series/","section":"Series","summary":"","title":"Series","type":"series"},{"content":"","date":"10 Haziran 2026","externalUrl":null,"permalink":"/tags/","section":"Tags","summary":"","title":"Tags","type":"tags"},{"content":"","date":"10 Haziran 2026","externalUrl":null,"permalink":"/tags/vektor-veritabani/","section":"Tags","summary":"","title":"Vektor-Veritabani","type":"tags"},{"content":"","date":"10 Haziran 2026","externalUrl":null,"permalink":"/categories/yapay-zeka/","section":"Categories","summary":"","title":"Yapay Zeka","type":"categories"},{"content":"","date":"1 Haziran 2026","externalUrl":null,"permalink":"/tags/csharp/","section":"Tags","summary":"","title":"Csharp","type":"tags"},{"content":"","date":"1 Haziran 2026","externalUrl":null,"permalink":"/tags/kutuphane/","section":"Tags","summary":"","title":"Kutuphane","type":"tags"},{"content":" Problem # Osmanlı arşiv belgelerinde tarihler genellikle Rumi (Mali) takvimle kaydedilmiştir. Bu tarihleri Miladi takvime dönüştürmek, tarihsel belge işleme sistemlerinde sık karşılaşılan bir ihtiyaçtır.\nRumi Takvim Nedir? # Rumi takvim, Osmanlı İmparatorluğu\u0026rsquo;nda 1839\u0026rsquo;dan itibaren mali işlerde kullanılmaya başlanan, Jülyen takvimi temelli bir takvimdir. Miladi takvimle arasında:\n13 günlük sabit fark (1900 öncesi: 12 gün) Ay isimleri farklılığı bulunur Çözüm: Tirnavali.Converter.BasicRumiToGregorian # Açık kaynak bir C# kütüphanesi olarak geliştirdiğim bu dönüştürücü:\nusing Tirnavali.Converter; // Rumi tarihi Miladi\u0026#39;ye çevir var rumiDate = new RumiDate(1341, RumiMonth.Mart, 15); DateTime gregorianDate = RumiToGregorian.Convert(rumiDate); // Sonuç: 15 Mart 1925 Karşılaşılan Zorluklar # 1. Artık Yıl Hesaplaması # Rumi ve Miladi takvimler farklı artık yıl kurallarına sahiptir. 1900 yılı artık yıl değilken Rumi\u0026rsquo;de özel durumlar vardır.\n2. Yıl Başlangıcı # Rumi yılbaşı 1 Mart\u0026rsquo;tır. Bu, Ocak ve Şubat aylarında yıl dönüşümünü etkiler.\n3. Tarihsel Doğrulama # Bazı Rumi tarihler tarihsel olarak geçersiz olabilir (örneğin takvim değişikliklerinin olduğu dönemler).\nKullanım Alanları # Arşiv belgesi dijitalleştirme Osmanlıca metin işleme Tarihsel veri analizi NuGet paketi → | GitHub →\n","date":"1 Haziran 2026","externalUrl":null,"permalink":"/blog/rumi-miladi-takvim-donusumu/","section":"Blog","summary":"Problem # Osmanlı arşiv belgelerinde tarihler genellikle Rumi (Mali) takvimle kaydedilmiştir. Bu tarihleri Miladi takvime dönüştürmek, tarihsel belge işleme sistemlerinde sık karşılaşılan bir ihtiyaçtır.\n","title":"Osmanlıca Rumi Takvimden Miladi Takvime Dönüşümün İncelikleri","type":"blog"},{"content":"","date":"1 Haziran 2026","externalUrl":null,"permalink":"/tags/osmanlica/","section":"Tags","summary":"","title":"Osmanlica","type":"tags"},{"content":"","date":"1 Haziran 2026","externalUrl":null,"permalink":"/tags/tarih/","section":"Tags","summary":"","title":"Tarih","type":"tags"},{"content":"","date":"1 Haziran 2026","externalUrl":null,"permalink":"/series/tirnavali.converter/","section":"Series","summary":"","title":"Tirnavali.Converter","type":"series"},{"content":"","date":"1 Haziran 2026","externalUrl":null,"permalink":"/categories/yaz%C4%B1l%C4%B1m/","section":"Categories","summary":"","title":"Yazılım","type":"categories"},{"content":"","date":"20 Mayıs 2026","externalUrl":null,"permalink":"/categories/ar%C5%9Fiv-y%C3%B6netimi/","section":"Categories","summary":"","title":"Arşiv Yönetimi","type":"categories"},{"content":"","date":"20 Mayıs 2026","externalUrl":null,"permalink":"/tags/dijital-arsiv/","section":"Tags","summary":"","title":"Dijital-Arsiv","type":"tags"},{"content":"","date":"20 Mayıs 2026","externalUrl":null,"permalink":"/tags/net-core/","section":"Tags","summary":"","title":"Net-Core","type":"tags"},{"content":"","date":"20 Mayıs 2026","externalUrl":null,"permalink":"/tags/solr/","section":"Tags","summary":"","title":"Solr","type":"tags"},{"content":"","date":"20 Mayıs 2026","externalUrl":null,"permalink":"/tags/tbmm/","section":"Tags","summary":"","title":"Tbmm","type":"tags"},{"content":" Proje Özeti # TBMM\u0026rsquo;nin parlamento tarihine ait milyonlarca belgenin dijitalleştirilmesi ve erişilebilir hale getirilmesi projesinde kullanılan teknik mimariyi paylaşıyorum.\nMimari Bileşenler # Backend # .NET Core — Ana uygulama çatısı PostgreSQL — İlişkisel veritabanı Apache Solr — Tam metin arama motoru RabbitMQ — Asenkron iş kuyruğu Dijitalleştirme Pipeline\u0026rsquo;ı # graph LR A[Tarama] --\u0026gt; B[OCR İşleme] B --\u0026gt; C[Üstveri Çıkarma] C --\u0026gt; D[Solr İndeksleme] D --\u0026gt; E[Kullanıcı Arayüzü] OCR Pipeline # Osmanlıca ve Türkçe belgeler için özel OCR iş akışı:\nTaranmış görüntü ön işleme (gürültü temizleme, eşikleme) Tesseract OCR motoruna özel dil modelleri entegrasyonu Çıktı kalite kontrolü ve manuel düzeltme arayüzü Arama Mimarisi # Solr üzerinde özelleştirilmiş şema:\nÇok dilli analiz: Türkçe ve Osmanlıca metin işleme zincirleri Facet\u0026rsquo;leme: Belge türü, tarih aralığı, dil Yazım düzeltme: Osmanlıca karakter varyasyonları için fuzzy matching Öğrenilen Dersler # Büyük ölçekli belge işlemede asenkron mimari şart Solr tuning, sorgu performansı için kritik OCR kalite kontrolü için insan-in-the-loop yaklaşımı gerekli Proje hakkında daha fazla bilgi için AA haberini okuyabilirsiniz.\n","date":"20 Mayıs 2026","externalUrl":null,"permalink":"/blog/tbmm-dijital-arsiv-teknik-mimari/","section":"Blog","summary":"Proje Özeti # TBMM’nin parlamento tarihine ait milyonlarca belgenin dijitalleştirilmesi ve erişilebilir hale getirilmesi projesinde kullanılan teknik mimariyi paylaşıyorum.\n","title":"TBMM Dijital Arşiv Projesi: Teknik Mimari","type":"blog"},{"content":"","externalUrl":null,"permalink":"/authors/","section":"Authors","summary":"","title":"Authors","type":"authors"},{"content":" Hakkımda # TBMM Kütüphanesi\u0026rsquo;nde kütüphaneci ve yazılım geliştirici olarak çalışıyorum. Kurumum için arşiv ve kütüphane uygulamaları geliştiriyorum.\nEğitim # Doktora — Ankara Üniversitesi, Yapay Zeka Çalışmaları (devam ediyor) Yüksek Lisans — Hacettepe Üniversitesi, Bilgi ve Belge Yönetimi Lisans — Hacettepe Üniversitesi, Bilgi ve Belge Yönetimi Uzmanlık Alanları # RAG (Retrieval-Augmented Generation) — Bilgi erişimi tabanlı üretken yapay zeka sistemleri Bilgi Erişimi — Arama motorları, doküman sıralama, anlamsal arama Dijital Arşiv — Arşiv yönetim sistemleri, dijitalleştirme, üstveri standartları Doğal Dil İşleme — Metin sınıflandırma, varlık tanıma, bilgi çıkarımı Teknik Yetenekler # Kategori Teknolojiler Diller Java, C#, Ruby, Python Web Ruby on Rails, Node.js, Express Veritabanı MongoDB, PostgreSQL, Solr Araçlar Git, Docker, Elasticsearch ","externalUrl":null,"permalink":"/about/","section":"Hakkımda","summary":"Hakkımda # TBMM Kütüphanesi’nde kütüphaneci ve yazılım geliştirici olarak çalışıyorum. Kurumum için arşiv ve kütüphane uygulamaları geliştiriyorum.\nEğitim # Doktora — Ankara Üniversitesi, Yapay Zeka Çalışmaları (devam ediyor) Yüksek Lisans — Hacettepe Üniversitesi, Bilgi ve Belge Yönetimi Lisans — Hacettepe Üniversitesi, Bilgi ve Belge Yönetimi Uzmanlık Alanları # RAG (Retrieval-Augmented Generation) — Bilgi erişimi tabanlı üretken yapay zeka sistemleri Bilgi Erişimi — Arama motorları, doküman sıralama, anlamsal arama Dijital Arşiv — Arşiv yönetim sistemleri, dijitalleştirme, üstveri standartları Doğal Dil İşleme — Metin sınıflandırma, varlık tanıma, bilgi çıkarımı Teknik Yetenekler # Kategori Teknolojiler Diller Java, C#, Ruby, Python Web Ruby on Rails, Node.js, Express Veritabanı MongoDB, PostgreSQL, Solr Araçlar Git, Docker, Elasticsearch ","title":"Hakkımda","type":"about"},{"content":" İletişim # Bana aşağıdaki kanallardan ulaşabilirsiniz:\nE-posta: sercantirnavali@live.com LinkedIn: linkedin.com/in/sercan-tirnavali GitHub: github.com/tirnavali Stack Overflow: stackoverflow.com/users/8763546 Flickr: flickr.com/photos/sercant Konum # Ankara, Türkiye\nİş birliği, danışmanlık veya RAG/bilgi erişimi projeleri için iletişime geçmekten çekinmeyin.\n","externalUrl":null,"permalink":"/contact/","section":"İletişim","summary":"İletişim # Bana aşağıdaki kanallardan ulaşabilirsiniz:\nE-posta: sercantirnavali@live.com LinkedIn: linkedin.com/in/sercan-tirnavali GitHub: github.com/tirnavali Stack Overflow: stackoverflow.com/users/8763546 Flickr: flickr.com/photos/sercant Konum # Ankara, Türkiye\n","title":"İletişim","type":"contact"},{"content":"Açık kaynak olarak geliştirdiğim ve katkıda bulunduğum projeler.\nArchivist # Ruby on Rails ile geliştirilmiş, kamu veya özel sektörde belge yönetimi için kullanılabilecek bir arşiv yönetim sistemi. PDF içerik görüntüleme desteği ve kısmi MOREQ uyumluluğu.\nTeknolojiler: Ruby, Ruby on Rails, PostgreSQL, Solr\nTirnavali.Converter.BasicRumiToGregorian # Rumi (Osmanlı Mali) takviminden Miladi takvime tarih dönüşümü yapan hafif bir C# kütüphanesi.\nTeknolojiler: C#, .NET\nAcknowledge # Kişisel medya arşiviniz. Yerel cihazda yüz tanıma ve görsel altyazılama özellikleri.\nTeknolojiler: Python, OpenCV, TensorFlow\nGitHub profilimdeki tüm projeleri görün →\n","externalUrl":null,"permalink":"/projects/","section":"Projeler","summary":"Açık kaynak olarak geliştirdiğim ve katkıda bulunduğum projeler.\nArchivist # Ruby on Rails ile geliştirilmiş, kamu veya özel sektörde belge yönetimi için kullanılabilecek bir arşiv yönetim sistemi. PDF içerik görüntüleme desteği ve kısmi MOREQ uyumluluğu.\n","title":"Projeler","type":"projects"},{"content":"Kütüphaneci \u0026amp; Yazılım Geliştirici. Bilgi erişimi, RAG ve dijital arşiv uzmanı.\n","externalUrl":null,"permalink":"/authors/tirnavali/","section":"Authors","summary":"Kütüphaneci \u0026 Yazılım Geliştirici. Bilgi erişimi, RAG ve dijital arşiv uzmanı.\n","title":"Sercan Tırnavalı","type":"authors"},{"content":"Aldığım profesyonel sertifikalar ve tamamladığım eğitim programları.\nYazılım Geliştirme # Oracle Certified Professional, Java SE — Oracle Java Backend Developer — UPOD / Dijital Gelecek Topluluğu, Ağustos 2024 (211 saat) Sertifikalarımın detaylı listesi ve doğrulama bağlantıları için LinkedIn profilimi ziyaret edebilirsiniz.\n","externalUrl":null,"permalink":"/certificates/","section":"Sertifikalar","summary":"Aldığım profesyonel sertifikalar ve tamamladığım eğitim programları.\nYazılım Geliştirme # Oracle Certified Professional, Java SE — Oracle Java Backend Developer — UPOD / Dijital Gelecek Topluluğu, Ağustos 2024 (211 saat) Sertifikalarımın detaylı listesi ve doğrulama bağlantıları için LinkedIn profilimi ziyaret edebilirsiniz.\n","title":"Sertifikalar","type":"certificates"}]