Fampidirana ny RAG miaraka amin'ny LLM ho an'ny workflows amin'ny fampivoarana rindrambaiko | B4N1

Fampidirana ny RAG miaraka amin'ny LLM ho an'ny workflows amin'ny fampivoarana rindrambaiko

9 months ago · b4n1 Read time: 4 min

Fampidirana ny RAG miaraka amin'ny LLM ho an'ny workflows amin'ny fampandrosoana ny rindranasa nohatsaraina

Fampidirana

Mivoatra haingana ny tontolon'ny fampiroboroboana rindrambaiko, tarihin'ny fandrosoana amin'ny faharanitan-tsaina (AI), fianarana milina (ML), ary fanodinana fiteny voajanahary (NLP). Teknolojia manan-danja roa izay manova ny fomba famolavolana rindrambaiko dia ny Retrieval-Augmented Generation (RAG) sy Large Language Models (LLMs). Ato amin'ity lahatsoratra ity, dia hijery ny fampidirana ny RAG miaraka amin'ny LLMs mba hanamafisana ny fizotry ny injeniera rindrambaiko, hanatsarana ny famoronana kaody, ary hanatsarana ny vokatra developer.

Inona no atao hoe Retrieval-Augmented Generation (RAG)?

RAG dia teknika iray manambatra ny tanjaky ny fomba fiasa mifototra amin'ny famerenana sy ny taranaka amin'ny NLP. Tafiditra ao anatin'izany ny fakana ireo fampahalalana mifandraika amin'ny lahatsoratra lehibe iray ary ny fampiasana azy io mba hampitomboana ny famokarana lahatsoratra vaovao. Ity fomba fiasa ity dia hita fa mahomby amin'ny asa NLP isan-karazany, ao anatin'izany ny famaliana fanontaniana, famintinana lahatsoratra ary famoronana kaody.

Inona no atao hoe Large Language Models (LLMs)?

Ny LLM dia karazana tamba-jotra neural natao hikarakarana sy hamokatra fiteny mitovy amin'ny olombelona. Matetika izy ireo dia voaofana amin'ny angon-drakitra marobe amin'ny lahatsoratra ary azo amboarina tsara ho an'ny asa manokana toy ny fandikana fiteny, famintinana lahatsoratra ary famoronana kaody. Nahazo vokatra manara-penitra amin'ny asa NLP maro ny LLM ary ampiasaina betsaka amin'ny fampiharana toy ny chatbots, mpanampy virtoaly ary rafitra fandikan-teny amin'ny fiteny.

Fampidirana ny RAG miaraka amin'ny LLM ho an'ny workflows amin'ny fampandrosoana ny rindranasa nohatsaraina

Ny fampidirana ny RAG amin'ny LLM dia mety hanova ny fomba famolavolana rindrambaiko. Amin'ny fampifangaroana ny tanjaky ny fomba fiasa mifototra amin'ny famerenana sy ny taranaka, ny RAG dia afaka manampy ny LLM hamokatra fehezan-dalàna marina kokoa sy mifanentana kokoa. Izany dia mety hitarika amin'ny fanatsarana lehibe amin'ny famokarana mpamorona, ny kalitaon'ny kaody, ary ny fizotran'ny fampivoarana rindrambaiko amin'ny ankapobeny.

Fitaovana Orkestra: LangChain sy DSPy

Mba hampidirana ny RAG amin'ny LLM dia mila fitaovana orkestra afaka mitantana ny fikorianan'ny angona sy mifehy ny fanatanterahana ny singa RAG sy LLM isika. Fitaovana orkestra roa malaza azo ampiasaina amin'izany tanjona izany dia LangChain sy DSPy.

LangChain

LangChain dia tranomboky Python open source izay manome API tsotra sy intuitive amin'ny fananganana rindranasa mifototra amin'ny RAG. Izy io dia mamela ny mpamorona hampiditra mora foana ny RAG amin'ny LLM sy ny singa NLP hafa mba hamoronana workflows amin'ny fampandrosoana rindrambaiko mahery vaika.

DSPy

