Uhlelo lokusebenza olulula kakhulu lwe-AI Web

📙 Kuchungechunge lwezinxenye eziningi ekwakheni izinhlelo zokusebenza zewebhu ngokuhlanganiswa kwe-AI generative. Ingxenye 1 egxile ekuxoxeni ngesitaki se-AI nokuthi kungani ungqimba lohlelo lokusebenza luyindawo engcono kunazo zonke esitaki. I bheke lapha. Ingxenye 2 egxile ekutheni kungani uRuby ulimi olungcono kakhulu lwewebhu yokwakha i-AI MVPS. I bheke lapha. Ngincoma kakhulu ukuthi ufunde zombili izingxenye ngaphambi kokufunda le ndatshana ukuze ubanjwe kwigama elisetshenziswa lapha.
Okuqukethwe
Ukuqalisa
Kulesi sihloko, sizobe siqhuba isilingo sokucabanga esijabulisayo. Sifuna ukuphendula umbuzo:
Silula kangakanani esingenza uhlelo lokusebenza lwewebhu ngokuhlanganiswa kwe-AI?
Abafundi bami bazokwazi ukuthi ngiyawazisa ngokwelula kakhulu. Izinhlelo zokusebenza zewebhu ezilula zilula ukuyiqonda, ngokushesha ukuze zakhe, futhi ziqhubeke. Vele, njengezikali zohlelo lokusebenza, kuvela ubunzima. Kepha uhlala ufuna ukuqala elula.
Sizothatha isifundo esijwayelekile sohlelo lwewebhu ngokuhlanganiswa kwe-AI (rag), bese ubheka ukwenziwa okuhlukahlukene okuhlukahlukene. Sizoqala ukusetha okuyinkimbinkimbi kakhulu okwenziwe amathuluzi athandwa kakhulu, futhi sizame ukwenza lula isinyathelo-ngesinyathelo, size sigcine ngokusetha okulula kakhulu.
Kungani senza lokhu?
Ngifuna ukukhuthaza abathuthukisi ukuthi bacabange kakhulu. Izikhathi eziningi, “indlela esetshenziswayo” yokwakha izinhlelo zokusebenza zeWebhu noma ukuhlanganisa i-AI kuyinkimbinkimbi kakhulu ngecala lokusebenzisa. Onjiniyela bathatha ugqozi ezinkampanini ezinjenge-google noma i-apula, ngaphandle kokuvuma ukuthi amathuluzi awasebenzelayo angafanele amaklayenti asebenza ngezinga elincane kakhulu.
Ubambe ikhofi noma itiye, futhi ake ungene.
Ileveli 1: njengenkimbinkimbi njengoba ithola
Ake sithi iklayenti likucele ukuthi wakhe isicelo se-rag kubo. Lolu hlelo lokusebenza luzoba nekhasi elilodwa lapho abasebenzisi bangalayisha khona amadokhumenti abo nelinye ikhasi lapho bangaxoxa khona namadokhumenti abo besebenzisa i-rag. Ukuhamba nesitaki seWebhu ethandwa kakhulu njengamanje, unquma ukuhamba ne In nam bekela (I-MongoDB, Express.js, Reject, nama-Node.js) ukwakha uhlelo lwakho lokusebenza.
Ukwakha amapayipi ahlanganisiwe azobe ephethe i-passion yedokhumenti, edonsa, ukushumeka, ukubuyisa, nokuningi, uphinde uthathe isinqumo sokuhamba nesitaki esithandwa kakhulu: I-Langchain kuthunyelwe nge I-Fastapi. Uhlelo lokusebenza lweWebhu luzokwenza izingcingo ze-API kuze kube sekupheleni okuchazwe e-Fastapi. Kuzodinga okungenani ukuba kube okungenani ama-Endpoints amabili: eyodwa yokubiza ipayipi elikhomba nelinye ngokubiza ipayipi yombuzo. Empeleni, uzodinga futhi upsert futhi ususe ama-Endpoints, ukuqinisekisa ukuthi idatha esezingeni ledatha yakho ihlala ivumelanisa nokushumeka esitolo sakho se-vector.
Qaphela ukuthi uzobe usebenzisa i-JavaScript yohlelo lokusebenza lwewebhu, kanye ne-python ngokuhlanganiswa kwe-AI. Lolu hlelo lokusebenza lwe-duo-lingual lusho ukuthi uzobe usebenzisa a Ubuciko be-MicroSVERVIST (Bheka ingxenye 2 yalolu chungechunge ukuze uthole okuningi kulokhu). Lesi akusona isidingo esiqinile, kepha kwesinye isikhathi sikhuthazwa ekusethweni okunje.
Kukhona okukodwa okukhethiwe okufanele kwenziwe: Yikuphi database we-Vector ozobe usebenzisa? I-vector database yindawo lapho ugcina khona idokhumenti yedokhumenti edalwe yi-Index Pipeline. Masiphinde sihambe nokukhethwa okuthandwa kakhulu lapho: Iphiyinecone. Lesi yisizinda semininingwane yamafu we-SUPED STUCED abathuthukisi abaningi be-AI abasebenzisayo njengamanje.
Uhlelo lonke lungahle lubuke okuthile okufana nalokhu okulandelayo:
Ama-Yikes! Kunezingcezu eziningi ezihamba lapha. Ake siphule izinto phansi:
- Esikweletini esingezansi, sinesicelo sewebhu kanye ne-mongodb backend. Phakathi sinamapayipi e-rag akhiwe ngeLangchain ne-Fastapi. Phezulu, sine database le-Pinecone Vector. Unxande ngamunye lapha umele insiza ehlukile ngokuhanjiswa kwawo okuhlukile. Ngenkathi i-Pinecone Cloud Vavice Database izophathwa, okusele kukuwe.
- Nginezicelo ze-HTP ezisongekile ze-HTTP nezimpendulo ezihambisanayo ngomngcele onamachashazi. Khumbula, lokhu yizakhiwo zezakhiwo ze-MicroSvices, ngakho-ke lokhu kusho ukuthi izicelo ze-HTTP zizodingeka nganoma yisiphi isikhathi ukuxhumana kwensiza kwenzeka. Ukuze kube lula, ngibonise kuphela lokho izingcingo zemibuzo amapayipi kungabukeka sengathi futhi ngishiye noma yiziphi izingcingo eziya e-OpenAI, i-anthropic, njll. Ukucacisa, ngibala izicelo / izimpendulo ngokulandelana kwazo ezenzeke kuzo kwisimo sombuzo.
- Ukubonisa iphuzu elilodwa lobuhlungu, ukuqinisekisa ukuthi amadokhumenti akwi-database yakho ye-mongodb avumelaniswa nokushumeka kwawo okuhambisanayo enkombeni ye-Pinecone kuyathandeka kepha kungakhohlisa. Kuthatha izicelo eziningi ze-HTTP ukuze uhambe kusuka ku-database yakho ye-mongodb kuya ku-Cloud Vector database. Leli yiphuzu lokuxaka nokubheka phambili konjiniyela.
Isifaniso esilula: Lokhu kufana nokuzama ukugcina ama-hetlelf yakho ebonakalayo avumelaniswe nekhathalogi yencwadi yedijithali. Nganoma yisiphi isikhathi uthola incwadi entsha noma unikele ngencwadi kusuka eshalofini lakho (kucisha wena nje Umdlalo wema-Throne Khombisa, hhayi incwadi), kufanele uhambe futhi uvuselele incwajana yekhathalogu ukukhombisa ushintsho. Kulomhlaba wezincwadi ukungafani okuncane ngeke kukuthinte ngempela, kepha emhlabeni wezinhlelo zokusebenza zewebhu lokhu kungaba yinkinga enkulu.
Ileveli 2: Donsela ifu
Singakwazi yini ukwenza lokhu kube lula? Mhlawumbe ufunde i-athikili muva nje okuxoxwe ngayo ukuthi ama-porgres anesandiso kanjani esibizwa nge-PGVEctor. Lokhu kusho ukuthi ungakulahla i-pinecone futhi usebenzise nje ama-postgres njenge-database yakho ye-vector. Ngokufanelekile ungahambisa idatha yakho kusuka ku-mongodb ukuze uhlale nedatha eyodwa kuphela. Kuhle! Wena ukunqande isicelo sakho manje ubukeka njengokulandelayo:

