Jieun RAG a | B4N1

Jieun RAG a

7 months ago · b4n1 Read time: 4 min

** Mangpaat Alat Orkestrasi pikeun Arsitéktur Parangkat Lunak anu Dikuatkeun AI**

Pendahuluan

Ngaronjatna paménta pikeun arsitéktur parangkat lunak anu dikuatkeun ku AI parantos nyababkeun pamekaran sababaraha alat orkestrasi anu ngamungkinkeun integrasi lancar tina kamampuan Artificial Intelligence (AI) sareng Machine Learning (ML) kana sistem parangkat lunak. Dina tulisan ieu, urang bakal ngajalajah palaksanaan arsitéktur parangkat lunak anu didorong ku AI nganggo alat orkestrasi sapertos LangChain sareng DSPy, kalayan fokus kana ngahijikeun kamampuan RAG (Reasoning and Action Graph) sareng LLM (Model Basa ageung) pikeun ningkatkeun skalabilitas, kinerja, sareng kaamanan.

Naon Alat Orkestrasi?

Alat orkestrasi mangrupikeun kerangka parangkat lunak anu ngamungkinkeun otomatisasi alur kerja sareng prosés rumit ku ngahijikeun sababaraha jasa, aplikasi, sareng sistem. Aranjeunna nyayogikeun platform terpusat pikeun ngatur sareng koordinasi interaksi antara komponén anu béda, mastikeun palaksanaan tugas anu efisien sareng skalabel.

LangChain: Alat Orkestrasi Berbasis Python

LangChain mangrupikeun perpustakaan Python open-source anu nyayogikeun kerangka komprehensif pikeun ngawangun arsitéktur parangkat lunak anu didamel ku AI. Éta nawiskeun sajumlah fitur, kalebet:

  • ** RAG (Nalar jeung Aksi Grafik) Integrasi **: LangChain nyadiakeun diwangun-di palaksanaan RAG, sangkan kreasi penalaran na Peta grafik kompléks nu bisa dipaké pikeun modél sarta ngaéksekusi workflows AI-disetir.
  • **LLM (Modél Basa ageung) Integrasi **: LangChain ngarojong integrasi LLMs, kayaning LLaMA na BERT, pikeun ngolah basa alam jeung tugas generasi.
  • ** Skalabilitas sareng Kinerja **: LangChain dirancang pikeun nanganan beban kerja AI skala ageung, nyayogikeun palaksanaan tugas anu efisien sareng skalabel.

Nerapkeun Arsitéktur Perangkat Lunak Didorong AI sareng LangChain

Pikeun nunjukkeun palaksanaan arsitéktur parangkat lunak anu didorong ku AI nganggo LangChain, hayu urang pertimbangkeun conto saderhana chatbot anu ngagunakeun RAG pikeun alesan ngeunaan patarosan pangguna sareng ngahasilkeun réspon.

impor langchain
ti langchain.chains impor llm


rag = langchain.RAG(
    nami = "chatbot_rag",
    titik=[
        {"name": "salam", "text": "Halo, kumaha abdi tiasa ngabantosan anjeun?"},
        {"name": "goodbye", "text": "Wilujeng sumping, senang ngobrol sareng anjeun."},
    ],
    tepi = [
        {"ti": "salam", "ka": "wilujeng", "kaayaan": "pamaké_ngucapkeun_wilujeng"},
    ],
)

# Jieun LLM
llm = llm.LLM(
    nami = "chatbot_llm",
    model="llama",
    max_tokens=100,
)

# Jieun ranté chatbot
ranté = langchain.Chain(
    nami = "chainbot_chain",
    llm=llm,
    gogog = gogog,
)

# Uji chatbot
user_input = "Halo, kumaha damang?"
réspon = chain.run(user_input)
print (réspon)

DSPy: Alat Orkestrasi Berbasis Karat

DSPy mangrupikeun alat orkestrasi berbasis Rust anu nyayogikeun kinerja tinggi sareng kerangka skala pikeun ngawangun arsitéktur parangkat lunak anu didamel ku AI. Éta nawiskeun sajumlah fitur, kalebet:

  • **RAG (Nalar jeung Aksi Grafik) Integrasi **: DSPy nyadiakeun diwangun-di palaksanaan RAG, sangkan kreasi penalaran na Peta grafik kompléks nu bisa dipaké pikeun model jeung ngaéksekusi workflows AI-disetir.
  • LLM (Modél Basa Gedé) Integrasi: DSPy ngadukung integrasi LLM, sapertos LLaMA sareng BERT, pikeun ngolah basa alami sareng tugas generasi.
  • Skalabilitas sareng Kinerja: DSPy dirancang pikeun nanganan beban kerja AI skala ageung, nyayogikeun palaksanaan tugas anu efisien sareng skalabel.

Nerapkeun Arsitéktur Perangkat Lunak Didorong AI sareng DSPy

