Ana içeriğe geç

mintbot dosyaları nasıl işler

mintbot ajanınıza bir fotoğraf, belge, sesli mesaj, elektronik tablo, ekran görüntüsü veya PDF gönderdiğinizde — Telegram, web paneli ya da API üzerinden — dosya ajanınızın kendi VPS'inde saklanır, başka hiçbir yerde değil. Dosya istediğiniz sürece orada kalır ve LLM, kendisi için hazırlanmış bir çalışma kopyası alır.

Bu sessiz bir tasarım kararı ama sonuçları büyük. Açıklamaya değer, çünkü mintbot'un tüketicilere yönelik yapay zekâ sohbet uygulamalarından en çok ayrıldığı yerlerden biri burası.

Diyagram: yüklenen dosya, ajanınızın VPS’ine orijinal olarak kaydedilir; dosya türüne göre seçilen bir adaptör LLM için bir çalışma kopyası hazırlar
Orijinal, VPS’inizde olduğu gibi kalır — model yalnızca kendisi için hazırlanmış bir çalışma kopyasını görür.

Baştan sona akış

  1. Yükleme ajanın VPS'ine ulaşır. Web paneline sürüklenen bir PDF doğrudan VPS'inize gider. Telegram'dan gönderilen bir fotoğraf ya da dosya, mintbot botu tarafından Telegram'dan alınır ve hemen VPS'inize iletilir — yalnızca aktarılır, hiçbir zaman merkezi olarak saklanmaz. Ajanın yerel API'si, dosyanın gerçekte ne olduğunu anlamak için baştaki imza baytlarını (magic bytes) kontrol eder (telefonlar ve tarayıcılar dosyaları şaşırtıcı sıklıkta yanlış etiketler), SHA-256 özetini hesaplar ve dosyayı /var/lib/mintbot-agent/uploads/<shard>/<sha256>.<ext> konumuna yazar. Yerel bir kataloğa kaynak (telegram / panel / api), yükleyen kişinin kimliği, MIME türü ve orijinal dosya adıyla bir satır eklenir. Aynı dosyayı iki kez gönderseniz bile yalnızca bir kez saklanır.

    Sohbet bir projede yürüyorsa ajan, dosyanın bir kopyasını o projenin uploads/ klasörüne de koyar; böylece dosya üzerinde projenin geri kalanıyla yan yana çalışabilir.

  2. Orijinale dokunulmaz. Bu noktadan sonra mintbot içindeki hiçbir şey kayıtlı dosyayı değiştirmez. Dosyayı LLM için hazırlayan adaptörler yalnızca çalışma kopyaları üretir — küçültülmüş JPEG'ler, çözülmüş metin. Bayt bayt aynı olan orijinal, siz silene kadar diskte kalır. Merkezi bir depolama yok, saklama süresi sayacı yok, ajanlar arası sızıntı yok: her ajanın VPS'i yalnızca kendi sahibinin dosyalarını bilir.

  3. Model, kendisi için hazırlanmış bir sürüm alır. Ajan dosyayı LLM'e gösterirken küçük bir yönlendirici, MIME türüne ve uzantıya göre doğru adaptörü seçer:

    Adaptör Neyi işler Model ne alır
    Görsel JPG, PNG, WebP, GIF, HEIC (iPhone), AVIF, TIFF, BMP Uzun kenarı 1568 px olacak şekilde küçültülür, JPEG q85 olarak yeniden kodlanır ve doğrudan isteğe eklenir. Kod çözme, VPS'inize göre boyutlandırılmış bir bellek bütçesiyle ayrı ve kısa ömürlü bir süreçte çalışır; böylece devasa bir fotoğraf ajanı yavaşlatamaz
    PDF 32 MB'a kadar .pdf Doğrudan PDF olarak eklenir — Claude metni ve sayfa düzenini kendisi okur. Daha büyük bir PDF diskte kalır ve ajan metni kendisi çıkarır (ör. pdftotext ile)
    Metin .txt, .md, .csv, .json, .yaml, .svg, kaynak kod (.py, .js, .ts, .go, .rs, …), günlükler, diff dosyaları UTF-8 olarak çözülür (yedek olarak latin-1) ve 500 KB'a kadar eklenir; daha uzun bir dosya orada kesilir, tam orijinal diskte kalır
    Ses .mp3, .ogg, .opus, .m4a, .wav, .flac, .aac Telegram'dan ve paneldeki mikrofondan gelen sesli mesajlar zaten yazıya dökülmüş olarak gelir. Bir ses dosyası henüz otomatik olarak yazıya dökülmüyor — ajan dosyanın konumunu ve talimatları alır, siz istediğinizde onu yazıya döker
    Video .mp4, .mov, .webm, .mkv, .avi Henüz otomatik olarak işlenmiyor. İstediğinizde ajan ffmpeg kurar (önce ne kadar disk alanı kaplayacağını söyler) ve kareleri ya da ses kanalını kendisi çıkarır
    Office belgeleri .docx, .xlsx, .pptx, eski .doc / .xls / .ppt, .odt, .ods, .odp Henüz otomatik olarak işlenmiyor. İstediğinizde ajan küçük bir okuma kütüphanesi kurar ve metni çıkarır
    Bilinmeyen Diğer her şey Dosyanın adı, türü, boyutu ve diskteki yeriyle birlikte ilk baytlarının onaltılık gösterimini içeren bir not — modelin dosyayı tanıması ve görev gerektirdiğinde kendi araçlarıyla açması için yeterli

    Her çalışma kopyası orijinalin yanında <sha256>.cache/v<N>.json olarak önbelleğe alınır; böylece model o dosyaya ikinci kez ihtiyaç duyduğunda dosya anında yüklenir. Bir adaptör değiştiğinde önbellek kendiliğinden yeniden oluşturulur.

  4. Model bağlamında süresi dolan URL yok. Bir görsel ya da PDF LLM'e gönderildiğinde aynı isteğe eklenir — sonradan 404 verebilecek bir URL yok, süreli imzalı bağlantı yok. Modelin yalnızca bir işaretçiye ihtiyaç duyduğu yerlerde URL dahili bir adrestir: https://agent<id>.<domain>/<panel_token>/api/local/uploads/<upload_id>/raw — ajanınızın kendi panel belirteciyle korunur ve dosya diskte durduğu sürece geçerlidir.

