Prije nego što firma doda model u podršku, pretragu ili pisanje nacrta, privatni modeli odlučuju koji tekst kupca smije izaći, a koji ostaje na hardveru koji vi pokrećete. Hostovani API odgovara javnom marketingu i pomoći oko koda bez podataka o kupcu. Pogrešan je za ugovor, medicinsku bilješku ili platni zapis. Koraci instalacije su u vodiču o lokalnom hostingu AI modela.

Uobičajena greška je jedan API ključ za svaki zadatak. Javni tiket, stranica koju ćete objaviti, pretraga sa emailom kupca i nalijepljen ugovor dijele jedan endpoint. Niko tada ne može reći šta je izašlo iz firme. Zato privatni modeli šalju osjetljive pozive na mašinu koju kontrolišete, sa logovima koje možete otvoriti.

CodeWiz je studio za razvoj softvera, osnovan 2023. godine, a osnovao ga je Dragan Plavšić u Banjoj Luci. Gradimo formu, pretragu, uklanjanje identifikatora i putanju. Sajtovi i API-ji stoje na Hetzneru, sa Cloudflareom ispred javnih stranica. Kažemo koja mašina obrađuje svaki poziv, a privatni modeli stoje na toj putanji samo tamo gdje pravilo kaže da tekst mora ostati.

Zaključana kamena vrata, a privatni modeli ostaju iza njih

Tri mjesta na koja prompt može otići

Prompt ide na jedno od tri mjesta: preglednik, vaš server ili mašine dobavljača. Preglednik je laka greška. Stranica sa ključem u frontendu šalje tekst sa laptopa. Vaš server to nikad ne vidi, pa ne možete ukloniti identifikatore niti voditi log. Ugovor nalijepljen u chat u pregledniku već je izašao.

Vaš server je mjesto na kojem se odluka još može donijeti. Aplikacija prima tekst na mašini koju kontrolišete, često na Hetzner serveru. Cloudflare može stajati ispred javnog sajta. Ne smije keširati prompt, i ne pokreće model. Server uklanja identifikatore, pretražuje vašu bazu i bira putanju.

Hostovani API obrađuje preostali tekst u data centru dobavljača. Model na mašini koju administrirate to ne radi. Dobavljač može pročitati sve što pošaljete. Isključenje iz treniranja ne vraća obradu na vaš hardver. Ako tekst ne smije izaći iz firme, ne šaljite ga.

Šta dobavljač obično upisuje u log

Hostovani poziv je HTTP zahtjev prema tuđem API-ju. Tijelo drži uputstva, tekst korisnika, priložene odlomke i podešavanja. Dobavljač vidi nalog, vrijeme, model i izvornu adresu: mrežu zaposlenog, ili vaš server.

Većina dobavljača vodi log radi provjere zloupotrebe. Čuvanje i isključenje iz treniranja razlikuju se po planu, pa pročitajte uslove naloga koji plaćate. Tokom poziva prompt se obrađuje na njihovim mašinama. Log može postojati i kad je treniranje isključeno, a vi ga ne vodite. Ne zovemo ovo certifikatom. Bilježimo gdje se zahtjev obrađuje i šta vaša aplikacija čuva.

Vaš log je kopija koju kontrolišete. Čuvajte zadatak, putanju, korisnika, vrijeme i id zahtjeva. Ne čuvajte sirovi prompt za ugovor, dokument kupca, medicinsku bilješku ili plaćanje. Debug ispis u tuđi alat za praćenje još je jedan izlaz.

Uklanjanje identifikatora prije poziva

Uklanjanje radi na vašem serveru, prije hostovanog poziva, a ne kao rečenica u sistemskom promptu. Emailovi, brojevi telefona, id naloga i dugi nizovi cifara postaju zamjene. Model i dalje može reći “kupac”. Prave vrijednosti ostaju u vašoj bazi, u mapi koja nikad ne izlazi uz zahtjev.

Koristite ga za klasifikaciju i za kratke nacrte teksta koji je skoro javan. Ne čini ugovor sigurnim. Klauzule, cijene i imena strana osjetljivi su dio, ne samo email na vrhu. Broj kartice napisan riječima neće pogoditi pravilo za cifre.

  • Jedna serverska funkcija, da svaka funkcija koristi iste šablone.
  • Mapu zamjena držite u vašoj bazi, sa kratkim vijekom.
  • Zabilježite da je uklanjanje odradjeno i koliko je zamjena napravilo, ne vrijednosti.
  • Ako je tekst platni podatak ili medicinska bilješka, odbijte hostovani poziv.
Otvoreni hard disk sa srebrnim tanjirom na tamnom stolu

Pretraga koja ostaje u vašoj bazi

Pretraga podrške i nacrti iz vaših dokumenata idu preko RAG-a. Model nije zapamtio poslovanje. RAG radi u bazi koju hostujete, gdje odlomci, embeddings i dozvole ostaju. U prompt ulaze samo izabrani odlomci. Ne šaljite indeks, i ne šaljite cijeli ugovor zato što je prozor velik.

