Ag aonachadh RAG le LLMn airson Sruth-obrach Leasachadh Bathar-bog Leasaichte | B4N1

Ag aonachadh RAG le LLMn airson Sruth-obrach Leasachadh Bathar-bog Leasaichte

9 months ago · b4n1 Read time: 4 min

Ag aonachadh RAG le LLMn airson sruthan obrach leasachadh bathar-bog leasaichte

** Ro-ràdh**

Tha cruth-tìre leasachadh bathar-bog ag atharrachadh gu luath, air a stiùireadh le adhartasan ann an inntleachd fuadain (AI), ionnsachadh innealan (ML), agus giollachd cànain nàdarra (NLP). Is e dà phrìomh theicneòlas a tha ag atharrachadh an dòigh sa bheil sinn a’ leasachadh bathar-bog a tha ann an Retrieval-Augmented Generation (RAG) agus Modalan Cànain Mòr (LLMn). San artaigil seo, nì sinn sgrùdadh air amalachadh RAG le LLMn gus pròiseasan innleadaireachd bathar-bog a sgioblachadh, gineadh còd a leasachadh, agus cinneasachd leasaiche àrdachadh.

** Dè a th’ ann an Ginealach Meudaichte Ath-ghairm (RAG)?**

Is e dòigh-obrach a th’ ann an RAG a tha a’ cothlamadh neartan dhòighean-obrach stèidhichte air lorg agus ginealach a thaobh NLP. Tha e a’ ciallachadh a bhith a’ faighinn fiosrachadh buntainneach air ais bho chorpas mòr teacsa agus ga chleachdadh gus gineadh teacsa ùr a mheudachadh. Thathas air sealltainn gu bheil an dòigh-obrach seo air leth èifeachdach ann an grunn ghnìomhan NLP, a’ gabhail a-steach freagairt cheistean, geàrr-chunntas teacsa, agus gineadh còd.

Dè a th’ ann am Modalan Cànain Mòr (LLMn)?

Is e seòrsa de lìonra neòil a th’ ann an LLMn a tha air a dhealbhadh gus cànan coltach ri duine a phròiseasadh agus a ghineadh. Mar as trice bidh iad air an trèanadh air dàta mòr de theacsa agus faodar an gleusadh airson gnìomhan sònraichte leithid eadar-theangachadh cànain, geàrr-chunntas teacsa, agus gineadh còd. Tha LLMn air toraidhean ùr-nodha a choileanadh ann an iomadh gnìomh NLP agus tha iad air an cleachdadh gu farsaing ann an tagraidhean leithid chatbots, luchd-cuideachaidh brìgheil, agus siostaman eadar-theangachaidh cànain.

Ag aonachadh RAG le LLMn airson sruthan obrach leasachadh bathar-bog leasaichte

Tha comas aig amalachadh RAG le LLMn an dòigh sa bheil sinn a’ leasachadh bathar-bog atharrachadh. Le bhith a’ cothlamadh neartan dhòighean-obrach stèidhichte air lorg agus ginealach, faodaidh RAG LLMn a chuideachadh gus còd nas cruinne agus nas iomchaidh a ghineadh. Faodaidh seo leantainn gu leasachaidhean mòra ann an cinneasachd leasaiche, càileachd còd, agus sruthan obrach leasachadh bathar-bog iomlan.

Innealan Orcastra: LangChain agus DSPy

Gus RAG fhilleadh a-steach le LLMn, feumaidh sinn innealan orcastra as urrainn sruth dàta a riaghladh agus smachd a chumail air coileanadh cho-phàirtean RAG agus LLM. Is e dà inneal orchestration mòr-chòrdte a ghabhas cleachdadh airson an adhbhair seo LangChain agus DSPy.

LangChain

Tha LangChain na leabharlann Python le stòr fosgailte a bheir seachad API sìmplidh agus intuitive airson tagraidhean stèidhichte air RAG a thogail. Leigidh e le luchd-leasachaidh RAG fhilleadh a-steach gu furasta le LLMn agus co-phàirtean NLP eile gus sruthan-obrach leasachadh bathar-bog cumhachdach a chruthachadh.

DSPy

Tha DSPy na leabharlann Python stòr fosgailte eile a bheir seachad API àrd-ìre airson tagraidhean stèidhichte air RAG a thogail. Tha e air a dhealbhadh gus obrachadh gu sgiobalta le LLMn agus co-phàirtean NLP eile, ga fhàgail na dheagh roghainn airson RAG a cheangal ri LLMn.

Eisimpleir còd: Ag aonachadh RAG le LLMn a’ cleachdadh LangChain

