Isku dhafka LangChain ee Dhismayaasha Sare ee RAG ee Codsiyada Python | B4N1

Isku dhafka LangChain ee Dhismayaasha Sare ee RAG ee Codsiyada Python

8 months ago · b4n1 Read time: 5 min

** Isku-dhafka LangChain ee Dhismayaasha Sare ee RAG ee Codsiyada Python ***

** Dulmar**

Sanadihii la soo dhaafay, goobta Habraaca Luqadda Dabiiciga ah (NLP) ayaa goob joog u ahaa horumarro la taaban karo, gaar ahaan nidaamka dib u soo celinta-Augmented Generation (RAG). Nidaamyadani waxay wax ka beddeleen habka aan u wajahno hawlaha sida ka jawaabista su'aalaha, soo koobida qoraalka, iyo wada hadalka AI. LangChain, maktabadda Python gees-goyn, ayaa u soo baxday sidii qalab awood leh oo lagu dhisayo naqshadaha RAG. Maqaalkan, waxaan u dhexgeli doonaa adduunka LangChain oo aan sahamin doonaa is dhexgalka qaab-dhismeedka shabakadda Python-ku-saleysan sida FastAPI iyo Flask, iyadoo aan ka faa'iideysaneyno aaladaha abaabulka ee soo celinta xogta iyo habaynta.

Waa maxay LangChain?

LangChain waa maktabad Python oo furan oo loogu talagalay in lagu fududeeyo horumarinta nidaamyada RAG. Waxay bixisaa qalab iyo API-yo dhammaystiran oo loogu talagalay dhisidda, tababbarka, iyo geynta moodooyinka AI, iyo sidoo kale in lagu dhex daro ilo xogeedyo kala duwan iyo qaab-dhismeedka shabakadda. LangChain waxa uu diirada saarayaa waa in ay awood u siiso horumariyayaasha si ay u abuuraan qaab dhismeedka RAG la miisaami karo oo hufan oo xamili kara hawlaha NLP ee adag.

** Astaamaha ugu muhiimsan ee LangChain ***

  1. ** Qaabdhismeedka Casriga ah ***: Naqshadaynta qaab-dhismeedka LangChain waxay u ogolaataa horumariyeyaasha inay si fudud u dhexgalaan noocyo kala duwan oo AI ah, ilaha xogta, iyo qaab-dhismeedka shabakadda, taasoo ka dhigaysa doorasho ku habboon dhismaha nidaamyada RAG ee adag.
  2. ** Qalabka Orchestration ***: LangChain wuxuu bixiyaa qalab abaabul oo kala duwan oo awood u siinaya horumariyeyaasha inay maareeyaan oo ay farsameeyaan xog-ururinta, iyo sidoo kale isku-dhafka ilaha xogta iyo API-yada kala duwan.
  3. ** Taageerada Noocyada AI ee Multiple **: LangChain waxay taageertaa noocyo kala duwan oo AI ah, oo ay ku jiraan moodooyinka ku salaysan isbeddelka, taas oo u oggolaanaysa horumariyeyaasha inay doortaan qaabka ugu fiican ee kiiskooda gaarka ah.
  4. ** Is-dhexgalka Qaab-dhismeedka Shabakadda ***: LangChain waxay bixisaa is-dhexgalka aan kala go 'lahayn ee qaababka caanka ah ee Python ku salaysan sida FastAPI iyo Flask, taasoo fududaynaysa in la geeyo nidaamyada RAG sida codsiyada webka.

** Isku-dhafka LangChain ee FastAPI iyo Flask**

Si loogu daro LangChain FastAPI iyo Flask, waxaan u baahanahay inaan raacno tillaabooyinkan:

Tallaabada 1: Ku rakib LangChain

Marka hore, waxaan u baahanahay inaan ku rakibno LangChain anagoo adeegsanayna pip:

bash pip ku rakib langchain

Tallaabada 2: Abuur Wakiilka LangChain

Marka xigta, waxaan u baahanahay inaan abuurno wakiilka LangChain kaasoo u adeegi doona xudunta nidaamkayaga RAG. Waa kuwan tusaale sida loo abuuro wakiilka aasaasiga ah:

`` Python Wakiilka soo dejinta langchain

wakiil = wakiil ( name="my_agent", model_name = "my_model", model_type = "transformer", max_length=1024, min_dherer=128, ) ``

Talaabada 3: Ku dhexgal FastAPI ama Flask

Marka aan abuurno wakiilkayaga LangChain, waxaan ku dhex dari karnaa FastAPI ama Flask. Waa kuwan tusaale sida loogu dari karo FastAPI:

`` Python ka soo dejinta fastapi FastAPI Wakiilka soo dejinta langchain

app = FastAPI()

Abuur wakiilka aasaasiga ah

wakiil = wakiil ( name="my_agent", model_name = "my_model", model_type = "transformer", max_length=1024, min_dherer=128, )