Hostovani model prima ono što priložite, pa klauzula ugovora izlazi iako ostatak dokumenta ostaje na disku. Model koji pokrećete može pročitati iste odlomke bez tog skoka. Dijeljenje, pretraga i dozvole pripadaju našem radu na AI/ML integraciji. Filter radi u vašoj bazi prije nego što bilo koji model vidi red.

Koji zadaci ostaju kod vas: privatni modeli

Jedna tabela pokriva zadatke o kojima ljudi pitaju. Tri odgovora su namjerna: hostovani model je u redu, posao ostaje tamo gdje privatni modeli rade, ili se tekst uopšte ne šalje modelu. “Držite na privatnom modelu” znači da težine rade na hardveru koji administrirate, a ne hostovani model sa prekidačem privatnosti.

ZadatakOdluka
Klasifikacija javne stranice, ili tiketa sa uklonjenim imenima i brojevima nalogaHostovani model je u redu
Marketinški nacrt koji će biti objavljen, bez činjenica o kupcu u zadatkuHostovani model je u redu
Opšta pomoć oko koda, bez privatnog repozitorija, tajni ili uzorka kupcaHostovani model je u redu
Pretraga podrške kojoj treba email, broj narudžbe ili nalogDržite na privatnom modelu
Nacrt koji citira poruku kupca ili dokument kupcaDržite na privatnom modelu
Ugovor, opis posla ili ponuda kupcuDržite na privatnom modelu
Medicinska bilješka, dijagnoza ili kliničko pismoNe šaljite modelu
Broj kartice, puni platni podatak ili bankarska tajnaNe šaljite modelu

Hostovana klasifikacija traži da identifikatori nestanu. Javni nacrt smije izaći. Nacrt koji citira kupca ostaje, kao i pretraga podrške. Ti srednji redovi su razlog zbog kojeg privatni modeli ulaze u dizajn. Čovjek i dalje čita odgovor o ugovoru. Medicinski tekst i brojevi kartica ne idu nijednom modelu. Pošaljite status, na primjer “plaćanje evidentirano”.

Kvalitet manjeg modela: privatni modeli i kompromis

Manji open-weight model nije najveći hostovani model. Na dugom ugovoru ili poređenju nekoliko dokumenata više promaši. Timovi koji očekuju istu prozu od modela od 7 do 14 milijardi parametara nalijepe dokument u hostovani chat. Taj zaobilazni put briše razlog zbog kojeg su privatni modeli uvedeni.

Kratki zadaci su realni kad pretraga već nađe odgovor: oznaka tiketa, datum, nacrt po šablonu. Testirajte ih na svojim primjerima. Težine dolaze sa Ollama i Hugging Face Hub. Serviranje je vodič za hosting. Javni posao može koristiti hostovani model. Osjetljiv posao koristi manji lokalni model. Medicinski i platni tekst ne koriste nijedan.

Kad je hostovani model pravi poziv

Hostovani model koristite za tekst koji je javan, ili koji nikad nije držao podatke o kupcu: marketing koji ćete objaviti, naslov, opis iz kataloga, pitanje o javnoj biblioteci. Dobavljač obrađuje prompt. To je u redu kad biste te riječi ionako objavili.

Pomoć oko koda spada ovdje samo ako u promptu nema privatnog repozitorija, fajla okruženja, izvoza kupca ili internog imena hosta. Odbijte šablone tajni na serveru. Javna poruka o grešci je u redu. Citat kupca nije. Za javni pasus vam privatni modeli ne trebaju, ali treba vam kapija za trenutak kad prestane biti javan.

Ugovori i dokumenti kupaca

Ugovori, ponude i izvozi kupaca ne treba da se obrađuju na mašinama dobavljača. Cijene, datumi i klauzule jesu sadržaj, a kratak sažetak ih može otkriti. Taj posao držite tamo gdje privatni modeli rade, na serveru koji kontrolišete, i pokažite izlaz čovjeku prije slanja.

Transkript ili žalba koja imenuje kupca nisu javni tiket. Vaša baza nalazi redove, a privatni modeli odgovaraju iz tih redova. Hostovani API nije na toj putanji. Klinička bilješka ne pripada logu promptova. Broj kartice ne pripada nijednom promptu. Odbijte poziv.

Mesingani katanac i lanac na zelenoj metalnoj ogradi

Pisano pravilo koje tim može slijediti