Bu neden sıradan yapay zekâ sohbetlerinden daha iyi

ChatGPT'ye bir fotoğraf ya da Claude.ai'ye bir PDF yüklediğinizde dosya sağlayıcının depolama alanına gider, o sohbete bağlanır ve ne zaman kaybolacağına sağlayıcının saklama politikası karar verir. Belli bir süre sonra dosya gider, içinde bulunduğu sohbeti hâlâ görebiliyor olsanız bile. Bir sağlayıcıdan diğerine geçmek, sıfırdan başlamak demektir.

Telegram botlarında sık görülen bir tuzak farkı somutlaştırır. Telegram her fotoğraf için kalıcı bir file_id tutar, ancak bir botun bu fotoğraf için aldığı indirme bağlantısı yalnızca yaklaşık bir saat boyunca garantili olarak çalışır. Yalnızca bu bağlantıyı saklayan botlar dünkü fotoğraf için 404 döndürür. mintbot, bir dosya geldiği anda onu sizin ajanınızın arşivine kopyalar — eski bir fotoğrafa yanıt verirseniz de onu kalıcı file_id üzerinden yeniden indirir. O andan itibaren fotoğraf sizindir.

Bu tasarımdan üç sonuç çıkar:

  • Dosyalar LLM sağlayıcısına değil, size aittir. Önümüzdeki ay Claude'dan GPT'ye geçerseniz dosya geçmişiniz olduğu gibi sizinle gelir, çünkü bir sağlayıcının deposunda değil, sizin VPS'inizde durur.
  • Daha sonra yeniden sorabilirsiniz. “Üç ay önce benim için bir sözleşmeyi incelemiştin — onu bu yeni taslakla karşılaştırabilir misin?” işe yarar, çünkü orijinal hâlâ diskte. Sıradan sohbet uygulamalarında eski dosya genellikle çoktan gitmiştir.
  • Model her zaman en iyi kullanabileceği sürümü alır. Görsel modeller küçültülmüş JPEG'i, metin okuyucular UTF-8'i, PDF okuyucular doğrudan PDF'i alır. Telefonlar HEIC yükleyebilir ve sorunsuz çalışır — görsel kod çözücü Pillow'un HEIF eklentisini yükler, imza baytı kontrolü de yüklemeyi yanlışlıkla application/octet-stream olarak etiketleyen telefonları yakalar.

Dosyalarınızı nerede yönetirsiniz

Ajanın web panelinde Ayarlar → Dosya yöneticisi altında bir dosya yöneticisi bulunur. Ajanın tüm VPS'ine göz atmanızı sağlar; /var/lib/mintbot-agent/uploads/ konumundaki yükleme arşivi, sohbetlerinizin doldurduğu kısımdır. Buradan şunları yapabilirsiniz:

  • Klasörlere göz atmak; dosyaları indirmek, yeniden adlandırmak, taşımak veya silmek
  • Klasör oluşturmak
  • Yeni dosyaları sürükleyip bırakmak — parçalar hâlinde yüklenir, dosya başına 4 GB'a kadar
  • Küçük metin dosyalarını (1 MB'a kadar) doğrudan tarayıcıda düzenlemek

Boyut sınırları: sohbete eklediğiniz bir dosya en fazla 500 MB olabilir; Telegram, botların yalnızca 20 MB'a kadar dosya indirmesine izin verir; Dosya yöneticisi dosya başına 4 GB'a kadar kabul eder. Bunun ötesinde tek sınır diskinizdir — mintbot, sunucunun çalışmaya devam etmesi için her zaman biraz boş alan bırakır. Disk dolarsa ajan size bunu söyler ve yer açabilmeniz için doğrudan Dosya yöneticisi'ne bağlantı verir — ya da ajandan eski dosyaları silmesini isteyebilirsiniz.

Dosya yöneticisi'nde bir dosyayı sildiğinizde dosya diskten kaldırılır ve ajan onu artık LLM'e gösteremez. Orijinali “sizin” yapan budur: silme yetkisi yalnızca sizdedir.

Özetle

Çoğu yapay zekâ sohbet ürünü yüklediklerinizi kullanılıp atılacak sohbet bağlamı olarak görür. mintbot ise onları sizin verileriniz olarak ele alır — VPS'inizde saklanır, size aittir ve istendiğinde modelin o an ihtiyaç duyduğu biçime dönüştürülür. mintbot'un daha ilginç yeteneklerinin çoğu bu temel üzerine kuruludur.