@app.get("/abuuri") async def gene_text (degdeg: str): # Adeegso wakiilka si aad u abuurto qoraal wax soo saarka = wakiil.dhalin(degdeg) soo celi {"output": saarka} ``

Sidoo kale, waxaan LangChain ku dari karnaa Flask:

`` Python ka soo degista dhalada, codsi Wakiilka soo dejinta langchain

app = Calan (name)

Abuur wakiilka aasaasiga ah

wakiil = wakiil ( name="my_agent", model_name = "my_model", model_type = "transformer", max_length=1024, min_dherer=128, )

@app.route("/abuur", hababka=["GET") def gene_text(): # Adeegso wakiilka si aad u abuurto qoraal degdeg = codsi.args.get(" degdeg ah") wax soo saarka = wakiil.dhalin(degdeg) soo celi {"output": saarka} ``

** Aaladaha Orchestration ee LangChain ***

LangChain waxa uu bixiyaa qalab abaabul oo kala duwan oo u sahlaya horumariyayaashu in ay maareeyaan oo farsameeyaan xog-ururinta, iyo sidoo kale la dhexgaliyo ilaha xogta iyo API-yada kala duwan. Qaar ka mid ah aaladaha abaabulka ee muhiimka ah ee LangChain waxaa ka mid ah:

  1. ** Ilaha Xogta ***: LangChain waxay bixisaa ilo xogeedyo kala duwan oo u sahlaya horumariyayaashu inay ku dhex milmaan ilaha xogta iyo API-yada kala duwan, sida database-yada, nidaamyada faylka, iyo API-yada webka.
  2. ** Processorsada Xogta ***: LangChain waxay bixisaa noocyo kala duwan oo soo-saareyaal xog ah kuwaas oo awood u siinaya horumariyeyaasha inay farsameeyaan xog-ururin, oo ay ku jiraan nadiifinta xogta, beddelka xogta, iyo isku-darka xogta.
  3. ** Orchestrators Model ***: LangChain waxay bixisaa noocyo kala duwan oo ka mid ah orchestrators model kuwaas oo u suurtageliya horumarinta si ay u maareeyaan oo ay geeyaan moodooyinka AI, oo ay ku jiraan tababarka moodeelka, geynta moodalka, iyo la socodka moodeelka.

Muuqaalka oo leh Chart.js

Si loo sawiro waxqabadka nidaamkayaga RAG, waxaan isticmaali karnaa Chart.js, maktabadda JavaScript ee caanka ah si loo abuuro jaantusyo is dhexgal ah. Waa kuwan tusaale sida loo isticmaalo Chart.js si loo sawiro waxqabadka nidaamkayaga RAG:

javascript const ctx = document.getElementById("myChart").getContext("2d"); shaxda const = jaantus cusub (ctx, { nooca: "line", xogta: { summada: ["Jan", "Feb", "Mar", "Apr", "May"], xogta xogta: [ { sumadda: "Sax", xogta: [0.8, 0.9, 0.85, 0.88, 0.92], asalka Midabka: "rgba(255, 99, 132, 0.2)", Midabka xadka: "rgba(255, 99, 132, 1)", Balaadhka xadka: 1, }, ], }, fursadaha: { miisaanka: { y: { beginAtZero: run, }, }, }, }

** 5-10ka ugu sarreeya amarada/Qodobka ugu Isticmaalka badan**

Waa kuwan 5-10ka amarrada ugu badan ee la isticmaalo ee LangChain:

  1. 'Wakiilka soo dejinta langchain': Ka soo deji fasalka wakiilka LangChain.
  2. 'wakiil = Wakiil(...)': Samee tusaale wakiil cusub.
  3. 'agent.generate(...)': Adeegso wakiilka si aad u abuurto qoraal.
  4. wakiil.question(...): Adeegso wakiilka si aad u waydiiso saldhiga aqoonta.
  5. 'wakiil.tareen(...)': Ku tababar wakiilka xog-ururinta.
  6. agent.deploy(...): U dir wakiilka adeeg shabakad ahaan.
  7. 'agent.kormeer(...)': La soco waxqabadka wakiilka.
  8. agent.update(...): Ku cusboonaysii wakiilka xog cusub.
  9. 'wakiil. Delete(...)': Tirtir tusaale ahaan wakiilka.
  10. agent.save(...): Ku keydi tusaalaha wakiilka fayl.

** Gabagabo**

Maqaalkan, waxaan sahaminay aduunka LangChain iyo is dhexgalka qaabdhismeedka shabakada Python-ku salaysan sida FastAPI iyo Flask. Waxaan sidoo kale ka wada hadalnay adeegsiga aaladaha orchestration ee LangChain waxaanan bixinnay tusaalooyin ku saabsan sida loo isticmaalo Chart.js si aan u aragno waxqabadka nidaamkayaga RAG. LangChain, horumariyayaashu waxay dhisi karaan qaab dhismeedka RAG la miisaami karo oo hufan oo xamili kara hawlaha NLP ee adag.


Have Questions?

Let's Talk

Contact me on LinkedIn