Урок 05. Экосистема LangChain и PromptHub

📁 Блок: Основы AI/LLM ⏱️ Время изучения: ~70 мин 🎯 Сложность: Средняя
#langchain #chains #prompting #llm #embeddings

⚡ Кратко: LangChain и PromptHub

Когда приложение сложнее «отправил промпт — получил ответ», нужны инструменты-оркестраторы. LangChain — фреймворк-конструктор для сборки цепочек (chains) обработки данных вокруг LLM. PromptHub — платформа для хранения, версионирования и совместной работы над промптами.

  • LLM = двигатель, LangChain = инструменты управления им, PromptHub = управление «топливом» (промптами).
  • Цепочка (Chain) — последовательность операций: промпт → LLM → обработка → внешний инструмент.
  • Компоненты: Models (LLM-провайдеры), Prompts (шаблоны), Chains (LLMChain, SequentialChain, RouterChain).
  • Интеграция с данными: Document Loaders (PDF, web, CSV) + Vector Stores (FAISS, Chroma, Pinecone) → «вопрос-ответ по документам».
  • PromptHub ≈ Git для промптов: версии, история, откат, командная работа.
# chain.py — простая цепочка: промпт → LLM → текст (современный LCEL-синтаксис)
from langchain_core.prompts import ChatPromptTemplate
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain_core.output_parsers import StrOutputParser

llm = ChatGoogleGenerativeAI(model="gemini-2.0-flash")
prompt = ChatPromptTemplate.from_template("Кратко изложи: {text}")
chain = prompt | llm | StrOutputParser()      # | — оператор сборки цепочки (pipe)

print(chain.invoke({"text": "..."}))

📖 О чём этот урок

В уроках 03–04 мы вручную отправляли промпты, обрабатывали ответы, считали эмбеддинги и строили поиск через FAISS. Как только приложение усложняется — несколько шагов, обращение к внешним данным, выбор инструмента под задачу — писать всё «руками» становится громоздко. Сегодня знакомимся с двумя инструментами, которые упрощают разработку LLM-приложений: LangChain (оркестрация: цепочки, модели, интеграция с данными) и PromptHub (управление промптами: версии, командная работа).

Аналогия из лекции. LLM — это мощный двигатель. Чтобы построить на его основе «автомобиль» (полезное приложение), нужны инструменты управления двигателем и соединения его с другими частями — это LangChain. А промпты — «топливо»; управлять им помогает PromptHub.

Что изучим

  • Зачем нужны фреймворки поверх LLM и что такое цепочка (Chain)
  • Основные компоненты LangChain: Models, Prompts, Chains
  • Современный синтаксис цепочек — LCEL (оператор |) вместо устаревшего LLMChain
  • Интеграция с внешними данными: Document Loaders и Vector Stores
  • Цепочка «вопрос-ответ по документам» (основа RAG — подробно в уроке 09)
  • PromptHub: хранение, версионирование и совместная работа над промптами

📚 Что повторить перед изучением

🎯 Что изучать дальше