Pāriet uz saturu

Kā mintbot apstrādā failus

Kad nosūti savam mintbot aģentam fotogrāfiju, dokumentu, balss ziņojumu, izklājlapu, ekrānuzņēmumu vai PDF — caur Telegram, tīmekļa paneli vai API — fails neiet caur mintbot centrālo infrastruktūru ceļā uz valodas modeli. Tas nokļūst tieši tava paša aģenta VPS, paliek tur tik ilgi, cik tu vēlies, un LLM saņem pārveidotu kopiju, kas optimizēta tieši tam.

Tas ir kluss dizaina lēmums ar skaļām sekām. Vērts to izklāstīt, jo šī ir viena no vietām, kur mintbot vislielāko mērā atšķiras no patērētāju LLM čata.

Plūsma no sākuma līdz beigām

  1. Augšupielāde nonāk aģenta VPS. Fotogrāfija no Telegram, PDF iemests tīmekļa panelī, balss memo, ekrānuzņēmums ielīmēts čatā. Aģenta lokālā API pieņem baitus, saož faila maģisko galvenu, lai saprastu, kāds fails tas patiesībā ir (telefoni un pārlūki marķē failus pārsteidzoši bieži nepareizi), aprēķina SHA-256 hash un ieraksta failu tava paša aģenta VPS katalogā /var/lib/mintbot-agent/uploads/<shard>/<sha256>.<ext>. Lokālā katalogā parādās rinda ar avotu (telegram / panel / api), augšupielādētāja ID, MIME tipu un sākotnējo failvārdu.

  2. Oriģināls ir svēts. No šī brīža neviens mintbot iekšienē saglabāto failu vairs nemaina. Adapteri, kas to sagatavo LLM, izlaiž tikai darba kopijas — pārmērogotus JPEG, pārkodētu tekstu, izvilktus sīktēlus. Baits pa baitam oriģināls paliek diskā, līdz tu to izdzēs caur aģenta failu pārvaldnieku. Nav centrālas glabātuves, nav glabāšanas taimera, nav noplūdes starp aģentiem: katra aģenta VPS zina tikai sava īpašnieka augšupielādes.

  3. Modelis saņem LLM-optimizētu versiju. Kad aģents nolemj failu parādīt LLM, mazs dispetčers pēc MIME tipa un paplašinājuma izvēlas pareizo adapteri, un adapteris izlaiž satura blokus, ko modelis spēj nolasīt:

    Adapteris Apstrādā Izvade
    Image JPG, PNG, WebP, GIF, HEIC (iPhone), AVIF un visu citu, ko Pillow spēj atvērt Pārmērogots līdz 1568 px garākajā malā, pārkodēts uz JPEG q85, base64-inline modeļa kontekstā
    PDF .pdf līdz 32 MB Base64-inline kā natīvs PDF (Anthropic modeļi to lasa tieši)
    Text .md, .csv, .json, .yaml, pirmkods (.py, .js, .ts, .go, .rs, …), žurnāli, diffi UTF-8 dekodēts (latin-1 kā rezerve), inline kā teksts līdz izmēra robežai
    Audio .mp3, .ogg, .opus, .m4a, .wav, .flac Telegram balss ziņojumus bots jau transkribē inline; tiešās augšupielādes pagaidām saņem vietturi, ar Whisper STT nākamajā vilnī
    Video .mp4, .mov, .webm, .mkv Pagaidām viettura; ffmpeg keyframe + audio transkripcijas izvilkšana ienāks nākamajā vilnī
    Office docs .docx, .xlsx, .pptx, .odt, .ods, .odp Pagaidām viettura; natīvā teksta izvilkšana (python-docx / openpyxl / python-pptx) ienāks nākamajā vilnī
    Unknown Jebkas cits Teksta viettura: „lietotājs pievienoja <mime> failu, tas saglabāts diskā ar augšupielādes ID <id>" — lai modelis vismaz var spriest par to, kas tika nosūtīts

    Katra transformācija tiek kešota līdzās oriģinālam kā <sha256>.cache/v<N>.json, lai otro reizi, kad modelim nepieciešams tas pats fails, ielāde notiek acumirklī. Adaptera versijas paaugstināšana automātiski atceļ kešu.

  4. Modeļa kontekstā nenokļūst URL, kas izbeidzas. Kad attēls vai PDF nonāk pie LLM, tas tiek inline iesūtīts base64 formātā vienā un tajā pašā gājienā — nav URL, kas vēlāk varētu kļūt par 404, nav parakstītas saites ar taimeri. Lielākiem failiem, kur modelim vajadzīga tikai norāde, URL ir iekšējs https://agent<id>.<domain>/<panel_token>/api/local/uploads/<upload_id>/raw — to aizsargā tava paša aģenta panel token, un tas darbojas tik ilgi, kamēr fails ir diskā.