Manje sinezinsizakalo ezimbili kuphela okufanele sikhathazeke ngazo: uhlelo lokusebenza lweWebhu + Database kanye namapayipi we-rag. Nakulokhu futhi, noma yiziphi izingcingo kubahlinzeki bemodeli beshiywe.
Yini esiyitholile nale elula? Manje, okwakho ukushumeka kanye nemibhalo ehambisanayo noma ama-chunks angaphila etafuleni elifanayo kwi-database efanayo. Njengesibonelo, ungangeza ikholomu yokushumeka etafuleni ku-postgresql ngokwenza:
ALTER TABLE documents
ADD COLUMN embedding vector(1536);
Ukugcina ukuvumelana phakathi kwamadokhumenti nokushumeka kufanele kube lula kakhulu manje. Ama-Postgres ' ON INSERT/UPDATE Izimbangela zikuvumela ukuba uhlanganise ukushumeka endaweni, ukuqeda isigaba sesibili “Bhala Doc / bese ushumeka” Dansa ngokuphelele.
Ukubuyela ebhukwini lezincwadi, lokhu kufana nokukhipha ikhathalogi yedijithali futhi esikhundleni salokho kunamathisela ilebula ngqo ngqo kuyo yonke incwadi. Manje, lapho uzungeza incwadi noma ukuphonsa eyodwa, asikho isidingo sokuvuselela uhlelo oluhlukile, ngoba amalebula aya nomaphi lapho izincwadi zihamba khona.
Ileveli 3: MicroSvices yaqala!
Wenze umsebenzi omuhle wenza lula izinto. Noma kunjalo, ucabanga ukuthi ungakwenza kangcono kakhulu. Mhlawumbe ungakha a Uhlelo lokusebenza lweMonolithic, Esikhundleni sokusebenzisa izakhiwo ze-microservices. I-monolith isho nje ukuthi uhlelo lwakho lokusebenza namapayipi akho we-rag athuthukiswa futhi ahambisane ndawonye. Nokho, kuphakama impikiswano. Ufake i-Web App ku-JavaScript usebenzisa isitaki se-Mern. Kepha amapayipi e-rag akhiwa esebenzisa uPython noLangchain bathunyelwe nge-Fastapi. Mhlawumbe ungazama ukunciphisa lezi ezitsheni ezizodwa, usebenzisa okuthile okufana nomphathi ukwengamela izinqubo zePython nezinqubo zeJavaScript, kepha akuyona into yemvelo yezitaki zePolyglot.
Ngakho-ke yini onquma ukuyenza ukushayela uRech / Node futhi esikhundleni salokho usebenzise i-DJango, uhlaka lwewebhu lePython lokuthuthukisa uhlelo lwakho lokusebenza. Manje, ikhodi yakho yePipeline ye-Rag ingahlala nje kwimodyuli yokusetshenziswa kuhlelo lwakho lokusebenza lwe-Django. Lokhu kusho ukuthi azikho izicelo ze-HTTP ezenziwayo, ezisusa ubunzima kanye ne-latency. Noma yisiphi isikhathi ofuna ukuqhuba umbuzo wakho noma ukukhomba amapayipi konke okufanele ukwenze ukwenza ucingo. Ukuphotha ama-dev ezindaweni nokuthunyelwa manje sekuyisiphambeko. Vele, uma ufunda ingxenye 2, oyithandayo akusithi ukusebenzisa yonke isitaki sePython, kodwa esikhundleni salokho qhubeka nesitaki se-ruby.
Wenze lula kakhulu, futhi manje ube nokwakhiwa okulandelayo:

