В репозитории представлены два независимых сценария работы с Langflow:
- Вариант 1 — lfx: программное построение и запуск графов (flows) с помощью
lfxи/или обращение к уже запущенному Langflow по HTTP. - Вариант 2 — Кастомные компоненты Langflow: подключение своих Python-компонентов в интерфейс Langflow (UI), модели GigaChat.
Предусмотрены два набора компонентов под разные рантаймы:
lfx_examples/gigachat_components_lfx/— компонент GigaChat дляlfx(используется в коде без UI).gigachat/— компонент GigaChat для Langflow UI.
- Python 3.10+
- Рекомендуется менеджер пакетов
uv(быстро ставит зависимости изpyproject.tomlи учитываетuv.lock)
- Установите
uvСсылка
brew install uv
# или скриптом:
# curl -LsSf https://astral.sh/uv/install.sh | sh- Установите зависимости проекта:
uv sync- Создайте файл
.envв корне проекта и добавьте ключи по необходимости:
cp .env_example .env# .env
OPENAI_API_KEY=sk-...
# OPENAI_API_BASE=https://api.openai.com/v1 # опционально, если используете прокси/совместимые API
GIGACHAT_CREDENTIALS=YOUR_GIGACHAT_TOKEN
# Доп. параметры для GigaChat (обычно значения по умолчанию подходят)
# GIGACHAT_SCOPE=GIGACHAT_API_{CORP/PERS/B2B} (по умолчанию PERS)
# GIGACHAT_BASE_URL=...
# GIGACHAT_AUTH_URL=...
# Для HTTP-запросов к запущенному Langflow
# Может быть любой, предназначен для защиты сервиса
LANGFLOW_API_KEY=0Примечания:
- В примерах используется
python-dotenvдля чтения.env. Если при запуске увидитеImportError: dotenv, установите пакет:uv add python-dotenv. - Зависимость
langflowдля запуска UI отдельно не входит вpyproject.toml. Ниже показано, как запустить UI без глобальной установки черезuvx. - Для использования
cp.AgentComponentможно воспользоваться нашей библиотекой gpt2giga.
Important
На данный момент lfx работает на langchain версии <1. Учитывайте это в своих проектах.
В каталоге lfx_examples/ есть два минимальных примера:
simple_agent_openai.py— агент на OpenAIsimple_gigachat_flow.py— модель GigaChat как LLM-компонент
Оба файла создают Graph и читают ввод из ChatInput.
# Доступные аргументы:
uv run lfx run --help
# OpenAI пример
uv run lfx run lfx_examples/simple_agent_openai.py -f text 'Как дела?'
# GigaChat пример (нужен GIGACHAT_CREDENTIALS в .env)
uv run lfx run lfx_examples/simple_gigachat_flow.py -f text 'Привет' Требуемые переменные окружения:
- Для OpenAI:
OPENAI_API_KEY(и при необходимостиOPENAI_API_BASE). - Для GigaChat:
GIGACHAT_CREDENTIALS(токен),GIGACHAT_SCOPEостальные параметры берутся по умолчанию из SDK.
Нужно обязательно указать LANGFLOW_API_KEY, он может быть любой
# Доступные аргументы:
uv run lfx serve --help
# OpenAI пример
uv run lfx serve lfx_examples/simple_agent_openai.py --env-file .env
# GigaChat пример (нужен GIGACHAT_CREDENTIALS в .env)
uv run lfx serve lfx_examples/simple_gigachat_flow.py --env-file .envПодробнее можно ознакомиться по ссылке: lfx
Установка пользовательских зависимостей в Langflow Desktop
Чтобы добавить зависимости в Langflow Desktop, внесите запись в файл requirements.txt приложения:
- В macOS файл находится по пути
/Users/ПОЛЬЗОВАТЕЛЬ/.langflow/data/requirements.txt. - В Windows файл находится по пути
C:\Users\ПОЛЬЗОВАТЕЛЬ\AppData\Roaming\com.Langflow\data\requirements.txt.
В requirements.txt нужно добавить библиотеку langchain-gigachat
Начальная страница
Использование компонент
В нижнем левом углу экрана выберите + New Custom Component:
Нажмите на кнопку Code и скопируйте нужный компонент(chat_model, embeddings)

Подключите модель коннекторами
Во вкладке Playground можно протестировать работу:
Также в папке flow_examples/ лежат примеры, которые можно импортировать: Простой чат-бот, RAG по загруженному документу и простой агент.
Чтобы импортировать flow, нужно нажать на кнопку Upload a flow
uv add langflow
uv add langchain-gigachatuv run langflow run --components_path PATH_TO_GIGACHAT_COMPONENTSПосле запуска компоненты будут отображаться в UI:
В репозитории приведен пример Dockerfile и docker-compose.yaml
docker compose up --build -dИли:
docker build . -f components.Dockerfile -t gigachat-langflow:latest
docker run -p 7860:7860 --name langflow_gigachat gigachat-langflow:latestCписок доступных ENV переменных доступен по ссылке
langflow_examples/
├─ flow_examples # Примеры flow, которые можно загрузить в Langflow
├─ gigachat/ # Кастомные компоненты для Langflow UI
│ ├─ gigachat_chat_model.py
│ └─ gigachat_embeddings.py
├─ images/ # Примеры с изображениями
├─ lfx_examples/ # Примеры для lfx (без UI) и HTTP-запросов
│ ├─ simple_agent_openai.py
│ ├─ simple_gigachat_flow.py
│ ├─ request_to_flow.py
│ └─ gigachat_components_lfx/
│ └─ gigachat_chat_model.py # Компонент GigaChat для lfx
├─ components.Dockerfile # Пример Dockerfile
├─ docker-compose.yaml # Пример compose
├─ pyproject.toml # Основные зависимости проекта
└─ README.md








