Blog

RAG-järjestelmien huomioitavat asiat tuote- ja palvelukehityksessä

JUN 14, 2024

Nykypäivän nopeasti muuttuvassa digitaalisessa toimintaympäristössä innovatiivisten tekoälytyökalujen, kuten Retrieval-Augmented Generation (RAG) -järjestelmien ja niiden päälle rakennettujen agenttien, käyttöönotto on yhä tärkeämpää. Pelkkien LLM-mallien käyttö ei tuo yrityskontekstissa lainkaan arvoa.

Kalle Mäkelä

Kalle is an automation-driven engineer who drives BEVs, marvels at space whenever he can, and always looks on the bright side of life.

Nämä järjestelmät yhdistävät ainutlaatuisella tavalla tiedonhakupohjaiset mallit ja Generative AI -mallit. RAGin käyttöön liittyvien datan hallinnan haasteiden yhdistäminen on-premises- ja pilvivaihtoehtojen väliseen valintaan johtaa kuitenkin merkittäviin päätöksiin ja toteutustyöhön.

Tämän blogikirjoituksen tavoitteena on opastaa sinua RAG-järjestelmien tehokkaassa ja turvallisessa integroinnissa organisaatioosi.

RAG-järjestelmien käyttö aiheuttaa merkittäviä hallintahaasteita

RAG-järjestelmät ovat erinomaisia ratkaisuja sovelluksiin, jotka edellyttävät kattavia vastauksia. Niiden toteutus vaihtelee kuitenkin merkittävästi sen mukaan, hostataanko ne on-premises-ympäristössä vai pilvessä ja millaisia tietoturvakäytäntöjä ja -prosesseja käytössäsi on.

Näissä järjestelmissä keskeinen tietoturvan osa-alue on roolipohjaisen pääsynhallinnan (RBAC) käyttöönotto. RBAC tuo lisäturvaa varmistamalla, että arkaluonteiseen dataan pääsevät käsiksi vain organisaation valtuutetut roolit. Näin se pienentää tietomurtojen riskiä. Jokaiselle roolille määritetään omat oikeutensa, ja käyttäjät näkevät vain roolinsa kannalta tarvittavat tiedot, mikä estää luvattoman pääsyn dataan.

RBAC on silti vain yksi toiminto, jota varten on suunniteltava kestävä toimintamalli, jotta RAG- ja agenttiratkaisu on turvallinen ja käyttökelpoinen. RBACin tekninen toteutus voi vaikuttaa ”triviaalilta”, mutta RBACin ja RAGin sekä kaiken niiden datan yhdistäminen yrityksesi inhimilliseen puoleen – ihmisiin, prosesseihin ja työkaluintegraatioihin – on haasteen ydin.

Governance of LLM

On-premises- ja pilvikäyttöönottovaihtoehdot

On-premises RAG -järjestelmä hostataan yrityksen omilla palvelimilla, ja sitä hallinnoi oma IT-henkilöstö. Tämä vaihtoehto antaa paremman hallinnan dataasi, mikä on olennaista arkaluonteisten tietojen kohdalla. Sen käyttöönotto ja ylläpito voivat kuitenkin vaatia merkittäviä investointeja ja teknistä asiantuntemusta, ja laitteistorajoitteet voivat heikentää skaalautuvuutta.

Voit esimerkiksi rakentaa tällaisen järjestelmän käyttämällä avoimen lähdekoodin vektoritietokantoja, kuten Weaviatea, sekä LLM-mallien suoritusympäristöä, kuten vLLM:ää tai Ollamaa, paikallisten mallien ajamiseen. Voit myös integroida RAG-järjestelmän Keycloakiin skaalautuvuuden varmistamiseksi ja RBAC-ratkaisusi tulevaisuudenkestävyyden parantamiseksi.

Pilvipohjaiset RAG-järjestelmät, kuten Azure Open AI Service tai AWS Q, hostataan palveluntarjoajan palvelimilla. Ne tarjoavat skaalautuvuutta, kustannustehokkuutta käytön mukaan laskutettavan mallin ansiosta sekä helpon käyttöönoton. Työn luonteesta ja pilvipalveluntarjoajan käytännöistä riippuen organisaatiot voivat kuitenkin kohdata tietoturvaan ja vaatimustenmukaisuuteen liittyviä huolia.

Vielä tärkeämpää on pohtia, haluatko siirtää yrityksesi kulttuurin alustalle, joka ei ole omissa käsissäsi. Pilvipohjaisten RAGien käyttö voi myös aiheuttaa merkittäviä kustannuksia.

RAG- ja agenttijärjestelmien käyttöönoton vaiheet

