Yekkirina LangChain ji bo Mîmarên Pêşketî yên RAG-ê di Serîlêdanên Python de | B4N1

Yekkirina LangChain ji bo Mîmarên Pêşketî yên RAG-ê di Serîlêdanên Python de

8 months ago · b4n1 Read time: 5 min

Yekkirina LangChain-ê ji bo Mîmarên Pêşkeftî yên RAG-ê di Serîlêdanên Python de

Girtî

Di salên dawî de, qada Pêvajoya Zimanê Xwezayî (NLP) bûye şahidê pêşkeftinên girîng, nemaze di warê pergalên Retrieval-Augmented Generation (RAG). Van pergalan awayê ku em nêzikî peywirên wekî bersiva pirsê, kurtkirina nivîsê, û AI-ya axaftinê dibin şoreş kirin. LangChain, pirtûkxaneyek Python-ê ya pêşkeftî, ji bo avakirina mîmarên RAG-ê wekî amûrek hêzdar derketiye holê. Di vê gotarê de, em ê li cîhana LangChain bigerin û entegrasyona wê bi çarçoveyên tevneyê yên bingehîn ên Python-ê yên mîna FastAPI û Flask re bigerin, di heman demê de ku amûrên orkestrasyonê ji bo hilanîn û hilanîna daneya pêşkeftî bikar bînin.

LangChain çi ye?

LangChain pirtûkxaneyek Python-çavkaniyek vekirî ye ku ji bo hêsankirina pêşkeftina pergalên RAG hatî çêkirin. Ew ji bo avakirin, perwerdekirin, û bicihkirina modelên AI-ê, û her weha wan bi çavkaniyên daneya cihêreng û çarçoweyên malperê re yekkirina wan, komek amûr û API-yên berfireh peyda dike. Mebesta bingehîn a LangChain ev e ku pêşdebiran karibe mîmariyên RAG-ê yên berbelav û bikêr biafirînin ku dikarin peywirên NLP-ê yên tevlihev birêve bibin.

Taybetmendiyên sereke yên LangChain

  1. ** Mîmariya Modular **: Sêwirana modular a LangChain rê dide pêşdebiran ku bi hêsanî modelên AI-ê yên cihêreng, çavkaniyên daneyê, û çarçoweyên malperê tevbigerin, û ew ji bo avakirina pergalên RAG-ê yên tevlihev dike bijarek îdeal.
  2. Amûrên Orkestrasyonê: LangChain cûrbecûr amûrên orkestrasyonê peyda dike ku rê dide pêşdebiran ku berhevokên mezin bi rêve bibin û pêvajo bikin, û her weha bi çavkaniyên daneyan û API-yên cihêreng re bibin yek.
  3. **Piştgiriya ji bo Modelên AI-ê yên Pirjimar **: LangChain gelek modelên AI-ê piştgirî dike, di nav de modelên-based transformer, ku dihêle pêşdebiran ji bo doza karanîna xwe ya taybetî modela çêtirîn hilbijêrin.
  4. ** Tevhevbûna bi Çarçoveyên Webê re**: LangChain bi çarçoveyên webê yên navdar ên Python-ê yên mîna FastAPI û Flask re entegrasyonek bêkêmasî peyda dike, sazkirina pergalên RAG-ê wekî serîlêdanên malperê hêsan dike.

Yekkirina LangChain bi FastAPI û Flask re

Ji bo ku LangChain bi FastAPI û Flask re yek bikin, divê em van gavan bişopînin:

Gav 1: LangChain saz bikin

Pêşîn, em hewce ne ku LangChain bi karanîna pip saz bikin:

``baş pip saz langchain


### Gav 2: Agentek LangChain biafirînin

Dûv re, pêdivî ye ku em nûnerek LangChain biafirînin ku dê wekî bingeha pergala meya RAG-ê kar bike. Li vir mînakek e ku meriv çawa nûnerek bingehîn biafirîne:

`` python
ji langchain import Agent


agent = Agent(
    name = "my_agent",
    model_name = "model_min",
    model_type = "transformer",
    max_length=1024,
    min_length=128,
)

Gav 3: Bi FastAPI an Flask re yek bikin

Dema ku me nûnerê xwe LangChain çêkir, em dikarin wê bi FastAPI an Flask re yek bikin. Li vir mînakek e ku meriv wê çawa bi FastAPI re entegre dike:

`` python ji fastapi import FastAPI ji langchain import Agent

sepan = FastAPI()

Nûnerek bingehîn biafirînin

agent = Agent( name = "my_agent", model_name = "model_min", model_type = "transformer", max_length=1024, min_length=128, )

