Sedang mengikuti modul ini?0 daripada 17 selesai
Modul 02 · Halaman 3 daripada 20 · 5 bahagian

Seni Bina dan Komponen Teras LangChain

Bagaimana LangChain distrukturkan sebagai jambatan antara LLM, data dan alat, fungsi setiap komponen teras dan contoh mudah yang menggabungkannya.

2.1

Gambaran Keseluruhan Seni Bina

  • LangChain menyediakan seni bina modular untuk membina aplikasi LLM.
  • Ia bertindak sebagai jambatan antara LLM, sumber data luar, alat dan logik aplikasi.
  • Ia menyediakan antara muka dan abstraksi piawai untuk bekerja dengan pelbagai penyedia dan komponen LLM.
  • Kita boleh gabungkan komponen mengikut kes penggunaan (RAG, ejen, dsb.).
2.2

Aliran Satu Permintaan

  1. 1Pengguna memberikan pertanyaan kepada aplikasi.
  2. 2LangChain memproses pertanyaan menggunakan chain, agent atau retriever.
  3. 3Ia berinteraksi dengan LLM, sumber data luar, alat dan vector store.
  4. 4LLM menjana respons menggunakan konteks dan alat yang diberikan.
  5. 5LangChain memulangkan respons akhir kepada pengguna.
2.3

Rajah Seni Bina

Pertanyaan Pengguna
Aplikasi LangChainChain / Agent
LLMsOpenAI, Claude, etc.
Pangkalan Data VektorFAISS, Chroma, dsb.
API LuarSerpAPI, DB, dsb.
AlatKalkulator, carian, dsb.

Di dalam aplikasi terdapat komponen LangChain: prompt, chain, agent, memory, document loader, vector store dan alat.

2.4

Komponen Teras dan Tujuannya

KomponenTujuan
ModelsAntara muka kepada pelbagai LLM (OpenAI, Anthropic, dsb.).
PromptsMengurus dan mencipta prompt serta prompt template.
ChainsMenggabungkan beberapa langkah untuk mencipta aliran kerja.
AgentsMenggunakan alat untuk bertindak dan menyelesaikan tugas kompleks.
MemoryMengekalkan sejarah dan konteks perbualan.
Document LoadersMemuatkan data daripada pelbagai sumber (PDF, web, DB, dsb.).
Text SplittersMemecahkan dokumen besar kepada chunk yang lebih kecil.
Vector StoresMenyimpan dan mencari embedding untuk carian persamaan.
RetrieversMendapatkan dokumen yang relevan daripada vector store.
ToolsMengintegrasi alat dan API luar.
CallbacksMenjejak dan memantau pelaksanaan (log, penggunaan token, dsb.).
2.5

Contoh Mudah: Menggunakan Komponen Teras

python
from langchain_openai import ChatOpenAI
from langchain_core.prompts import PromptTemplate
from langchain.chains import LLMChain

# 1. Define LLM
llm = ChatOpenAI(model="gpt-3.5-turbo", temperature=0.7)

# 2. Define prompt template
template = PromptTemplate(
    input_variables=["topic"],
    template="Explain {topic} in simple words."
)

# 3. Create chain
chain = LLMChain(llm=llm, prompt=template)

# 4. Run chain
response = chain.invoke({"topic": "LangChain"})
print(response)
  • Kita cipta satu instans LLM (OpenAI).
  • Tentukan prompt template dengan satu pemboleh ubah.
  • Cipta LLMChain dengan model dan prompt.
  • Panggil chain dengan input untuk mendapatkan respons.
  • Kita juga boleh menggunakan memory, alat, retriever, dsb. untuk aplikasi lanjutan.