Inothi elibalulekile: Kumdwebo wangaphambilini, ngihlanganise uhlelo lokusebenza lwewebhu kanye ne-database ku-service eyodwa, ukuze kube lula. Ngalesi sikhathi ngicabanga ukuthi kubalulekile ukukhombisa ukuthi empeleni, ngokwehlukana ngokwako! Lokhu kuyakwenza -I kusho ukuthi usasebenzisa ukwakhiwa kwezakhiwo ze-microsocisvices. Uma nje lezi zinsizakalo zobabili zithuthukiswa futhi zithunyelwe ngokuphelele, lokhu kuseyi-monolith.
Hewu! Manje unawo kuphela ukuthunyelwa okukodwa ukuze ujikeleze futhi ulondoloze. Ungaba nedatha yakho ebekwe njengesengezo kwisicelo sakho sewebhu. Ngeshwa kusho ukuthi usazokwazi ukusebenzisa i-Docker Qamba ukuthuthukisa nokuthumela imininingwane yakho yedatha kanye nezinsizakalo zohlelo lokusebenza leWebhu ndawonye. Kepha ngamapayipi manje asebenza nje njengemisebenzi esikhundleni senkonzo ehlukile, manje usungathatha i-fastapi! Ngeke usadingeka ulondoloze lezi zindlela; Vele usebenzise izingcingo zomsebenzi.
Imininingwane emincane yezobuchwepheshe: Kuleli shadi, insendgesi ikhombisa ukuthi umugqa onamachashazi -I Http, kepha esikhundleni se-postgres frontlend / protocol. Lezi izivumelwano ezimbili ezihlukile ku- ungqimba wesicelo yemodeli yephrothokholi ye-inthanethi. Lesi isendlalelo esihlukile sohlelo lokusebenza kunale engixoxe ngayo engxenyeni 1. Kusetshenziswa uxhumano lwe-HTTP ukudlulisa idatha phakathi kohlelo lokusebenza futhi i-database inokwenzeka, kepha hhayi kahle. Esikhundleni salokho abadali be-postgres bakha umthetho wabo onciphile futhi ohlanganiswe ngokuqinile ezidingweni ze-database.
Ileveli 4: I-SQLite ingena engxoxweni
“Impela senze lula ukwenza lula?”kungenzeka uzibuze.
Akulungile!
Kukhona okwenziwe lula kakhulu esingenza. Esikhundleni sokusebenzisa ama-postgres, singasebenzisa i-SQLite! Uyabona, njengamanje uhlelo lwakho lokusebenza kanye nemininingwane yakho imisebenzi emibili ehlukene esetshenzisiwe ndawonye. Kepha kuthiwani uma bengazona izinsizakalo ezimbili ezihlukile, kepha esikhundleni salokho database yakho bekuyifayela nje elihlala kuhlelo lwakho lokusebenza? Yilokhu i-SQLite engakunika yona. Ngokukhishwa okusanda kukhishwa sqlite-vec umtapo wezincwadi, kungaphatha ngisho ne-rag, njengokuthi kanjani pgvector Isebenzela ama-postgres. I-Caveat lapha sqlite-vec I-Pre-v1, kepha lokhu kusekuhle ekuqaleni kwe-MVP.