Kāpēc tas ir labāks par patērētāju LLM čatu

Kad augšupielādē fotogrāfiju ChatGPT vai PDF Claude.ai, fails nonāk pakalpojuma sniedzēja glabātuvē, piesaistīts šai sarunai, un sniedzēja glabāšanas politika nosaka, kad tas pazūd. Pēc kāda laika fails ir prom, pat ja vēl redzi sarunu, kurā tas dzīvoja. Maiņa no viena sniedzēja uz citu nozīmē sākt no nulles.

Viens izplatīts Telegram-bota slazds spilgti parāda kontrastu. Telegram pats katrai fotogrāfijai uztur mūžīgi derīgu file_id, bet trešo pušu boti, kas pieprasa failu pēc Telegram file_id, saņem pagaidu URL, kas izbeidzas pēc 24 stundām. Vecāki boti, kas atsaucas uz vakardienas fotogrāfiju, atbild ar 404. mintbot to atrisina vienreiz uz visiem laikiem: pirmajā reizē, kad tas redz Telegram failu, tas baitus pārlejupielādē caur mūžīgi derīgo file_id un iekopē tava aģenta arhīvā. No tā brīža fotogrāfija ir tava.

No šī dizaina izriet trīs lietas:

  • Faili pieder tev, ne LLM pakalpojuma sniedzējam. Nākamajā mēnesī apmaini Claude pret GPT-5, un tava failu vēsture iet līdzi neskarta, jo tā atrodas tavā VPS — nevis pakalpojuma sniedzēja glabātuvē.
  • Var atgriezties ar jautājumu vēlāk. „Pirms trim mēnešiem tu man analizēji līgumu — vari to salīdzināt ar šo jauno melnrakstu?" darbojas, jo oriģināls vēl ir diskā. Patērētāju čatā vecākais fails parasti jau ir pazudis.
  • Modelis vienmēr saņem versiju, ko spēj izmantot vislabāk. Vision modeļi saņem pārmērogotu JPEG, teksta lasītāji saņem UTF-8, PDF lasītāji saņem natīvu PDF. Telefoni var augšupielādēt HEIC, un tas vienkārši strādā — Pillow HEIF spraudnis tiek ielādēts startā, un maģisko baitu sniffer izķer telefonus, kas augšupielādi marķē kā application/octet-stream.

Kur pārvaldīt savus failus

Aģenta tīmekļa paneļa augšējā joslā ir failu pārvaldnieks. Tas pārlūko visu aģenta VPS, un augšupielāžu arhīvs katalogā /var/lib/mintbot-agent/uploads/ ir tā daļa, ko aizpilda tavas sarunas. No turienes vari:

  • Pārsaukt, izdzēst vai pārvietot augšupielādētos failus
  • Pārlūkot tos pēc datuma, avota vai failvārda
  • Iemest jaunas augšupielādes ar pārvilkšanu (chunked, atbalsta vairāku gigabaitu failus)
  • Mazus teksta failus rediģēt inline

Faila dzēšana no paneļa noņem gan pašu failu, gan kataloga rindu. Aģents vairs nespēs to parādīt LLM. Tieši tas padara oriģinālu par „tavu": dzēšanas tiesības ir tikai tev.

Apakšrinda

Lielākā daļa LLM čata produktu izturas pret tavām augšupielādēm kā pret īslaicīgu sarunas kontekstu. mintbot izturas pret tām kā pret taviem datiem — saglabātiem tavā VPS, tavā īpašumā, pēc pieprasījuma pārveidotiem tieši tādā formā, ko modelis šajā gājienā spēj izmantot vislabāk. Liela daļa mintbot interesantāko spēju balstās tieši uz šī pamata.