Ƙirƙiri RAG | B4N1

Ƙirƙiri RAG

7 months ago · b4n1 Read time: 5 min

** Yin Amfani da Kayan Aikin Orchestration don Gine-ginen Software Mai ƙarfi na AI**

** Gabatarwa ***

Haɓaka buƙatun ƙirar ƙirar software mai ƙarfi ta AI ya haifar da haɓaka kayan aikin kaɗe-kaɗe daban-daban waɗanda ke ba da damar haɗin kai na Artificial Intelligence (AI) da damar Koyon Inji (ML) cikin tsarin software. A cikin wannan labarin, za mu bincika aiwatar da tsarin gine-ginen software na AI ta amfani da kayan aikin orchestration kamar LangChain da DSPy, tare da mayar da hankali kan haɗakar RAG (Reasoning and Action Graph) da LLM (Large Language Model) damar haɓaka haɓaka, aiki, da tsaro.

Mene ne Kayan Aikin Orchestration?

Kayan aikin Orchestration su ne tsarin software waɗanda ke ba da damar sarrafa kansa na hadaddun ayyukan aiki da matakai ta hanyar haɗa ayyuka da yawa, aikace-aikace, da tsarin. Suna samar da dandamali mai mahimmanci don sarrafawa da daidaita hulɗar tsakanin sassa daban-daban, tabbatar da ingantaccen aiki da daidaitawa na ayyuka.

LangChain: Kayan aikin Orchestration na tushen Python

LangChain babban ɗakin karatu ne na Python mai buɗewa wanda ke ba da cikakkiyar tsari don gina gine-ginen software mai ƙarfi na AI. Yana ba da fasali da yawa, gami da:

  • ** RAG (Dalilin da Aiki Graph) Haɗin kai ***: LangChain yana ba da aikin RAG da aka gina a ciki, yana ba da damar ƙirƙirar ƙwararrun tunani da zane-zane waɗanda za a iya amfani da su don yin ƙira da aiwatar da ayyukan AI-kore.
  • ** LLM (Babban Samfuran Harshe) Haɗin kai ***: LangChain yana goyan bayan haɗin gwiwar LLMs, kamar LLAMA da BERT, don sarrafa harshe na halitta da ayyukan tsarawa.
  • ** Scalability and Performance ***: An tsara LangChain don ɗaukar nauyin aikin AI mai girma, yana samar da ingantaccen aiki da ƙima na ayyuka.

** Aiwatar da AI-Driven Architecturen Software tare da LangChain ***

Don nuna aiwatar da gine-ginen software na AI ta amfani da LangChain, bari mu yi la'akari da sauƙi misali na chatbot wanda ke amfani da RAG don yin tunani game da tambayoyin mai amfani da samar da amsa.

`` Python shigo da langchain daga langchain.chains shigo da lm

rag = langchain.RAG( suna = "chatbot_rag", nodes=[ {"name": "gaisuwa", "rubutu": "Sannu, ta yaya zan iya taimaka muku?"}, {"name": "lafiya", "text": "Barka dai, mun yi kyau muna hira da ku."}, ], gefuna =[ {"daga": "gaisuwa", "zuwa": "lafiya", "sharadi": "user_says_bankwana"}, ], )

Ƙirƙiri LLM

llm = lm.LLM( suna = "chatbot_llm", model = "llama", max_tokens=100, )

Ƙirƙiri sarkar chatbot

sarkar = langchain. Sarkar ( suna = "chatbot_chain", lm=llm, rag=rago, )

Gwada chatbot

user_input = "Sannu, ya kuke?" amsa = sarkar.run(user_input) buga(amsa)


** DSPy: Kayan Aikin Orchestration Na Tushen Tsatsa**


DSPy kayan aikin kaɗe-kaɗe ne na tushen tsatsa wanda ke ba da babban aiki da tsari mai ƙima don gina gine-ginen software mai ƙarfin AI. Yana ba da fasali da yawa, gami da:

* ** RAG (Dalilin da Aiki Graph) Haɗin kai ***: DSPy yana ba da aikin RAG da aka gina a ciki, yana ba da damar ƙirƙirar tunani mai rikitarwa da zane-zanen aiki waɗanda za a iya amfani da su don yin ƙira da aiwatar da ayyukan AI-kore.
* **LLM (Babban Samfuran Harshe) Haɗin kai ***: DSPy yana goyan bayan haɗin LLMs, kamar LLAMA da BERT, don sarrafa harshe na halitta da ayyukan tsarawa.
* ** Scalability and Performance ***: An tsara DSPy don ɗaukar nauyin aikin AI mai girma, yana samar da ingantaccen aiki da ƙima na ayyuka.

** Aiwatar da AI-Driven Software Architecture tare da DSPy ***