Slajd koji kaže “pazite na podatke kupaca” neće preživjeti deploy u petak. Napišite pravilo koje aplikacija sprovodi i koje tim može pročitati. Krenite od spiska ispod i imenujte svoje zadatke. U tom pravilu privatni modeli su odredište, a ne slogan.

  1. Imenujte zadatak: klasifikacija, nacrt, pretraga podrške, ugovor, ili onaj koji dodate kasnije.
  2. Javan tekst, ili opšti tekst bez polja o kupcu, smije na hostovani model. Zabilježite putanju.
  3. Tekst koji imenuje kupca, narudžbu, stranu ugovora ili zaposlenog ide samo na hardver koji kontrolišete.
  4. Medicinski tekst, platni podatak, lozinka ili ključ ne ide modelu. Vratite jasno odbijanje.
  5. Zabilježite putanju (hostovana, privatna ili odbijena), zadatak, korisnika i vrijeme. Ne zapisujte zabranjeni tekst.
  6. Nova funkcija je novi zadatak. Dodajte red prije nego što izađe.

Korak 3 je mjesto na kojem su privatni modeli obavezni. Korak 4 je mjesto na kojem su i oni van opsega. Log živi na serveru koji pokrećete. Pokazuje kuda je zahtjev otišao, bez druge kopije broja kartice ili kliničke bilješke.

Kako radimo

Odluka dolazi prije instalacije. Već objavljujemo kako se model hostuje. Ovdje je posao pravilo i putanje, tako da privatni modeli budu putanja za zadatke kojima trebaju, a hostovani poziv ostane za ostale.

  1. Popišite zadatke i polja koja svaki čita: imena, emailove, narudžbe, dokumente, ugovore, medicinski tekst, platni tekst.
  2. Napišite pravilo sa nama. Svaki zadatak dobija jedan od tri ishoda prije nego što se izda ključ.
  3. Nacrtajte putanju. Preglednik razgovara samo sa vašim serverom, koji zove hostovani API ili model koji pokrećete. Prompt se ne kešira.
  4. Sagradite kapiju za uklanjanje, pretragu i odbijanje, i testirajte je na sintetičkim primjerima.
  5. Uporedite odgovore na zadacima gdje su obje putanje dozvoljene, prije pokretanja.
  6. Predajte log, pisano pravilo i način da kasnije promijenite zadatak.

Zašto CodeWiz

  • Pravilo i sistem zajedno. Forma, API, baza i putanja modela, tako da pravilo bude kod, a ne PDF.
  • Lokalni AI i RAG. Pretraga ostaje u vašoj bazi, a privatni modeli rade tamo gdje je ta baza dohvatljiva. Indeks se ne kopira dobavljaču.
  • Jasno mjesto obrade. CodeWiz je osnovan u Banjoj Luci 2023. Osnivač je Dragan Plavšić. Hostujemo na Hetzneru, sa Cloudflareom na javnom sajtu, i imenujemo mašinu ili dobavljača za svaki poziv.
  • Prvo open-source. Open-weight modeli koje možete pokrenuti sami. Vodič za hosting pokriva instalaciju. Ovaj članak pokriva izbor.
  • Fer i konkretno. Javni nacrt ne traži vlastiti server. Premijum razvoj bez premijum cijena, na daljinu, za lokalne i međunarodne klijente.

Često postavljana pitanja

Da li privatni modeli znače da tekst nikad ne izlazi iz zgrade?

Vi birate mašinu koja obrađuje prompt. Ako je administrirate, dobavljač ne dobija tekst. Iznajmljeni server u inostranstvu i dalje se računa. Tuđi alat za greške se ne računa. Recite gdje se obrada dešava i šta se zapisuje.

Možemo li ukloniti imena pa ugovor poslati hostovanom modelu?

Ne. Cijene, datumi, odgovornost i opis posla razlog su povjerljivosti. Uklanjanje služi za identifikatore na tekstu koji već smije izaći. Ugovor ostaje na modelu koji pokrećete, a čovjek prvo pregleda izlaz.

Jesu li manji lokalni modeli dovoljni za odgovore podrške?

Često, kad pronađeni odlomak već drži kratak odgovor. Slabiji su kad se mora porediti nekoliko dokumenata. Probajte oba na stvarnim pitanjima sa sintetičkim imenima, a hostovani model zadržite za javne zadatke.

Šta aplikacija treba da zapiše u log?

Zapišite zadatak, putanju, korisnika, vrijeme, i da li je rađeno uklanjanje ili odbijanje. Ne zapisujte sirovi prompt za ugovor, dokument kupca, medicinsku bilješku ili plaćanje. Držite taj log uz ostale operativne logove.

Već zovemo hostovani API iz preglednika. Šta se mijenja prvo?

Premjestite poziv na vaš server i uklonite ključ iz frontenda. Zatim podijelite zadatke: javni nacrti i opšta pomoć oko koda ostaju hostovani, pretraga podrške i nacrti o kupcu idu na model koji pokrećete, a medicinski ili platni tekst se odbija.

Odlučite koji tekst smije izaći

Donesite zadatke koje želite da model radi. Svaki označimo kao hostovan, privatan ili odbijen, i to ugradimo u kod. Javite se CodeWizu za mapu. Širi rad je uz naše usluge razvoja. U tom radu privatni modeli drže pogrešan tekst dalje od tuđeg API-ja.