GitHub üzerinde geliştirdiğin Cortex Engine projesini yapay zeka (Gemini ChatBot) yardımı ile inceledim. Geliştirdiğin yapının vizyonu ve Rust tabanlı mimarisi ilgimi çekti. İlk başta, ben aslında, rasgele bir Repo okuma amacıyla buna bakıyordum ama sonra benim bir projem ile aynı alanda iş yaptığını fark ettim ve yapay zekaya "Bu bir rakip mi?" diye sorunca söyledi (ve ben de anladım) ki benim projeme rakip değil, aksine çok uyumlu bir proje. Kendi projem ise geleneksel dosya yönetim sistemlerinin (klasör mantığının) yapısal sorunlarını çözmek amacıyla Onto Directory adında bir proje. Bakınız: https://github.com/LineBreaker30113/OntoDirectory
Geleneksel Klasör Sisteminin Çöküşü ve Vizyonum
Mevcut dosya sistemleri zayıf bir tasarıma sahip çünkü her dosyanın tek bir yolu (single-path) olmak zorunda. Örneğin; fizik, edebiyat, epistemoloji ve makine öğrenmesi üzerine kitaplar, makaleler ve videolardan oluşan bir arşivi düşünelim. Bunları klasörlerle organize etmeye çalıştığınızda ya devasa bir kopyalama (duplicate) kabusu (ki bu yönetilmez bir hale gelebilir çok çabukça) yaşarsınız ya da dosyaları bulamazsınız. Veya hiyerarşinin çok derinlerinde, birbirinden tamamen bağımsız klasörlerdeki birkaç dosyayı belirli bir proje için birbirine bağlamak istediğinizde bunu yapmanın zarif bir yolu yoktur.
Benim geliştirdiğim sistemde bu sorunun çözümü için vizyonum:. Dosyaları salt birer "varlık" olarak kabul edersek, onları organize etmek için "Ontoloji" (varlık felsefesi) ve Küme Teorisi (matematik alanı) buluşlarını kullanarak en iyi hale getirebiliriz. Örneğin, derinlerdeki dosyalar aynı proje ini bir araya gelmesi gerekirse, kök dizinde "byProject" (projeye göre) adında yeni bir sınıf oluşturup, altına projenizin adını taşıyan bir alt sınıf eklidikten sonra dosyaları anında o sınıfa dahil edebilirsiniz. Bir dosya aynı anda sınırsız sayıda sınıfa ait olabilir. Çünkü benim geliştirdiğim bu ontolgy Engine işlemler için kopya oluşturmuyor, sadece birkaç listeye birer pointer ekliyor, bu da onu inanılmaz hızlı yapıyor. Kopya oluşturmadığı için, gğvenlik amacıyla içindeki dosyalara erişim izni yok, okumak istendiği zaman geçici kopyalar oluşturuluyor. Tabi böyle şeyler gerekirse configure edilebilir.
Soyutlanmış Ontoloji Motoru (Ontology Engine)
Geliştirdiğim "Ontology Engine" özünde çoklu ebeveynliğe (multiple parents) izin veren bir sınıf hiyerarşisidir. Bu motor, sınıflandırdığı elementlerden tamamen soyutlanmış bir yapıya sahiptir. Motor sadece bir sınıf hiyerarşisidir, istediğin herhangi bir indeksleyici (indexer) oluşturup kullanabilirsin. Indexer ile kastedilen bir integer listesi listesi, kısaca her integer listesi "A" tarafındaki bir elemanı, o listedeki "integer"lar ise "B" tarafındaki eşleşmelerinin "Identity" numaralarını temsil ediyor, istersen (hız amacıyla düşük bir hafıza maliyetiyle) iki yön için de "indexer" oluşturabilirsin. "A" tarafı (sınıflar) ve "B" tarafı (dosyalar) olarak düşünebileceğimiz, her iki tarafın da değiştirilebilir (interchangeable) olduğu tam sayı dizileri (array of integer arrays) üzerinden, kimlik numarası olan herhangi bir element grubunu Küme Teorisi'nin gücüyle sınıflandırabilir.
Hibrit Mimari ve İş Birliği Teklifi
Kafamdaki mimaride, bu sistemin zirve performansta çalışabilmesi için Ontology Engine'in Rust ile yeniden yazılması gerekiyor. Ancak uygulamanın arayüzü (GUI), darboğaz yaratmayacağı ve Java bu alanda çok başarılı olduğu için Java ile geliştirilmeye devam edebilir. Bunun sizin ilginizi çekebileceğini düşündüm ve bilginize sunmak istedim.
Eğer Cortex ile ulaşmak istediğin hedefler ve planların bu anlattığım mimariyle uyuşuyorsa, güçlerimizi birleştirebiliriz. Ben bu motorun teorik altyapısını ve en optimize çalışma mantığını tasarlamaya devam edebilirim, sen bu motoru Rust ile (sağlam bir CLI veya API aracılığıyla) kodlayabilirsin ve ben de bu sisteme oldukça yetkin, kullanıcı dostu bir Java GUI entegre edebilirim.
Bir detay belirtmek istiyorum, biz bu uygulamayı tamamen açık kaynak kodlu ve ücretsiz yapalım, daha öğrenci olduğumuz için ücret talep edecek durumda olmamız ayrı, insanlığa faydalı olmak amacıyla uğraşmak bize iyi geri döner diye düşünüyorum.
Cortex'in geleceğiyle ilgili planların ve bu fikirler hakkındaki düşüncelerin nelerdir? Vizyonlarımız örtüşüyorsa, harika bir sistem ortaya çıkarabiliriz.
Bana buradan yanıt yazabilirsiniz. Cevabınızı bekliyorum.
Saygılarımla, Abdülahlim ESEN. KTÜ YZvVM bölümü ilk öğrencisi, epistemolog.
GitHub üzerinde geliştirdiğin Cortex Engine projesini yapay zeka (Gemini ChatBot) yardımı ile inceledim. Geliştirdiğin yapının vizyonu ve Rust tabanlı mimarisi ilgimi çekti. İlk başta, ben aslında, rasgele bir Repo okuma amacıyla buna bakıyordum ama sonra benim bir projem ile aynı alanda iş yaptığını fark ettim ve yapay zekaya "Bu bir rakip mi?" diye sorunca söyledi (ve ben de anladım) ki benim projeme rakip değil, aksine çok uyumlu bir proje. Kendi projem ise geleneksel dosya yönetim sistemlerinin (klasör mantığının) yapısal sorunlarını çözmek amacıyla Onto Directory adında bir proje. Bakınız: https://github.com/LineBreaker30113/OntoDirectory
Geleneksel Klasör Sisteminin Çöküşü ve Vizyonum
Mevcut dosya sistemleri zayıf bir tasarıma sahip çünkü her dosyanın tek bir yolu (single-path) olmak zorunda. Örneğin; fizik, edebiyat, epistemoloji ve makine öğrenmesi üzerine kitaplar, makaleler ve videolardan oluşan bir arşivi düşünelim. Bunları klasörlerle organize etmeye çalıştığınızda ya devasa bir kopyalama (duplicate) kabusu (ki bu yönetilmez bir hale gelebilir çok çabukça) yaşarsınız ya da dosyaları bulamazsınız. Veya hiyerarşinin çok derinlerinde, birbirinden tamamen bağımsız klasörlerdeki birkaç dosyayı belirli bir proje için birbirine bağlamak istediğinizde bunu yapmanın zarif bir yolu yoktur.
Benim geliştirdiğim sistemde bu sorunun çözümü için vizyonum:. Dosyaları salt birer "varlık" olarak kabul edersek, onları organize etmek için "Ontoloji" (varlık felsefesi) ve Küme Teorisi (matematik alanı) buluşlarını kullanarak en iyi hale getirebiliriz. Örneğin, derinlerdeki dosyalar aynı proje ini bir araya gelmesi gerekirse, kök dizinde "byProject" (projeye göre) adında yeni bir sınıf oluşturup, altına projenizin adını taşıyan bir alt sınıf eklidikten sonra dosyaları anında o sınıfa dahil edebilirsiniz. Bir dosya aynı anda sınırsız sayıda sınıfa ait olabilir. Çünkü benim geliştirdiğim bu ontolgy Engine işlemler için kopya oluşturmuyor, sadece birkaç listeye birer pointer ekliyor, bu da onu inanılmaz hızlı yapıyor. Kopya oluşturmadığı için, gğvenlik amacıyla içindeki dosyalara erişim izni yok, okumak istendiği zaman geçici kopyalar oluşturuluyor. Tabi böyle şeyler gerekirse configure edilebilir.
Soyutlanmış Ontoloji Motoru (Ontology Engine)
Geliştirdiğim "Ontology Engine" özünde çoklu ebeveynliğe (multiple parents) izin veren bir sınıf hiyerarşisidir. Bu motor, sınıflandırdığı elementlerden tamamen soyutlanmış bir yapıya sahiptir. Motor sadece bir sınıf hiyerarşisidir, istediğin herhangi bir indeksleyici (indexer) oluşturup kullanabilirsin. Indexer ile kastedilen bir integer listesi listesi, kısaca her integer listesi "A" tarafındaki bir elemanı, o listedeki "integer"lar ise "B" tarafındaki eşleşmelerinin "Identity" numaralarını temsil ediyor, istersen (hız amacıyla düşük bir hafıza maliyetiyle) iki yön için de "indexer" oluşturabilirsin. "A" tarafı (sınıflar) ve "B" tarafı (dosyalar) olarak düşünebileceğimiz, her iki tarafın da değiştirilebilir (interchangeable) olduğu tam sayı dizileri (array of integer arrays) üzerinden, kimlik numarası olan herhangi bir element grubunu Küme Teorisi'nin gücüyle sınıflandırabilir.
Hibrit Mimari ve İş Birliği Teklifi
Kafamdaki mimaride, bu sistemin zirve performansta çalışabilmesi için Ontology Engine'in Rust ile yeniden yazılması gerekiyor. Ancak uygulamanın arayüzü (GUI), darboğaz yaratmayacağı ve Java bu alanda çok başarılı olduğu için Java ile geliştirilmeye devam edebilir. Bunun sizin ilginizi çekebileceğini düşündüm ve bilginize sunmak istedim.
Eğer Cortex ile ulaşmak istediğin hedefler ve planların bu anlattığım mimariyle uyuşuyorsa, güçlerimizi birleştirebiliriz. Ben bu motorun teorik altyapısını ve en optimize çalışma mantığını tasarlamaya devam edebilirim, sen bu motoru Rust ile (sağlam bir CLI veya API aracılığıyla) kodlayabilirsin ve ben de bu sisteme oldukça yetkin, kullanıcı dostu bir Java GUI entegre edebilirim.
Bir detay belirtmek istiyorum, biz bu uygulamayı tamamen açık kaynak kodlu ve ücretsiz yapalım, daha öğrenci olduğumuz için ücret talep edecek durumda olmamız ayrı, insanlığa faydalı olmak amacıyla uğraşmak bize iyi geri döner diye düşünüyorum.
Cortex'in geleceğiyle ilgili planların ve bu fikirler hakkındaki düşüncelerin nelerdir? Vizyonlarımız örtüşüyorsa, harika bir sistem ortaya çıkarabiliriz.
Bana buradan yanıt yazabilirsiniz. Cevabınızı bekliyorum.
Saygılarımla, Abdülahlim ESEN. KTÜ YZvVM bölümü ilk öğrencisi, epistemolog.