Перейти к содержимому

LangChain в n8n

Использование LangChain концепций для построения AI цепочек

n8n реализует ключевые концепции LangChain через визуальные ноды:

Chains

Последовательные цепочки обработки

Agents

Автономные агенты с инструментами

Memory

Хранение контекста диалога

Retrievers

Поиск релевантных документов

Простейшая цепочка: prompt → LLM → output.

КомпонентОписание
Prompt TemplateШаблон с переменными
LLMЯзыковая модель
Output ParserПарсинг ответа (опционально)
Prompt Template:
"Классифицируй следующий текст по категориям:
положительный, отрицательный, нейтральный.
Текст: {{ $json.text }}
Категория:"
Output: "положительный"

Последовательные LLM вызовы:

Системное сообщение:
"Ты эксперт по {{ $json.domain }}. Отвечай на {{ $json.language }}."
Пользовательское сообщение:
"{{ $json.question }}"
РольНазначение
SystemИнструкции для модели
HumanСообщение пользователя
AIПредыдущий ответ модели
Примеры:
Вход: "Привет" → Выход: "greeting"
Вход: "Сколько стоит?" → Выход: "pricing"
Вход: "Не работает!" → Выход: "support"
Классифицируй: "{{ $json.message }}"

Получение JSON из LLM:

Prompt:
"Извлеки информацию из текста и верни JSON:
{
"name": "имя",
"email": "email",
"phone": "телефон"
}
Текст: {{ $json.text }}"
Output (parsed):
{
"name": "Иван Петров",
"email": "ivan@example.com",
"phone": "+7 999 123 4567"
}

Автоматическое исправление невалидного JSON:

Поиск релевантных документов:

ПараметрОписание
Top KКоличество документов (default: 4)
Score ThresholdМинимальная релевантность
Model: text-embedding-3-small
Dimensions: 1536
Model: nomic-embed-text
Base URL: http://localhost:11434
StoreОписание
PineconeManaged облачный сервис
QdrantOpen-source, self-hosted
SupabasePostgreSQL + pgvector
ChromaLightweight, embedded
In-MemoryДля тестирования
ОперацияОписание
InsertДобавить документы
GetПолучить по ID
Get ManyПолучить несколько
SearchВекторный поиск
DeleteУдалить документы
LoaderФорматы
FileTXT, PDF, DOCX
URLWeb pages
GitHubRepositories
NotionPages, databases

Разбиение на chunks:

ПараметрОписание
Chunk SizeРазмер фрагмента (tokens)
Chunk OverlapПерекрытие между фрагментами
SeparatorРазделитель (default: \n\n)
Original: 5000 tokens
Chunk Size: 500
Overlap: 50
Result: 11 chunks
Тип: Map-Reduce
1. Map: Summarize each chunk
2. Reduce: Combine summaries
Input: 50 page document
Output: 1 paragraph summary
Тип: Stuff
1. Retrieve relevant chunks
2. Stuff into context
3. Generate answer
Prompt:
"На основе контекста ответь на вопрос.
Контекст:
{{ $json.context }}
Вопрос: {{ $json.question }}
Ответ:"
  • RAG workflows — построение RAG систем
  • AI Agent — автономные агенты
  • MCP — Model Context Protocol