Chcesz budować własne aplikacje AI, które naprawdę robią robotę? Poznaj LangChain — framework, który pozwoli ci zautomatyzować nawet najbardziej zaawansowane zadania z użyciem modeli językowych.
Czym jest LangChain?
LangChain to framework open-source do budowy aplikacji AI, które korzystają z dużych modeli językowych (LLM) — takich jak GPT-4. Jego główną siłą jest łączenie LLM z różnymi źródłami danych, narzędziami oraz automatyzacja wieloetapowych workflow. Jeśli chcesz pójść o krok dalej niż chat z AI i tworzyć własne narzędzia, asystentów, bota do obsługi dokumentów czy automatyczne workflow — LangChain jest dla ciebie.
Po co ci LangChain?
- Łatwe łączenie LLM z bazami danych, wyszukiwarkami, plikami czy API
- Automatyzacja złożonych zadań przez tworzenie tzw. „chainów” — sekwencji kroków, które wykonuje AI
- Szybkie prototypowanie własnych aplikacji AI w Pythonie
- Obsługa wielu providerów LLM: OpenAI, Google, lokalne modele
Instalacja LangChain — szybki start
Zacznij od zainstalowania LangChain i wybranego API do LLM (np. OpenAI):
pip install langchain openaiUstaw klucz API do OpenAI (przykład dla systemu Linux/Mac):
export OPENAI_API_KEY="TWÓJ_KLUCZ_API"Podstawy: twój pierwszy prompt z LangChain
Prosty chain z LLM
Korzystanie z LLM przez LangChain jest proste. Przykład: generowanie podsumowania tekstu.
from langchain.llms import OpenAI
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain
llm = OpenAI(temperature=0)
prompt = PromptTemplate(
input_variables=["tekst"],
template="Streszcz poniższy tekst w 3 zdaniach:\n{tekst}"
)
chain = LLMChain(llm=llm, prompt=prompt)
txt = "LangChain to framework do budowy aplikacji AI..."
wynik = chain.run(tekst=txt)
print(wynik)
Kiedy użyć? Gdy chcesz zautomatyzować powtarzalne zadania z AI, np. podsumowania, tłumaczenia, ekstrakcja informacji.
TIP: PromptTemplate pozwala dynamicznie podstawiać dane do prompta. Świetne do generowania dużej liczby podobnych zapytań!
Prompt z parametrami — gotowiec
Chcesz używać promptów z parametrami? Skorzystaj z PromptTemplate:
prompt = PromptTemplate(
input_variables=["temat", "długość"],
template="Napisz artykuł o {temat} o długości {długość} słów."
)
print(prompt.format(temat="LangChain", długość=300))Kiedy użyć? Gdy masz wiele podobnych zadań i chcesz dynamicznie zmieniać parametry w promptach.
Łączenie wielu kroków — chain of thought (łańcuch rozumowania)
LangChain pozwala budować wieloetapowe chainy. Przykład: najpierw generujesz pytania do tekstu, potem na nie odpowiadasz.
from langchain.prompts import PromptTemplate
from langchain.chains import SequentialChain
prompt1 = PromptTemplate(
input_variables=["tekst"],
template="Podaj 3 pytania do tekstu:\n{tekst}"
)
prompt2 = PromptTemplate(
input_variables=["pytania", "tekst"],
template="Odpowiedz na każde pytanie na podstawie tekstu:\nPytania: {pytania}\nTekst: {tekst}"
)
chain1 = LLMChain(llm=llm, prompt=prompt1, output_key="pytania")
chain2 = LLMChain(llm=llm, prompt=prompt2, output_key="odpowiedzi")
chain = SequentialChain(
chains=[chain1, chain2],
input_variables=["tekst"],
output_variables=["odpowiedzi"]
)
wynik = chain({"tekst": txt})
print(wynik["odpowiedzi"])Kiedy użyć? Gdy zadanie wymaga kilku kroków i chcesz, by AI „myślała” etapami (chain of thought).
TIP: SequentialChain pozwala przekazywać wyniki między krokami. To podstawa zaawansowanych automatyzacji!
Integracje — co jeszcze może LangChain?
- Przeszukiwanie własnych dokumentów (np. PDF, Word) i odpowiadanie na pytania
- Łączenie z bazami danych (SQL, NoSQL)
- Tworzenie własnych agentów AI, którzy korzystają z narzędzi (np. kalkulator, wyszukiwarka)
- Automatyzacja interakcji z API i usługami zewnętrznymi
LangChain + twoje dokumenty (tzw. RAG — Retrieval Augmented Generation)
Chcesz, by AI odpowiadała na pytania na podstawie własnych plików? To tzw. RAG. Szybki przykład:
from langchain.document_loaders import TextLoader
from langchain.vectorstores import FAISS
from langchain.embeddings import OpenAIEmbeddings
from langchain.chains import RetrievalQA
# Wczytaj dokument
loader = TextLoader("twoj_plik.txt")
documents = loader.load()
# Stwórz wektorową bazę
embeddings = OpenAIEmbeddings()
db = FAISS.from_documents(documents, embeddings)
# Zbuduj chain do QA
qa_chain = RetrievalQA.from_chain_type(
llm=llm,
chain_type="stuff",
retriever=db.as_retriever()
)
odp = qa_chain.run("O co pytasz?")
print(odp)Kiedy użyć? Gdy twoja AI musi znać kontekst z własnych plików, np. regulaminy, instrukcje, dokumenty firmowe.
TIP: To świetna baza do budowy własnego „ChatGPT na twoje dane”!
LangChain tutorial — praktyczne wskazówki
- Testuj prompty najpierw „na sucho” w chatcie, potem przenoś je do PromptTemplate
- Stosuj chain of thought do zadań wymagających rozumowania — rozbij problem na etapy
- Loguj wyniki każdego kroku chaina — łatwiej debugować
- Nie musisz pisać wszystkiego od zera — korzystaj z gotowych chainów i integracji z repo LangChain
Podsumowanie
LangChain to potężne narzędzie dla każdego, kto chce pójść dalej niż chat z AI. Dzięki niemu zbudujesz własne automatyzacje, asystentów i workflow AI w Pythonie. Zacznij od prostych chainów, eksperymentuj z promptami i krok po kroku buduj własne AI, które naprawdę robi robotę!