Ko te whakauru i te LangChain mo nga Hangahanga RAG Ake i roto i nga tono Python
**Tirohanga **
I nga tau tata nei, kua kite te mara o te Tukatuka Reo Maori (NLP) i nga ahunga whakamua nui, ina koa i roto i te ao o nga punaha Retrieval-Augmented Generation (RAG). Ko enei punaha kua whakarereke i te huarahi e whakatata atu ai tatou ki nga mahi penei i te whakautu patai, te whakarapopoto tuhinga, me te korero korero AI. Ko LangChain, he whare pukapuka Python tapahi, kua puta hei taputapu kaha mo te hanga i nga hoahoanga RAG. I roto i tenei tuhinga, ka rukuhia e matou te ao o LangChain me te torotoro i tana whakaurunga ki nga angamahi tukutuku a Python penei i te FastAPI me te Flask, me te whakamahi i nga taputapu orchestration mo te whakapai ake i te tiki raraunga me te tukatuka.
He aha te LangChain?
Ko LangChain he puna tuwhera puna Python i hangaia hei whakangwari i te whanaketanga o nga punaha RAG. Ka whakaratohia e ia he huinga matawhānui o nga taputapu me nga API mo te hanga, whakangungu, me te whakamahi i nga tauira AI, me te whakauru ano ki nga momo puna raraunga me nga angamahi tukutuku. Ko te arotahi tuatahi a LangChain ko te whakaahei i nga kaiwhakawhanake ki te hanga i nga hoahoanga RAG tauineine me te whai hua ka taea te whakahaere i nga mahi NLP uaua.
Ahuatanga matua o LangChain
- Modular Architecture: Ko te hoahoa a LangChain ka taea e nga kaiwhakawhanake te whakauru ngawari ki nga tauira AI rereke, nga puna raraunga, me nga angamahi tukutuku, ka waiho hei whiringa pai mo te hanga i nga punaha RAG matatini.
- Utauta Whakaraupapa: Ka whakarato a LangChain i te whānuitanga o nga taputapu orchestration e taea ai e nga kaiwhakawhanake te whakahaere me te tukatuka i nga huingararaunga nui, me te whakauru ki nga momo puna raraunga me nga API.
- Tautoko mo nga Tauira AI Maha: Ka tautoko a LangChain i te whānuitanga o nga tauira AI, tae atu ki nga tauira-whakawhitiwhiti, ka taea e nga kaiwhakawhanake te whiriwhiri i te tauira tino pai mo o raatau keehi whakamahi motuhake.
- Ko te Whakakotahitanga me nga Anga Tukutuku: Ka whakarato a LangChain i te whakakotahitanga ngawari me nga angamahi tukutuku rongonui a Python penei i a FastAPI me te Flask, kia ngawari ai te whakatakoto i nga punaha RAG hei tono paetukutuku.
Ko te whakakotahi i te LangChain me FastAPI me te Flask
Hei whakauru i te LangChain me FastAPI me te Flask, me whai i enei mahi:
Hipanga 1: Tāuta LangChain
Tuatahi, me whakauru tatou i te LangChain ma te whakamahi i te pip:
pip tāuta langchain
Hipanga 2: Waihangahia he Kaihoko LangChain
I muri mai, me hanga e matou he kaihoko LangChain hei kaupapa matua o to maatau punaha RAG. Anei tetahi tauira mo te hanga i tetahi kaihoko taketake:
mai i te langchain kawemai Agent
māngai = Agent(
name="my_agent",
model_name="taku_tauira",
model_type="transformer",
morahi_roa=1024,
min_roa=128,
)
Hipanga 3: Whakauru ki te FastAPI, Flask ranei
I te wa i hangaia e matou to maatau kaihoko LangChain, ka taea e matou te whakauru ki a FastAPI, Flask ranei. Anei tetahi tauira me pehea te whakauru ki a FastAPI:
mai fastapi kawemai FastAPI
mai i te langchain kawemai Agent
taupānga = FastAPI()
# Waihangahia he kaihoko taketake
māngai = Agent(
name="my_agent",
model_name="taku_tauira",
model_type="transformer",
morahi_roa=1024,
min_roa=128,
)
@app.get("/whakaputa")
async def generate_text(tohutohu: str):
# Whakamahia te kaihoko ki te whakaputa tuhinga
putanga = agent.generate(prompt)
whakahokia {"putanga": putanga}
Waihoki, ka taea e tatou te whakauru i te LangChain me te Flask:
mai i te ipu kawemai Flask, tono
mai i te langchain kawemai Agent
taupānga = Flask(__ingoa__)
# Waihangahia he kaihoko taketake
māngai = Agent(
name="my_agent",
model_name="taku_tauira",
model_type="transformer",
morahi_roa=1024,
min_roa=128,
)
@app.route("/generate", tikanga=["GET"])
def whakaputa_kuputuhi():
# Whakamahia te kaihoko ki te whakaputa tuhinga
wawe = request.args.get("prompt")
putanga = agent.generate(prompt)
whakahokia {"putanga": putanga}
Utauta Whakaraupapa i LangChain
Ka whakarato a LangChain i te whānuitanga o nga taputapu orchestration e taea ai e nga kaihanga te whakahaere me te tukatuka i nga huingararaunga nui, me te whakauru ki nga momo puna raraunga me nga API. Ko etahi o nga taputapu orchestration matua i LangChain ko:
- Raraunga Raraunga: Ka whakarato a LangChain i te whānuitanga o nga puna raraunga e taea ai e nga kaiwhakawhanake te whakauru ki nga momo puna raraunga me nga API, penei i nga papanga raraunga, nga punaha konae, me nga API tukutuku.
- Kaiwhakatukatuka Raraunga: Ka whakarato a LangChain i te whānuitanga o nga kaitukatuka raraunga e taea ai e nga kaiwhakawhanake te tukatuka i nga huingararaunga nui, tae atu ki te horoi raraunga, te hurihanga raraunga, me te whakahiato raraunga.
- Kaiwhakaahua Tauira: Ka whakarato a LangChain i te whānuitanga o nga kaitoi tauira e taea ai e nga kaiwhakawhanake te whakahaere me te tuku tauira AI, tae atu ki te whakangungu tauira, te whakatakoto tauira, me te aroturuki tauira.
Whakakitenga me Chart.js
Hei tiro i te mahinga o to tatou punaha RAG, ka taea e tatou te whakamahi i te Chart.js, he whare pukapuka JavaScript rongonui mo te hanga tūtohi tauwhitiwhiti. Anei tetahi tauira mo te whakamahi i te Chart.js ki te tiro i te mahinga o to tatou punaha RAG:
const ctx = document.getElementById("myChart").getContext("2d");
tūtohi const = Tūtohi hou(ctx, {
momo: "raina",
raraunga: {
tapanga: ["Jan", "Feb", "Maehe", "Aperira", "Mei"],
huingararaunga: [
{
tapanga: "Te tika",
raraunga: [0.8, 0.9, 0.85, 0.88, 0.92],
Tae papamuri: "rgba(255, 99, 132, 0.2)",
Tae taitapa: "rgba(255, 99, 132, 1)",
te whanui taitapa: 1,
},
],
},
kōwhiringa: {
pauna: {
y: {
beginAtZero: pono,
},
},
},
});
Tiki 5-10 Nga Tono Whakamahinga/Momohipi
Anei nga 5-10 o runga o nga whakahau/snippets e tino whakamahia ana i LangChain:
mai i te langchain kawemai Agent: Kawemai i te akomanga Agent mai i LangChain.Agent = Agent(...): Waihangahia he tauira Agent hou.agent.generate(...): Whakamahia te Kaihoko hei whakaputa kupu.agent.query(...): Whakamahia te Agent ki te uiui i tetahi turanga matauranga.agent.train(...): Whakangunguhia te Kaihoko ki runga huingararaunga.agent.deploy(...): Tukuna te Kaihoko hei ratonga tukutuku.agent.monitor(...): Aroturuki i te mahi a te Kaihoko.agent.update(...): Whakahoutia te Kaihoko me nga raraunga hou.agent.delete(...): Mukua te tauira Agent.agent.save(...): Tiakina te tauira Agent ki te konae.
Whakamutunga
I roto i tenei tuhinga, kua tirotirohia e matou te ao o LangChain me tana whakauru ki nga angamahi tukutuku a Python penei i te FastAPI me te Flask. Kua korero ano matou mo te whakamahinga o nga taputapu whakahiato i roto i te LangChain me te whakarato tauira mo te whakamahi i te Chart.js ki te tiro i nga mahi o to maatau punaha RAG. Ma te LangChain, ka taea e nga kaiwhakawhanake te hanga i nga hoahoanga RAG tauine me te pai ka taea te whakahaere i nga mahi NLP uaua.