Pikeun nunjukkeun palaksanaan arsitéktur parangkat lunak anu didorong ku AI nganggo DSPy, hayu urang pertimbangkeun conto saderhana chatbot anu ngagunakeun RAG pikeun alesan ngeunaan patarosan pangguna sareng ngahasilkeun réspon.

ngagunakeun dspy :: ranté;
ngagunakeun dspy::llm;

// Jieun RAG a
hayu rag = ranté::RAG:: anyar(
    "chatbot_rag",
    vec![
        ranté :: Node :: anyar ("salam", "Halo, kumaha abdi tiasa nulungan anjeun?"),
        ranté :: Node :: anyar ("wilujeng", "wilujeng, éta nice ngobrol sareng anjeun."),
    ],
    vec![
        ranté:: Tepi:: anyar ("salam", "wilujeng", "pamaké_ngucapkeun_wilujeng"),
    ],
);

// Jieun hiji LLM
hayu llm = llm::LLM::new(
    "chatbot_llm",
    "Lama",
    100,
);

// Jieun ranté chatbot
hayu ranté = ranté:: Ranté:: anyar(
    "chatbot_chain",
    llm,
    lawon,
);

// Nguji chatbot
let user_input = "Halo, kumaha damang?";
hayu respon = chain.run (user_input);
println!("{}", respon);

Top 5-10 Paréntah / Potongan Panggunaan

Ieu sababaraha paréntah sareng snippét anu paling sering dianggo pikeun LangChain sareng DSPy:

  • LangChain:
    • langchain.RAG (): Nyiptakeun conto RAG anyar.
    • langchain.LLM (): Nyiptakeun conto LLM anyar.
    • langchain.Chain (): Nyiptakeun conto ranté anyar.
    • rag.run (): Ngajalankeun RAG sarta ngahasilkeun respon.
    • llm.run (): Ngajalankeun LLM sarta ngahasilkeun respon.
  • DSPy:
    • dspy :: chain :: RAG :: new (): Nyiptakeun conto RAG anyar.
    • dspy::llm::LLM::new(): Nyiptakeun conto LLM anyar.
    • dspy :: chain :: Chain :: new (): Nyiptakeun conto ranté anyar.
    • chain.run (): Ngajalankeun ranté sarta ngahasilkeun respon.

Visualisasi

Ieu mangrupikeun visualisasi saderhana tina kamampuan RAG sareng LLM nganggo Chart.js:

const ctx = document.getElementById( 'MyChart').getContext('2d');
bagan const = Bagan anyar (ctx, {
    tipe: 'bar',
    data: {
        labél: ['RAG', 'LLM'],
        susunan data: [{
            label: 'Kamampuan',
            data: [10, 20],
            Warna latar: [
                'rgba(255, 99, 132, 0.2)',
                'rgba(54, 162, 235, 0.2)',
            ],
            Warna wates: [
                'rgba(255, 99, 132, 1)',
                'rgba(54, 162, 235, 1)',
            ],
            lebar wates: 1
        }]
    },
    pilihan: {
        timbangan: {
            y: {
                beginAtZero: leres
            }
        }
    }
});

Kacindekan

LangChain sareng DSPy mangrupikeun alat orkestrasi anu kuat anu ngamungkinkeun palaksanaan arsitéktur parangkat lunak anu didorong ku AI nganggo kamampuan RAG sareng LLM. Ku ngamangpaatkeun alat-alat ieu, pamekar tiasa nyiptakeun sistem parangkat lunak anu tiasa skala, kinerja, sareng aman anu tiasa ngadamel beban kerja AI anu kompleks. Kalawan betah pamakéan sarta kalenturan maranéhanana, LangChain na DSPy mangrupakeun pilihan idéal pikeun ngawangun arsitéktur software AI-Powered.

Rekomendasi

Dumasar kana diskusi dina tulisan ieu, ieu sababaraha saran pikeun pamekar anu hoyong nerapkeun arsitéktur parangkat lunak anu didorong ku AI nganggo LangChain sareng DSPy:

  • Mimitian ku diajar dasar LangChain sareng DSPy, kalebet kamampuan RAG sareng LLM na.
  • Ékspérimén sareng conto saderhana, sapertos conto chatbot, pikeun ngaraosan kumaha alatna jalan.
  • Saeutik demi saeutik ngaléngkah ka proyék-proyék anu langkung kompleks, sapertos ngawangun sistem rekomendasi atanapi jalur pipa pamrosesan basa alami.
  • Paké bagian luhur 5-10 Paréntah / Potongan paling dipaké salaku pituduh rujukan pikeun paréntah umum tur snippét.
  • Visualize kamampuan RAG sareng LLM anjeun nganggo Chart.js pikeun ngartos langkung saé ngeunaan hubungan antara komponén anu béda.

Ku nuturkeun saran ieu, pamekar tiasa muka konci poténsi pinuh ku LangChain sareng DSPy sareng ngawangun arsitéktur parangkat lunak anu didamel ku AI anu tiasa ngadamel beban kerja anu rumit sareng nyayogikeun kinerja sareng skalabilitas anu luar biasa.


Have Questions?

Let's Talk

Contact me on LinkedIn