DSPy dia tranomboky Python misokatra hafa izay manome API avo lenta amin'ny fananganana rindranasa mifototra amin'ny RAG. Izy io dia natao hiasa tsara amin'ny LLM sy ny singa NLP hafa, ka mahatonga azy io ho safidy tsara amin'ny fampidirana ny RAG amin'ny LLM.

Ohatra Code: Fampidirana ny RAG amin'ny LLM mampiasa LangChain

Ity misy ohatra kaody tsotra mampiseho ny fomba fampidirana ny RAG amin'ny LLM mampiasa LangChain:

import langchain
avy amin'ny langchain.chains manafatra RAGCain


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

# Farito ny modely LLM
llm_model = langchain.LLM(
    anarana="my_llm",
    model="my_llm_model",
)

# Mamorona rojo RAG
rag_chain = RAGChain(
    anarana="my_rag_chain",
    model=rag_model,
    llm=llm_modely,
)

# Ampiasao ny rojo RAG hamorona kaody
code = rag_chain.generate(
    input_text="Soraty asa izay maka integer roa ho fampidirana ary mamerina ny isany",
)

printy (kaody)

Ity ohatra code ity dia mampiseho ny fomba hamaritana modely RAG amin'ny fampiasana LangChain, mamaritra modely LLM, mamorona rojo RAG, ary mampiasa ny rojo hamokarana kaody.

Didy/Snippet 5-10 ambony indrindra

Ireto ny baiko / snippet 5-10 ambony indrindra amin'ny fampidirana ny RAG amin'ny LLM mampiasa LangChain sy DSPy:

  1. langchain.RAG(): Mamorona ohatra modely RAG.
  2. langchain.Index(): Mamorona ohatra fanondroana fitehirizana sy fakana antontan-taratasy.
  3. langchain.Retriever(): Mamorona ohatra retriever amin'ny fakana ireo antontan-taratasy mifandraika amin'izany.
  4. langchain.Generator(): Mamorona ohatra mpamokatra ho an'ny famoronana lahatsoratra vaovao.
  5. langchain.LLM(): Mamorona ohatra modely LLM.
  6. RAGCain(): Mamorona ohatra rojo RAG.
  7. rag_chain.generate(): Mampiasa ny rojo RAG hamorona kaody.
  8. llm_model.generate(): Mampiasa ny maodely LLM hamorona kaody.
  9. index.add_document(): Manampy antontan-taratasy amin'ny index.
  10. retriever.retrieve(): maka ireo antontan-taratasy mifandraika amin'ny fampiasana ny retriever.

Visualization

Ity misy sary mampiseho ny singa RAG sy LLM mampiasa Chart.js:

{
  "type": "bar",
  "data": {
    "labels": ["RAG", "LLM"],
    "datasets": [
      {
        "label": "Ireo singa",
        "data": [10, 20],
        "loko loko": ["#4CAF50", "#FF9800"]
      }
    ]
  },
  "safidy": {
    "lohateny": {
      "fampisehoana": marina,
      "text": "Rag sy LLM Components"
    },
    "mizana": {
      "yAxes": [
        {
          "fampisehoana": marina,
          "beginAtZero": marina
        }
      ]
    }
  }
}

Ity sary ity dia mampiseho ny isan'ny singa ao amin'ny maodely RAG sy LLM.

Famaranana

Ny fampidirana ny RAG amin'ny LLM dia mety hanova ny fomba famolavolana rindrambaiko. Amin'ny fampifangaroana ny tanjaky ny fomba fiasa mifototra amin'ny famerenana sy ny taranaka, ny RAG dia afaka manampy ny LLM hamokatra fehezan-dalàna marina kokoa sy mifanentana kokoa. Izany dia mety hitarika amin'ny fanatsarana lehibe amin'ny famokarana mpamorona, ny kalitaon'ny kaody, ary ny fizotran'ny fampivoarana rindrambaiko amin'ny ankapobeny. Miaraka amin'ny fitaovana orkestra toa an'i LangChain sy DSPy, ny mpamorona dia afaka mampiditra mora foana ny RAG miaraka amin'ny LLM sy ny singa NLP hafa mba hamoronana rindranasa fampandrosoana rindrambaiko matanjaka.


Have Questions?

Let's Talk

Contact me on LinkedIn