Ho kopanya RAG le LLMs bakeng sa Dynamic Software Architecture: Tataiso e sebetsang
Selelekela
Lilemong tsa morao tjena, lefapha la meralo ea software le bile le phetoho e kholo ka ho fihla ha mekhoa ea Large Language Models (LLMs) le Retrieval-Augmented Generation (RAG). Tšebelisano lipakeng tsa mahlale ana a mabeli e na le monyetla oa ho fetola tsela eo re ralang le ho nts'etsapele litsamaiso tsa software. Sehloohong sena, re tla hlahloba ho kopanngoa ha RAG le LLM bakeng sa meralo e matla ea software, ho kenyelletsa le maano a ts'ebetsong ho sebelisa lisebelisoa tsa 'mino oa liletsa tse kang LangChain le DSPy.
RAG ke eng?
RAG ke mokhoa o kopanyang matla a mefuta e thehiloeng ho Retrieval-based le Generation ho hlahisa liphetho tsa mongolo tsa boleng bo holimo. Maikutlo a mantlha ka morao ho RAG ke ho sebelisa mokhoa oa ho khutlisa ho khetha litokomane kapa litemana tse amehang ho tsoa ho sehlopha se seholo, ebe o sebelisa mohlala oa moloko ho hlahisa mongolo o thehiloeng litemaneng tsena tse khutlisitsoeng. Mokhoa ona o bontšitse ntlafatso e kholo mesebetsing e kang ho araba lipotso, kakaretso ea mongolo, le AI ea moqoqo.
LLM ke eng?
Li-LLM ke mofuta oa bohlale ba maiketsetso bo koetliselitsoeng lintlha tse ngata tsa mongolo ho hlahisa litholoana tse kang tsa batho. Hangata mehlala ena e thehiloe holim'a meralo ea li-transformer 'me e fihletse liphello tsa morao-rao mesebetsing e mengata ea ho sebetsana le puo ea tlhaho. Li-LLM li sebetsa ka mokhoa o fapaneng haholo 'me li ka sebelisoa bakeng sa mesebetsi e kang phetolelo ea puo, kakaretso ea mongolo le AI ea moqoqo.
Hobaneng ho Kopanela RAG le LLMs?
Ho kopanngoa ha RAG le LLM ho fana ka melemo e mengata bakeng sa meralo e matla ea software:
- Bonepa bo Ntlafetseng: RAG e ka thusa LLMs ho khetha litokomane kapa litemana tse amehang ho tsoa sehlopheng se seholo, e leng se lebisang ho liphetho tse nepahetseng le tse rutang haholoanyane.
- Boitsebelo bo Eketsehileng: RAG e ka fokotsa maemo a holimo a computational a LLM ka ho khetha feela litokomane kapa litemana tse amehang, e leng se lebisang ho nako ea karabo e potlakileng.
- Ho Fetoleha ho Fetiseng: RAG e ka sebelisoa ho ikamahanya le maemo a feto-fetohang a likhetho le litlhoko tsa basebelisi, ho lumella LLM ho hlahisa liphetho tsa mongolo tse bohlokoa le tse khahlang.
Maano a Phethahatso
Ho na le maano a 'maloa a ts'ebetsong a ho kopanya RAG le LLMs, ho kenyelletsa:
- **LangChain **: LangChain ke laebrari e bulehileng e fanang ka API e bonolo le e utloahalang bakeng sa ho haha mefuta e thehiloeng ho RAG. E ts'ehetsa mefuta e mengata ea LLM mme e ka sebelisoa ho kenya tšebetsong meralo e rarahaneng ea RAG.
- DSPy: DSPy ke laebrari ea Python e fanang ka mokhoa o bonolo le o sebetsang oa ho kenya ts'ebetsong mefuta e thehiloeng ho RAG. E ts'ehetsa mefuta e mengata ea LLM mme e ka sebelisoa ho kenya tšebetsong meralo e rarahaneng ea RAG.
Mohlala oa khoutu
Mona ke mohlala o bonolo oa khoutu o bonts'ang mokhoa oa ho sebelisa LangChain ho kopanya RAG le LLMs:
import langchain
ho tsoa ho langchain.chains import RAGChain
ho tsoa ho langchain.llms kenya LLaMA
llama = LLaMA()
# Theha mofuta oa RAGChain
rag_chain = RAGChain(llama, retrieval_model = "t5-e nyane")
# Hlalosa molaetsa
kapele = "Motse-moholo oa Fora ke eng?"
# Hlahisa tlhahiso ea mongolo
tlhahiso = rag_chain.run(prompt)
hatisa(sephetho)
Mohlala ona oa khoutu o bontša mokhoa oa ho sebelisa LangChain ho etsa mohlala oa RAGChain o kopanyang mohlala oa LLaMA le mokhoa oa ho khutlisa. Joale mohlala oa RAGChain o sebelisoa ho hlahisa tlhahiso ea mongolo e thehiloeng ho hang.
Kaholimo ho 5-10 Litaelo/Lipotlana tse Sebelisitsoeng ka ho Fetisisa
Mona ke tse 5-10 tse sebelisoang ka ho fetesisa litaelo / likotoana tsa ho kopanya RAG le LLMs:
langchain.RAGChain(llama, retrieval_model="t5-small"): E etsa mohlala oa RAGChain o kopanyang mohlala oa LLaMA le mohlala oa ho khutlisa.llama.run(prompt): E hlahisa tlhahiso ea mongolo ho ipapisitsoe le molaetsa o sebelisang mofuta oa LLaMA.rag_chain.run(prompt): E hlahisa tlhahiso ea mongolo e ipapisitseng le ts'ebetso e sebelisang mofuta oa RAGChain.langchain.chains.RAGChain(llama, retrieval_model="t5-small", max_length=1024): E etsa mohlala oa RAGChain o kopanyang mohlala oa LLaMA ka mokhoa oa ho khutlisa le ho beha bolelele bo boholo ba mongolo oa tlhahiso.llama.get_input(prompt): E khutlisa mongolo o kentsoeng oa mofuta oa LLaMA.rag_chain.get_output(prompt): E khutlisa mongolo o hlahisoang oa mofuta oa RAGChain.langchain.chains.RAGChain(llama, retrieval_model="t5-small", batch_size=32): E etsa mohlala oa RAGChain o kopanyang mohlala oa LLaMA ka mokhoa oa ho khutlisa le ho beha boholo ba batch.llama.get_output(prompt): E khutlisa mongolo o hlahisoang oa mofuta oa LLaMA.rag_chain.get_input(prompt): E khutlisa mongolo o kentsoeng oa mofuta oa RAGChain.langchain.chains.RAGChain(llama, retrieval_model="t5-small", device="cuda"): E etsa mohlala oa RAGChain o kopanyang mohlala oa LLaMA le mokhoa oa ho khutlisa le ho beha sesebelisoa ho CUDA.
Pono ya pono
Mona ke pono e bonolo ea mohlala oa RAGChain o sebelisang Chart.js:
{
"type": "bar",
"data": {
"labels": ["LLaMA", "RAGChain"],
"lintlha tsa boitsebiso": [
{
"label": "Ho nepahala",
"data": [0.8, 0.9],
"backgroundColor": ["#FF6384", "#36A2EB"]
}
]
},
"likgetho": {
"sehlooho": {
"bontša": 'nete,
"text": "RAGChain Moetso o Nepahetseng"
},
"makala": {
"yAxes": [
{
"li-ticks": {
"beginAtZero": 'nete
}
}
]
}
}
}
Pontšo ena e bonts'a ho nepahala ha mohlala oa LLaMA le mohlala oa RAGChain.
Qetello
ho kopanngoa ha RAG le LLM ho fana ka melemo e mengata bakeng sa meralo e matla ea lisebelisoa, ho kenyelletsa le ho nepahala ho ntlafetseng, ho eketseha ha bokhoni, le ho feto-fetoha ha maemo. LangChain le DSPy ke lisebelisoa tse peli tse tsebahalang tsa 'mino tse ka sebelisoang ho kenya tšebetsong mefuta e thehiloeng ho RAG. Ka ho latela maano a ts'ebetsong le mehlala ea khoutu e fanoeng sehloohong sena, bahlahisi ba ka etsa meralo e rarahaneng ea RAG e kopanyang LLM le mehlala ea ho khutlisa. Litaelo/likotoana tse sebelisoang haholo tse 5-10 bakeng sa ho kopanya RAG le LLMs le tsona li fanoe bakeng sa litšupiso.