0Pricing
AI Agents · Pelajaran

LCEL (Bahasa Ekspresi LangChain)

Susun runnable dengan operator pipa '|', gunakan RunnablePassthrough, lalu alirkan hasil melalui rantai.

LCEL (Bahasa Ekspresi LangChain) adalah pelajaran AI Agents gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar AI Agents, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus AI Agents mencakup 4 pelajaran total.

Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.

Apa Itu LCEL?

LangChain Expression Language adalah cara modern untuk menyusun rantai. Bahasa ini menggunakan operator pipa | untuk merangkai komponen yang dapat dijalankan.

Bahasa ini menggantikan kelas "Chain" lama (LLMChain, SequentialChain), yang kini sudah usang.

A Basic LCEL Chain

from langchain.prompts import ChatPromptTemplate
from langchain_openai import ChatOpenAI
from langchain.schema.output_parser import StrOutputParser

prompt = ChatPromptTemplate.from_template('Translate {text} to French.')
model = ChatOpenAI(model='gpt-4o-mini')
parser = StrOutputParser()

chain = prompt | model | parser
print(chain.invoke({'text': 'Hello, world!'}))

RunnablePassthrough

Teruskan masukan tanpa perubahan. Berguna untuk mempertahankan data bersama pemanggilan LLM:

from langchain_core.runnables import RunnablePassthrough

chain = (
    {'context': retriever, 'question': RunnablePassthrough()}
    | prompt
    | model
    | parser
)
chain.invoke('What is RAG?')

RunnableParallel

Jalankan beberapa komponen yang dapat dijalankan secara paralel; keluarannya menjadi dict:

from langchain_core.runnables import RunnableParallel

chain = RunnableParallel(
    summary=summary_prompt | model | parser,
    keywords=keywords_prompt | model | parser
) | merge_prompt | model | parser

result = chain.invoke({'text': '...'})

RunnableLambda

Bungkus fungsi Python apa pun dalam komponen yang dapat dijalankan:

from langchain_core.runnables import RunnableLambda

def uppercase(text: str) -> str:
    return text.upper()

chain = prompt | model | parser | RunnableLambda(uppercase)

Streaming Through LCEL

for chunk in chain.stream({'text': 'Hello'}):
    print(chunk, end='', flush=True)

Pemrosesan Kelompok dan Asinkron

Setiap komponen yang dapat dijalankan mendukung batch, ainvoke, astream:

results = chain.batch([
    {'text': 'a'}, {'text': 'b'}, {'text': 'c'}
])
# All three run in parallel.

Skema

Tambahkan petunjuk tipe — LCEL memvalidasi masukan dan keluaran:

from pydantic import BaseModel

class Input(BaseModel):
    text: str

class Output(BaseModel):
    translation: str

chain = chain.with_types(input_type=Input, output_type=Output)

with_config dan Cadangan

Tetapkan model, atur percobaan ulang, tambahkan model cadangan:

fast = ChatOpenAI(model='gpt-4o-mini')
big = ChatOpenAI(model='gpt-4o')

chain = prompt | fast.with_fallbacks([big]) | parser

with_retry

class Chain:
    def invoke(self, x):
        return f'processed: {x}'
    def with_retry(self, stop_after_attempt=3, wait_exponential_jitter=True):
        print(f'Chain will retry up to {stop_after_attempt} times with jittered backoff')
        return self

chain = Chain()
chain = chain.with_retry(stop_after_attempt=3, wait_exponential_jitter=True)
print(chain.invoke('input data'))

Membangun Rantai RAG

Menyatukan semuanya:

rag_chain = (
    {'context': retriever | format_docs, 'question': RunnablePassthrough()}
    | rag_prompt
    | model
    | StrOutputParser()
)

def format_docs(docs):
    return '\n\n'.join(d.page_content for d in docs)

rag_chain.invoke('What is in the handbook?')

Men-debug LCEL

Periksa langkah-langkah perantara:

chain.get_graph().print_ascii()

# Or run step-by-step:
for step in chain.stream_log({'text': '...'}):
    print(step)

Operator Pipa

Apa peran RunnablePassthrough dalam LCEL?

Ringkasan

LCEL adalah fondasi LangChain modern. Pelajari pipe, Parallel, Lambda, Passthrough, dan Anda dapat membangun rantai apa pun.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “LCEL (Bahasa Ekspresi LangChain)” gratis?

Ya — teks lengkap “LCEL (Bahasa Ekspresi LangChain)” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus AI Agents, upgrade ke CoddyKit PRO. Kursus AI Agents mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “LCEL (Bahasa Ekspresi LangChain)”?

Susun runnable dengan operator pipa '|', gunakan RunnablePassthrough, lalu alirkan hasil melalui rantai. Kamu berlatih AI Agents dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai AI Agents?

Tidak diperlukan pengalaman sebelumnya. AI Agents di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “LCEL (Bahasa Ekspresi LangChain)” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran AI Agents ini?

Ya. Setiap pelajaran AI Agents menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Arsitektur LangChain: Model, Prompt, Rantai
  2. Pemuat, Pemotong, dan Penyimpanan Vektor
  3. LCEL (Bahasa Ekspresi LangChain)
  4. Membangun Rantai RAG dari Awal hingga Akhir
← Kembali ke AI Agents