Arvioi

Arvioi tarpeesi ja tunnista alueet, joilla RAG-järjestelmät voisivat hyödyttää liiketoimintaasi. Selvitä, vastaavatko organisaatiosi datan arkaluonteisuus ja skaalautuvuusvaatimukset paremmin on-premises- vai pilvivaihtoehtoa.

Dataembeddings

Data on käsiteltävä vektorimuotoon, jotta LLM:t voivat hyödyntää sitä. Tämä on perusta sille, että RAG-järjestelmästäsi on arvoa kehityksen arvovirran käyttötapauksissa.

Riippuen siitä, käytätkö on-premises-ympäristöä vai pilveä, sinun on valittava oikeat menetelmät, työkalut ja kirjastot, jotta chunking ja indeksointi toimivat järjestelmää käytettäessä mahdollisimman hyvin.

Asiantuntemus ja koulutus

Varmista, että tiimilläsi on valitsemasi RAG-järjestelmän hallintaan tarvittavat taidot. Tämä voi edellyttää nykyisten työntekijöiden kouluttamista tai uusien osaajien palkkaamista. Aloita pienesti myös paikallisissa ympäristöissäsi, käytä omia koneitasi ja kokeile dataembedding-menetelmiä.

Valitse LLM-järjestelmääsi sopivat mallit

Huomioi kunkin mallin erityinen käyttötarkoitus, kuten koodi, käyttöoppaat tai määritykset, ja sovita se organisaatiosi tarpeisiin. Lähitulevaisuudessa organisaatiossasi on käytössä kymmeniä tai satoja tällaisia malleja.

Integrointi

Integroi RAG-järjestelmä nykyiseen infrastruktuuriisi ja RBAC-ratkaisuusi. Tämä vaihe vaihtelee merkittävästi sen mukaan, otatko käyttöön on-premises- vai pilvipohjaisen järjestelmän.

Käyttöönottostrategiasta riippumatta nykyisille DevOps -tiimeillesi on annettava valmiudet näiden järjestelmien käyttöön. Sinun on myös rakennettava näitä työkaluja ympäröivät elinkaarenhallintaprosessit. Niitä tulisi luonnollisesti hallita niin pilvessä kuin on-premises-ympäristössä Infrastructure-as-Code (IaC) -työkaluilla, jotka on integroitu CI/CD-työkaluihin. 

Balance

Validointi

Tärkeintä on hyödyntää nykyisiä tai GenAI-enhanced DevOps -prosesseja turvaverkkona. Järjestelmää on testattava kattavasti, jotta voit varmistaa sen toimivan oikein ja mukautuvan kehityksen arvovirran tulosten perusteella.

Sosioteknisen järjestelmän hyödyntäminen ohjenuorana on hyvä käytäntö. RAGia hyödyntävän organisaatiosi tuotoksia on validoitava jatkuvasti kaikilla tasoilla.

AI Validation

Organisaation kouluttaminen

Kouluta organisaatiosi jäseniä vuorovaikuttamaan RAG-järjestelmän kanssa ja hyödyntämään sitä. Lisää myös tietoisuutta näiden RAG-järjestelmien kyvykkyyksistä ja läpinäkyvyydestä, jotta ne eivät näyttäydy käyttäjille täysin mustina laatikkoina.

Tekoälyavusteisten työkalujen onnistuneen käytön kannalta on olennaista ymmärtää, miten ja miksi promptaus (käyttäjän syöte) vaikuttaa lopputulokseen. Monissa sovelluksissa käytetään taustalla promptimalleja, joten käyttäjien ei useimmiten tarvitse ymmärtää kaikkea. Jos jokin kuitenkin menee pieleen, tarvitset ihmisiä, jotka tietävät, mitä tekevät.

Seuraa ja kehitä

Seuraa säännöllisesti järjestelmän suorituskykyä, prompteja ja vastauksia sekä tee tarvittavat parannukset hyötyjen optimoimiseksi. Muista iteroida järjestelmäpromptien kanssa äläkä lopeta heikkojen tulosten vuoksi.

Valitsitpa paikallisesti asennetun tai pilvipohjaisen RAG- ja agenttijärjestelmän, olennaista on ymmärtää organisaatiosi tarpeet ja valmistautua integraatioon. Huolellisella suunnittelulla ja jatkuvalla kehittämisellä organisaatiosi voi hyödyntää LLM-järjestelmien koko potentiaalin sekä parantaa kehitystä, toiminnan tehokkuutta ja päätöksentekoprosesseja.

  • DevOps
  • Software development
  • Cloud

Subscribe to our newsletter