Подготавливаем демо агент
Скачайте код демо-агента
git clone https://github.com/bocharovf/langfuse-workshop.git
Создайте файл с настройками .env
Создайте копию файла .env_example с именем .env в том же каталоге.
Запустите Langfuse
Перейдите в каталог langfuse-workshop и запустите Langfuse:
docker compose up -d langfuse-web langfuse-worker
При первом запуске Langfuse создает базы данных, поэтому полностью он запустится только через несколько минут. Не ждите его - переходите к следующему разделу, Langfuse пока будет запускаться в фоне.
Если команда завершилась ошибкой dependency ... is unhealthy, просто выполните ее еще раз.
Получите доступ к LLM MWS GPT Model Hub
Чтобы ИИ-агент работал, ему нужен доступ к большой языковой модели. Разворачивать LLM локально сложно и требует значительных ресурсов.
Поэтому мы будем использовать сервис LLM от MWS Cloud - GPT Model Hub. Для работы нам понадобится пополнить баланс на 500 рублей. Этого будет достаточно, так как вам будет начислено дополнительно 3 000 бонусных рублей. Если вы проходите воркшоп на конференции и получили промокод, пополнять баланс не нужно - достаточно активировать промокод.
Вы можете использовать любой сервис, который предоставляет нужные нам модели, однако здесь мы рассмотрим именно GPT Model Hub.
Регистрация и пополнение баланса
Воспользуйтесь инструкцией.
У вас должно получиться:
- Создать проект в https://console.mws.ru/.
- Создать биллинг аккаунт.
-
Пополнить баланс на 500 рублей. Грант на 3000 будет начислен автоматически через несколько секунд после пополнения.
Если у вас есть промокод, вместо пополнения откройте страницу вашего проекта и в блоке Баланс и потребление нажмите кнопку Активировать промокод. В открывшемся окне введите промокод и нажмите Далее.
Деплоймент необходимых моделей
Теперь нам нужно развернуть в нашем проекте 4 модели, с которыми будет работать наш агент.
Перейдите на закладку GPT Model Hub -> Деплойменты моделей.
Создайте 4 деплоймента, выбирая модель из каталога:
glm-5.3- основная модель агентаgpt-oss-120b- дешевая модель для простых запросовqwen3.6-35b-a3b- модель-судья для оценки ответов агентаbge-m3- модель эмбеддингов для поиска рецептов
Имя деплоймента подставится автоматически - не меняйте его. Агент обращается к модели по ID деплоймента, в котором точки заменены на дефисы: glm-5-3, gpt-oss-120b, qwen3-6-35b-a3b, bge-m3.
Интерфейс подсказывает нам, как можно обратиться к модели с помощью curl, без всякого агента. Но для этого нужен ключ доступа к LLM, которого еще нет!
Создание ключа доступа к LLM
Для работы с моделями нужен ключ.
Чтобы его создать, перейдите в раздел IAM -> Сервисные аккаунты.
В меню Права доступа сервисного аккаунта найдите роль gpt.inferencer и нажмите "Создать"
Теперь в нашем сервисном аккаунте на закладке Ключи доступа создаём ключ с типом API-ключ.
После создания вам только один раз будет показан ключ доступа, начинающийся с v1.
Укажите в проекте адрес проекта и ключ доступа к LLM
Укажите в файле проекта .env ключ доступа к LLM, начинающийся с v1. и адрес вашего проекта в https://console.mws.ru/:
LLM_TOKEN=v1....
LLM_URL=https://gpt.mwsapis.ru/projects/ЗАМЕНИТЬ_НА_ВАШ_ПРОЕКТ/openai
Создайте проект в Langfuse
Зарегистрируйтесь в Langfuse
К этому моменту Langfuse, который вы запустили в начале, уже должен работать.
- Зарегистрируйтесь (sign up) на http://localhost:3000/.
- Создайте для себя организацию и проект в Langfuse.
Если страница не открывается, подождите еще минуту. Проверить, запустился ли Langfuse, можно командой docker compose ps langfuse-web: когда он готов к работе, в колонке STATUS появится (healthy).
Создайте ключи доступа к вашему проекту Langfuse (API Keys)
Зайдите в Settings → API Keys → Create new API Keys.
Пропишите ключи в .env файл проекта:
LANGFUSE_PUBLIC_KEY=pk-lf-...
LANGFUSE_SECRET_KEY=sk-lf-...
Перезапустите проект
Теперь, после заполнения .env, поднимаем все остальные контейнеры агента
docker compose up -d
Эта команда заставит Docker собрать нашего агента и скачать оставшиеся сторонние образы, что займет некоторое время.
Чтобы убедиться, что все запустилось, выполните команду:
docker compose ps -a
В колонке STATUS у сервисов должен быть статус Up (у некоторых с пометкой (healthy)) или Exited (0):
У двух сервисов, rag-loader и agent-setup, статус будет Exited (0) - это нормально. Это одноразовые задачи: rag-loader загружает рецепты в базу Qdrant, а agent-setup настраивает цены моделей в Langfuse. Они выполняют свою работу и завершаются. Ошибкой будет только другой код завершения, например Exited (1), - тогда посмотрите логи сервиса командой docker compose logs имя-сервиса.
Протестируйте агента
- Откройте Web-интерфейс агента http://localhost:8501/
- Запросите рецепт котлет и его стоимость (по умолчанию поле уже заполнено)
- Перейдите на закладку Tracing вашего проекта в Langfuse
- Проверьте, что на закладке есть трейсы.
Ожидаемый результат
- Агент ответил на запрос рецептом
- В вашем проекте Langfuse на закладке Tracing видны трейсы









