Fampidirana ny LangChain ho an'ny Architecture RAG Advanced amin'ny fampiharana Python | B4N1

Fampidirana ny LangChain ho an'ny Architecture RAG Advanced amin'ny fampiharana Python

8 months ago · b4n1 Read time: 4 min

Fampidirana ny LangChain ho an'ny Architecture RAG Advanced amin'ny fampiharana Python

Fijerena

Tao anatin'ny taona vitsivitsy izay, nanatri-maso fandrosoana lehibe ny sehatry ny Fanodinana ny fiteny voajanahary (NLP), indrindra eo amin'ny sehatry ny rafitra Retrieval-Augmented Generation (RAG). Ireo rafitra ireo dia nanova ny fomba fiasantsika toy ny famaliana fanontaniana, famintinana lahatsoratra ary AI miresaka. LangChain, tranomboky Python manara-penitra, dia nipoitra ho fitaovana matanjaka amin'ny fananganana rafitra RAG. Ato amin'ity lahatsoratra ity, dia hiditra ao amin'ny tontolon'ny LangChain isika ary hijery ny fampidirana azy amin'ny rafitra tranonkala mifototra amin'ny Python toy ny FastAPI sy Flask, raha mampiasa fitaovana orkestra ho fanatsarana ny fakana sy ny fanodinana angon-drakitra.

Inona no atao hoe LangChain?

LangChain dia tranomboky Python open source natao hanatsorana ny fivoaran'ny rafitra RAG. Izy io dia manome fitaovana sy API feno amin'ny fananganana, fanofanana ary fametrahana ny maodely AI, ary koa ny fampidirana azy ireo amin'ny loharanom-baovao isan-karazany sy ny rafitra tranonkala. Ny fifantohana voalohany amin'ny LangChain dia ny ahafahan'ny mpamorona mamorona rafitra RAG azo havaozina sy mahomby izay mahazaka asa NLP sarotra.

Endri-javatra fototra amin'ny LangChain

  1. ** Architecture Modular **: Ny famolavolana modular an'i LangChain dia ahafahan'ny mpamorona mampiditra mora foana ny maodely AI samihafa, loharano angon-drakitra ary rafi-tranonkala, ka mahatonga azy io ho safidy tsara indrindra amin'ny fananganana rafitra RAG sarotra.
  2. Fitaovana Orkestra: LangChain dia manome fitaovana fandrafetana isan-karazany izay ahafahan'ny mpamorona mitantana sy mandrindra ny angona lehibe, ary koa mampiditra amin'ny loharanom-baovao isan-karazany sy ny API.
  3. Fanohanana Modely AI Maromaro: LangChain dia manohana modely AI isan-karazany, ao anatin'izany ny maodely mifototra amin'ny transformer, ahafahan'ny mpamorona misafidy ny modely tsara indrindra ho an'ny tranga fampiasany manokana.
  4. Fampidirana amin'ny Web Frameworks: LangChain dia manome fampifangaroana tsy misy fotony miaraka amin'ireo rafitra tranonkala mifototra amin'ny Python malaza toa ny FastAPI sy Flask, ka mahatonga azy ho mora ny fametrahana rafitra RAG ho fampiharana amin'ny tranonkala.

Fampidirana ny LangChain amin'ny FastAPI sy Flask

Mba hampidirana ny LangChain amin'ny FastAPI sy Flask dia mila manaraka ireto dingana ireto isika:

Dingana 1: Mametraka LangChain

Voalohany, mila mametraka LangChain mampiasa pip isika:

pip install langchain

Dingana 2: Mamorona Agent LangChain

Manaraka, mila mamorona mpandraharaha LangChain isika izay ho fototry ny rafitra RAG. Ity misy ohatra iray amin'ny fomba hamoronana mpandraharaha fototra:

avy amin'ny langchain import Agent


agent = Agent(
    anarana="my_agent",
    model_name="my_model",
    model_type="transformer",
    lava_be_x=1024,
    halavan_min=128,
)

Dingana 3: Ampidiro amin'ny FastAPI na Flask

Rehefa avy namorona ny mpandraharaha LangChain izahay dia afaka mampiditra azy amin'ny FastAPI na Flask. Ity misy ohatra iray amin'ny fomba fampidirana azy amin'ny FastAPI:

avy amin'ny fastapi import FastAPI
avy amin'ny langchain import Agent

app = FastAPI()

# Mamorona mpandraharaha fototra
agent = Agent(
    anarana="my_agent",
    model_name="my_model",
    model_type="transformer",
    lava_be_x=1024,
    halavan_min=128,
)