Seo eisimpleir còd sìmplidh a sheallas mar as urrainn dhut RAG fhilleadh a-steach le LLMn a’ cleachdadh LangChain:

toirt a-steach langchain
bho langchain.chains import RAGChain


rag_model = langchain.RAG(
    index=langchain.Index(
        ainm = "my_index",
        documents=["document1", "document2", "document3"],
    ),
    retriever=langchain.Retriever(
        ainm = "my_retriever",
        model = "my_retriever_model",
    ),
    generator=langchain.Generator(
        ainm = "my_generator",
        model = "my_generator_model",
    ),
)

# Mìnich am modal LLM
llm_model = langchain.LLM(
    ainm = "my_llm",
    model = "my_llm_model",
)

# Cruthaich slabhraidh RAG
rag_chain = RAGChain(
    ainm = "my_rag_chain",
    modail=rag_model,
    llm=llm_modail,
)

# Cleachd an t-sèine RAG gus còd a ghineadh
còd = rag_chain.generate(
    input_text = "Sgrìobh gnìomh a ghabhas dà shlànaighear mar ion-chur agus a thilleas an t-suim aca",
)

clò-bhualadh (còd)

Tha an eisimpleir còd seo a’ sealltainn mar a mhìnicheas tu modal RAG a’ cleachdadh LangChain, a’ mìneachadh modal LLM, a’ cruthachadh slabhraidh RAG, agus a’ cleachdadh an t-seine gus còd a ghineadh.

** 5-10 Òrdughan/Biotag as motha a chleachdar**

Seo na 5-10 òrdughan / pìosan as motha a chleachdar airson RAG a thoirt a-steach le LLMn a’ cleachdadh LangChain agus DSPy:

  1. langchain.RAG(): A' cruthachadh eisimpleir de mhodail RAG.
  2. langchain.Index(): A' cruthachadh eisimpleir clàr-amais airson sgrìobhainnean a stòradh agus fhaighinn air ais.
  3. langchain.Retriever(): A' cruthachadh eisimpleir retriever airson sgrìobhainnean iomchaidh fhaighinn air ais.
  4. langchain.Generator(): A' cruthachadh eisimpleir gineadair airson teacsa ùr a chruthachadh.
  5. langchain.LLM(): A' cruthachadh eisimpleir de mhodail LLM.
  6. RAGChain(): A' cruthachadh eisimpleir slabhraidh RAG.
  7. rag_chain.generate(): A' cleachdadh an t-sreath RAG gus còd a ghineadh.
  8. llm_model.generate(): A' cleachdadh a' mhodail LLM gus còd a ghineadh.
  9. index.add_document(): A' cur sgrìobhainn ris a' chlàr-amais.
  10. retriever.retrieve(): A' faighinn air ais na sgrìobhainnean iomchaidh a' cleachdadh an inneal fhaighinn air ais.

Sealladh

Seo dealbh de na co-phàirtean RAG agus LLM a’ cleachdadh Chart.js:

{
  "type": "bàr",
  "dàta": {
    "labels": ["RAG", "LLM"],
    "stòr-dàta": [
      {
        "label": "Co-phàirtean",
        "dàta": [10, 20],
        "backgroundColor": ["#4CAF50", "#FF9800"]
      }
    ]
  },
  "roghainnean": {
    "tiotal": {
      "taisbeanadh": fìor,
      "text": "Co-phàirtean RAG agus LLM"
    },
    "sgàilean": {
      "yAxes": [
        {
          "taisbeanadh": fìor,
          "toiseach AtZero": fìor
        }
      ]
    }
  }
}

Tha an dealbh seo a’ sealltainn an àireamh de cho-phàirtean anns na modalan RAG agus LLM.

** Co-dhùnadh**

Tha comas aig amalachadh RAG le LLMn an dòigh sa bheil sinn a’ leasachadh bathar-bog atharrachadh. Le bhith a’ cothlamadh neartan dhòighean-obrach stèidhichte air lorg agus ginealach, faodaidh RAG LLMn a chuideachadh gus còd nas cruinne agus nas iomchaidh a ghineadh. Faodaidh seo leantainn gu leasachaidhean mòra ann an cinneasachd leasaiche, càileachd còd, agus sruthan obrach leasachadh bathar-bog iomlan. Le innealan orcastra mar LangChain agus DSPy, is urrainn do luchd-leasachaidh RAG fhilleadh a-steach gu furasta le LLMn agus co-phàirtean NLP eile gus sruthan-obrach leasachaidh bathar-bog cumhachdach a chruthachadh.


Have Questions?

Let's Talk

Contact me on LinkedIn