@app.get ("/çêkirin") async def generate_text(prompt: str): # Agent bikar bînin ku nivîsê çêbikin encam = agent.generate(prompt) vegera {"derketin": derketin}


Bi heman rengî, em dikarin LangChain bi Flask re yek bikin:

`` python
ji flask import Flask, daxwaz
ji langchain import Agent

app = Flask (__name__)

# Nûnerek bingehîn biafirînin
agent = Agent(
    name = "my_agent",
    model_name = "model_min",
    model_type = "transformer",
    max_length=1024,
    min_length=128,
)

@app.route ("/çêkirin", metod=["GET"])
def generate_text():
    # Agent bikar bînin ku nivîsê çêbikin
    prompt = request.args.get("prompt")
    encam = agent.generate(prompt)
    vegera {"derketin": derketin}

Amûrên Orkestrasyonê li LangChain

LangChain cûrbecûr amûrên orkestrasyonê peyda dike ku rê dide pêşdebiran ku daneyên mezin bi rêve bibin û pêvajoyê bikin, û hem jî bi çavkaniyên daneyan û API-yên cihêreng re bibin yek. Hin amûrên sereke yên orkestrasyonê yên li LangChain hene:

  1. ** Çavkaniyên Daneyê **: LangChain gelek çavkaniyên daneyê peyda dike ku rê dide pêşdebiran ku bi çavkaniyên daneyan û API-yên cihêreng re, wek databases, pergalên pelan, û API-yên malperê tevbigerin.
  2. Pêvajokerên Daneyê: LangChain rêzeyek pêvajoyên daneyê peyda dike ku pêşdebiran dihêlin danûstendinên mezin pêvajoyê bikin, di nav de paqijkirina daneyan, veguherîna daneyê, û berhevkirina daneyan.
  3. ** Orkestratorên Model **: LangChain rêzek orkestratorên modelê peyda dike ku rê dide pêşdebiran ku modelên AI-ê bi rêve bibin û bicîh bikin, di nav de perwerdehiya modelê, bicihkirina modelê, û çavdêriya modelê.

**Visualization bi Chart.js **

Ji bo dîtina performansa pergala xweya RAG-ê, em dikarin Chart.js, pirtûkxaneyek JavaScript-a populer a ji bo afirandina nexşeyên înteraktîf bikar bînin. Li vir mînakek e ku meriv çawa Chart.js bikar tîne da ku performansa pergala meya RAG-ê xuyang bike:

``javascript const ctx = document.getElementById("myChart").getContext("2d"); nexşeya const = nexşeya nû(ctx, { tîp: "xet", data: { etîket: ["Jan", "Sib", "Adar", "Apr", "Gulan"], Daneyên daneyan: [ { label: "Rastbûn", dane: [0.8, 0.9, 0.85, 0.88, 0.92], backgroundColor: "rgba(255, 99, 132, 0.2)", borderColor: "rgba(255, 99, 132, 1)", Firehiya sînor: 1, }, ], }, vebijark: { pîvan: { y: { DestpêkAtZero: rast, }, }, }, });


** Serê 5-10 Fermanên Herî Bikaranîn / Parçeyên **


Li vir 5-10 fermanên herî zêde têne bikar anîn li LangChain hene:

1. `ji Langchain import Agent`: Dersa Agent ji LangChain derxînin.
2. `Agent = Agent(...)`: Nimûneyek Nû ya Agent çêbikin.
3. `agent.generate(...)`: Ji bo afirandina nivîsê Agent bikar bînin.
4. `agent.query(...)`: Ji bo pirskirina bingehek zanînê Agent bikar bînin.
5. `agent.train(...)`: Agent li ser danûstendinê perwerde bikin.
6. `agent.deploy(...)`: Agent wekî karûbarek webê bi cih dike.
7. `agent.monitor(...)`: Çavdêriya performansa Agent.
8. `agent.update(...)`: Agent bi daneyên nû nûve bike.
9. `agent.delete(...)`: Mînaka Agent jêbirin.
10. `agent.save(...)`: Mînaka Agent li pelek tomar bike.

** Encam **


Di vê gotarê de, me cîhana LangChain û entegrasyona wê bi çarçoveyên webê yên bingehîn ên Python-ê yên mîna FastAPI û Flask vekolandiye. Me di heman demê de li ser karanîna amûrên orkestrasyonê li LangChain jî nîqaş kir û mînakan pêşkêşî kir ku meriv çawa Chart.js bikar tîne da ku performansa pergala meya RAG-ê xuya bike. Bi LangChain re, pêşdebiran dikarin mîmarên RAG-ê yên berbelav û bikêr ava bikin ku dikarin karên tevlihev ên NLP-ê birêve bibin.

Have Questions?

Let's Talk

Contact me on LinkedIn