@app.get("/generate")
async def generate_text(prompt: str):
    # Ampiasao ny mpandraharaha hamorona lahatsoratra
    vokatra = agent.generate(prompt)
    miverina {"output": output}

Toy izany koa, azontsika atao ny mampiditra LangChain amin'ny Flask:

Avy amin'ny tavoahangy import Flask, fangatahana
avy amin'ny langchain import Agent

app = Flask(__name__)

# Mamorona mpandraharaha fototra
agent = Agent(
    anarana="my_agent",
    model_name="my_model",
    model_type="transformer",
    lava_be_x=1024,
    halavan_min=128,
)

@app.route("/generate", method=["GET"])
def generate_text():
    # Ampiasao ny mpandraharaha hamorona lahatsoratra
    prompt = request.args.get("prompt")
    vokatra = agent.generate(prompt)
    miverina {"output": output}

Fitaovana orkestra ao amin'ny LangChain

LangChain dia manome fitaovana fandrafetana isan-karazany izay ahafahan'ny mpamorona mitantana sy manodina ny angona lehibe, ary koa mampiditra amin'ny loharanom-baovao isan-karazany sy ny API. Ny sasany amin'ireo fitaovana orkestra manan-danja ao amin'ny LangChain dia ahitana:

  1. Loharanon'ny angona: LangChain dia manome loharanom-baovao isan-karazany izay ahafahan'ny mpamorona miditra amin'ny loharanom-baovao isan-karazany sy ny API, toy ny angon-drakitra, ny rafitra rakitra, ary ny API web.
  2. Data Processors: LangChain dia manome karazana processeur data izay ahafahan'ny developer manodina angon-drakitra lehibe, anisan'izany ny fanadiovana angon-drakitra, ny fiovan'ny data, ary ny fanangonana angona.
  3. Môdely Orkestra: LangChain dia manome karazana orkestra maodely ahafahan'ny mpamorona mitantana sy mametraka ny maodely AI, ao anatin'izany ny fanofanana modely, ny fametrahana modely ary ny fanaraha-maso modely.

Visualization amin'ny Chart.js

Mba hijerena ny zava-bitan'ny rafitra RAG, dia afaka mampiasa Chart.js, tranomboky JavaScript malaza amin'ny famoronana tabilao mifampiresaka. Ity misy ohatra iray amin'ny fampiasana Chart.js mba hijerena ny fahombiazan'ny rafitra RAG:

const ctx = document.getElementById("myChart").getContext("2d");
tabilao const = tabilao vaovao(ctx, {
  karazana: "tsipika",
  data: {
    etikety: ["Jan", "Feb", "Mar", "Apr", "Mey"],
    angon-drakitra: [
      {
        etikety: "Accuracy",
        data: [0.8, 0.9, 0.85, 0.88, 0.92],
        loko: "rgba(255, 99, 132, 0.2)",
        borderColor: "rgba(255, 99, 132, 1)",
        sisin-tany: 1,
      },
    ],
  },
  safidy: {
    mizana: {
      y: {
        beginAtZero: marina,
      },
    },
  },
});

Didy/Snippet 5-10 ambony indrindra

Ireto ny baiko/snippet 5-10 ambony indrindra ao amin'ny LangChain:

  1. avy amin'ny langchain import Agent: Ampidiro avy any LangChain ny kilasin'ny Agent.
  2. Agent = Agent(...): Mamorona ohatra Agent vaovao.
  3. agent.generate(...): Ampiasao ny Agent hamorona lahatsoratra.
  4. agent.query(...): Ampiasao ny Agent mba hitadiavana fototra fahalalana.
  5. agent.train(...): Ampio ny Agent amin'ny angon-drakitra.
  6. agent.deploy(...): Apetraho ho serivisy tranonkala ny Agent.
  7. agent.monitor(...): Manara-maso ny asan'ny Agent.
  8. agent.update(...): Fanavaozana ny Agent amin'ny angona vaovao.
  9. agent.delete(...): Fafao ny ohatra Agent.
  10. agent.save(...): Tehirizo ao anaty rakitra ny ohatra Agent.

Famaranana

Ato amin'ity lahatsoratra ity, dia nandinika ny tontolon'ny LangChain sy ny fampidirana azy amin'ny rafitra tranonkala mifototra amin'ny Python toa ny FastAPI sy Flask. Niresaka momba ny fampiasana fitaovana orkestra ao amin'ny LangChain ihany koa izahay ary nanome ohatra momba ny fampiasana Chart.js mba hijerena ny fahombiazan'ny rafitra RAG. Miaraka amin'ny LangChain, ny mpamorona dia afaka manangana maritrano RAG azo scalable sy mahomby izay mahazaka asa sarotra NLP.


Have Questions?

Let's Talk

Contact me on LinkedIn