Don nuna aiwatar da gine-ginen software na AI ta amfani da DSPy, bari mu yi la'akari da sauƙi misali na chatbot wanda ke amfani da RAG don yin tunani game da tambayoyin mai amfani da samar da amsa.

``tsatsa
amfani da dspy :: sarkar;
amfani dspy::llm;

// Ƙirƙiri RAG
let rag = sarkar::RAG:: sabo(
    "chatbot_rag",
    ku![
        sarkar :: Node:: sabo("gaisuwa", "Sannu, ta yaya zan iya taimaka muku?"),
        sarkar :: Node:: sabo ("wallahi", "Barka da zuwa, yayi kyau muna hira da ku."),
    ],
    ku![
        sarkar::Edge::sabo("gaisuwa", "bankwana", "user_ces_bankwana"),
    ],
);

// Ƙirƙiri LLM
bari llm = llm::LLM:: sabo(
    "chatbot_lm",
    "lama",
    100,
);

// Ƙirƙiri sarkar chatbot
bar sarkar = sarkar :: sarkar :: sabo(
    "chatbot_chain",
    lm,
    raggu,
);

// Gwada chatbot
bari user_input = "Sannu, ya kuke?";
bari amsa = sarkar.run (user_input);
println!("{}", amsa);

** Manyan Dokoki 5-10 da Akafi Amfani da su/Snippets**

Anan akwai wasu umarni da snippets da aka fi amfani da su don LangChain da DSPy:

*LangChain: * langchain.RAG(): Yana haifar da sabon misali RAG. * langchain.LLM(): Yana haifar da sabon misalin LLM. * langchain.Chain(): Yana haifar da sabon misali sarkar. * rag.run(): Yana gudanar da RAG kuma yana haifar da amsa. * llm.run(): Yana gudanar da LLM kuma yana haifar da amsa.

  • DSP:
    • dspy :: sarkar :: RAG :: sabo(): Yana haifar da sabon misalin RAG.
    • dspy::llm::LLM::sabon(): Yana haifar da sabon misalin LLM.
    • dspy :: sarkar :: Sarkar :: sabo(): Yana ƙirƙira sabon misalin sarkar.
    • chain.run(): Yana gudanar da sarkar kuma yana haifar da amsa.

Kallon gani

Anan ga sauƙin gani na iyawar RAG da LLM ta amfani da Chart.js:

''javascript const ctx = document.getElementById('myChart').getContext('2d'); const ginshiƙi = sabon Chart (ctx, { irin: 'bar', data: { Tag: ['RAG', 'LLM'], bayanai: [{ tambarin: 'Aiki', bayanai: [10, 20], bango launi: [ 'rgba(255, 99, 132, 0.2)', 'rgba(54, 162, 235, 0.2)', ], iyakar launi: [ 'rgba(255, 99, 132, 1)', 'rgba(54, 162, 235, 1)', ], iyakar iyaka: 1 }] }, zabin: { sikeli: { y: { startAtZero: gaskiya } } } });


**Kammalawa**


LangChain da DSPy kayan aiki ne masu ƙarfi waɗanda ke ba da damar aiwatar da gine-ginen software na AI ta amfani da damar RAG da LLM. Ta hanyar yin amfani da waɗannan kayan aikin, masu haɓakawa na iya ƙirƙirar sikeli, aiki, da amintattun tsarin software waɗanda zasu iya ɗaukar nauyin ayyukan AI masu rikitarwa. Tare da sauƙin amfani da sassauci, LangChain da DSPy sune zaɓi masu kyau don gina gine-ginen software na AI.

**Shawarwari**


Dangane da tattaunawa a cikin wannan labarin, ga wasu shawarwari ga masu haɓakawa waɗanda ke son aiwatar da gine-ginen software na AI ta amfani da LangChain da DSPy:

* Fara ta hanyar koyan kayan yau da kullun na LangChain da DSPy, gami da damar RAG da LLM.
* Gwada tare da misalai masu sauƙi, kamar misalin chatbot, don jin yadda kayan aikin ke aiki.
* Sannu a hankali ci gaba zuwa ƙarin hadaddun ayyuka, kamar gina tsarin shawarwari ko bututun sarrafa harshe na halitta.
* Yi amfani da Babban 5-10 Mafi Amfani da Dokokin/Snippets a matsayin jagorar tunani don umarni na gama-gari da snippets.
* Hana iyawar RAG da LLM ta amfani da Chart.js don samun kyakkyawar fahimtar alakar da ke tsakanin sassa daban-daban.

Ta bin waɗannan shawarwarin, masu haɓakawa za su iya buɗe cikakkiyar damar LangChain da DSPy da gina gine-ginen software mai ƙarfi na AI wanda zai iya ɗaukar nauyin ayyuka masu rikitarwa da samar da aiki na musamman da haɓaka.

Have Questions?

Let's Talk

Contact me on LinkedIn