Dinamiki programma arhitekturasy üçin RAG-lary LLM bilen birleşdirmek: Amaly gollanma | B4N1

Dinamiki programma arhitekturasy üçin RAG-lary LLM bilen birleşdirmek: Amaly gollanma

8 months ago · b4n1 Read time: 3 min

Dinamiki programma arhitekturasy üçin RAG-lary LLM bilen birleşdirmek: Amaly gollanma

Giriş

Soňky ýyllarda programma üpjünçiligi arhitekturasy Uly dil modelleriniň (LLMs) we Retrieval-Augmented Generation (RAG) usullarynyň peýda bolmagy bilen düýpli özgerişleri başdan geçirdi. Bu iki tehnologiýanyň arasyndaky sinergiýa, programma üpjünçilik ulgamlaryny dizaýn etmegimizi we ösdürmegimizi üýtgetmek üçin potensiala eýe. Bu makalada, LangChain we DSPy ýaly orkestr gurallaryny ulanyp durmuşa geçiriş strategiýalaryny goşmak bilen, dinamiki programma arhitekturasy üçin RAG-yň LLM-leri bilen integrasiýasyny öwreneris.

RAG näme?

RAG, ýokary hilli tekst netijelerini çykarmak üçin Gözleg we Nesil esasly modelleriň güýçli taraplaryny birleşdirýän usuldyr. RAG-yň esasy pikiri, uly korpusdan degişli resminamalary ýa-da parçalary saýlamak üçin gözleg modelini ulanmak, soňra bolsa bu böleklere esaslanyp tekst döretmek üçin nesil modelini ulanmak. Bu çemeleşme, soraglara jogap bermek, teksti jemlemek we gepleşik AI ýaly meselelerde düýpli gowulaşmalary görkezdi.

LLM näme?

LLM-ler, adama meňzeş dil netijelerini döretmek üçin köp mukdarda tekst maglumatlary boýunça taýýarlanan emeli intellekt modeliniň bir görnüşidir. Bu modeller, adatça, transformator arhitekturasyna esaslanýar we tebigy dili gaýtadan işlemek boýunça köp sanly meselede iň häzirki zaman netijelerine ýetdi. LLM-ler ýokary derejeli we dil terjimesi, teksti jemlemek we gepleşik AI ýaly meseleler üçin ulanylyp bilner.

Näme üçin RAG-ny LLM-ler bilen birleşdirmeli?

RAG-yň LLM-leri bilen birleşdirilmegi dinamiki programma arhitekturasy üçin birnäçe peýdany hödürleýär:

2 .. D.

Durmuşa geçirmek strategiýasy

RAG-ny LLM-ler bilen birleşdirmek üçin birnäçe durmuşa geçiriş strategiýasy bar, şol sanda:

  1. ** LangChain **: LangChain açyk çeşme kitaphanasy bolup, RAG esasly modelleri gurmak üçin ýönekeý we içgin API üpjün edýär. LLM-leriň giň toplumyny goldaýar we çylşyrymly RAG arhitekturasyny durmuşa geçirmek üçin ulanylyp bilner.
  2. ** DSPy **: DSPy, RAG esasly modelleri durmuşa geçirmegiň ýönekeý we täsirli usulyny üpjün edýän Python kitaphanasydyr. LLM-leriň giň toplumyny goldaýar we çylşyrymly RAG arhitekturasyny durmuşa geçirmek üçin ulanylyp bilner.

Kod mysaly

Ine, RAG-ny LLM-ler bilen birleşdirmek üçin LangChain-i nädip ulanmalydygyny görkezýän ýönekeý kod mysaly: `` piton langchain import ediň langchain.chains-den RAGChain import edýär langchain.llms-dan LLaMA import edýär

llama = LLaMA ()

RAGChain modelini dörediň

rag_chain = RAGChain (llama, gözleg_model = "t5-kiçi")

Sorag kesgitläň

prompt = "Fransiýanyň paýtagty näme?"

Tekst çykyşyny dörediň

çykyş = rag_chain.run (gyssagly)

çap (çykyş) `` Bu kod mysaly, LLaMA modelini gözleg modeli bilen birleşdirýän RAGChain modelini döretmek üçin LangChain-i nädip ulanmalydygyny görkezýär. Soňra RAGChain modeli haýyşnama esasynda tekst çykyşyny döretmek üçin ulanylýar.

Iň köp ulanylýan buýruklar / bölekler

RAG-ny LLM-ler bilen birleşdirmek üçin iň köp ulanylýan 5-10 buýruk / bölek:

  1. "Llama.run (haýyş)": LLaMA modelini ulanyp, haýyşnama esasynda tekst çykyşyny döredýär.
  2. "Rag_chain.run (haýyş)": RAGChain modelini ulanyp, haýyşnama esasynda tekst çykyşyny döredýär. D.
  3. "Llama.get_input (haýyş)": LLaMA modeli üçin giriş tekstini görkezýär.
  4. "Rag_chain.get_output (haýyş)": RAGChain modeli üçin çykyş tekstini görkezýär.
  5. "Langchain.chains.RAGChain" (llama, gözleg_model = "t5-kiçi", batch_size = 32) ": LLaMA modelini gözleg modeli bilen birleşdirýän we partiýanyň ululygyny kesgitleýän RAGChain modelini döredýär.
  6. "Llama.get_output (haýyş)": LLaMA modeli üçin çykyş tekstini görkezýär.
  7. "Rag_chain.get_input (haýyş)": RAGChain modeli üçin giriş tekstini görkezýär. 10 ..

Wizuallaşdyrma

Ine, Chart.js ulanyp, RAGChain modelini ýönekeý şekillendirmek: json { "tip": "bar", "maglumatlar": { "bellikler": ["LLaMA", "RAGChain"], "maglumat bazalary": [ { "bellik": "Takyklyk", "maglumatlar": [0.8, 0.9], "backgroundColor": ["# FF6384", "# 36A2EB"] } ] }, "opsiýalar": { "title": { "görkezmek": dogry, "text": "RAGChain Model Takyklygy" }, "terezisi": { "yAxes": [ { "bellikler": { "startAtZero": dogry } } ] } } } Bu wizuallaşdyrma LLaMA modeliniň we RAGChain modeliniň takyklygyny görkezýär.

Netije

RAG-yň LLM-ler bilen integrasiýasy, takyklygy, netijeliligi ýokarlandyrmak we çeýeligi ýokarlandyrmak ýaly dinamiki programma arhitekturasy üçin birnäçe peýdany hödürleýär. LangChain we DSPy, RAG esasly modelleri durmuşa geçirmek üçin ulanyp boljak iki meşhur orkestr guralydyr. Bu makalada berlen durmuşa geçiriş strategiýalaryna we kod mysallaryna eýerip, döredijiler LLM-leri gözleg modelleri bilen birleşdirýän çylşyrymly RAG arhitekturasyny döredip bilerler. RAG-ny LLM-ler bilen birleşdirmek üçin iň köp ulanylýan 5-10 buýruk / bölek hem berilýär.


Have Questions?

Let's Talk

Contact me on LinkedIn