Kuyamangaza ngempela. Manje usungakwazi ukwenza kabusha i-Docker. Lolu hlelo lokusebenza lwewebhu eyodwa yesevisi eyodwa. Amamojula weLangchain kanye ne-database yakho manje yonke imisebenzi nje kuphela namafayela ahlala endaweni yakho yokugcina.
Ukhathazekile ngokusetshenziswa kwe-SQLite kuhlelo lokusebenza lwewebhu lokukhiqiza? Ngibhale muva nje mayelana ne-SQLITE, wake wabheka nje ukuthi i-PlayTH Eqinisweni uRuby ku-Rail 8 muva nje wenze lokhu kuvumelana nezimo okuzenzakalelayo futhi manje sekucindezela i-SQLITE njenge-database ezenzakalelayo yezinhlelo zokusebenza ezintsha. Impela njengezikali zohlelo lokusebenza, cishe uzodinga ukuthutha uye kuma-postgres noma enye i-database, kepha khumbula i-mantra engishilo ekuqaleni: wethula kuphela ubunzima lapho kunesidingo ngokuphelele. Ungacabangi ukuthi uhlelo lwakho lokusebenza luzoshaya ngezigidi zama-Wriment of Wrourtirriurret lapho uzama nje ukuthola abasebenzisi bakho abambalwa bokuqala.
Ukubeka kafushane
Kulesi sihloko, saqala ngezitaki zendabuko zokwakha uhlelo lwewebhu ngokuhlanganiswa kwe-AI. Sibone inani lobunzima obuhilelekile, futhi sanquma ukwenza lula ucezu ngecezu kuze kube yilapho sethi senzeke nge-platonic enhle yezinhlelo zokusebenza ezilula.
Kepha ungavumeli ukulula ukuba kube lula ukukukhohlisa; Uhlelo lokusebenza luseyisilo. Eqinisweni, ngenxa yokulula, kungagijima ngokushesha okukhulu kunohlelo lokusebenza lwendabuko. Uma ubona ukuthi uhlelo lokusebenza luqala ukwehlisa ijubane, ngizozama ukulinganisa iseva ngaphambi kokubheka ukufuduka ku-database entsha noma ukuphula i-monolith.
Ngohlelo olubi olunjalo, ungahambisa ngempela ngokushesha. Ukuthuthukiswa kwasendaweni kuyiphupho, futhi ukwengeza amakhono amasha kungenziwa ngejubane lombani. Usengathola ama-backups wedatha yakho ye-SQLite usebenzisa okuthile okufana ne-litestream. Lapho uhlelo lwakho lokusebenza lubonisa izimpawu zangempela zobunzima, bese unyukela amazinga ezinkimbinkimbi. Kepha ngeluleka ngokuqala kabusha uhlelo lokusebenza olusha ezingeni 1.
Ngiyethemba ukuthi ulujabulele lolu chungechunge ezisetshenziselwa zeWebhu ngokuhlanganiswa kwe-AI. Futhi ngithemba ukuthi ngikuphefumulele ukuthi ucabange elula, hhayi eyinkimbinkimbi!
🔥 Uma ungathanda uhlelo lwewebhu ngokwezifiso ngokuhlanganiswa kwe-AI ane, vakashela losangesaappps.com



