Как да създадете бот с Langflow и да го свържете с Telegram, Discord или Slack

Последна актуализация: 28/07/2026

  • Langflow ви позволява да изграждате приложения с изкуствен интелект, използвайки взаимосвързани визуални компоненти.
  • LangBot пренася създадените потоци в Telegram, Discord, Slack и други платформи.
  • API ключът и идентификаторът на потока позволяват на двете приложения да комуникират правилно.
  • Споделената Docker мрежа избягва множество грешки, когато услугите използват отделни контейнери.
Как да създадете бот с Langflow и да го свържете с Telegram, Discord или Slack

Ако искате да навлезете в света на изкуствения интелект, но се плашите от хиляди редове код, Langflow може да улесни значително процеса. Тази платформа с отворен код позволява Създавайте приложения, агенти и работни процеси с изкуствен интелект, използвайки визуален интерфейс в който различните компоненти са свързани помежду си.

Вместо да програмирате цялата логика на приложението от нулата, можете да добавяте блокове за получаване на съобщение, подготовка на инструкции, консултация с документи, извикване на модел и връщане на отговор. Всеки блок представлява специфична функция и има входове и изходи, съвместими с определени типове данни.

Това не означава, че Langflow напълно елиминира техническите аспекти. За да създавате усъвършенствани приложения, все още трябва да разбирате концепции като подкани, модели, инструменти, памет, вграждания, API и векторни бази данниРазликата е, че можете визуално да организирате тези части, да ги тествате поотделно и да променяте потока, без да се налага да преработвате цялата програма.

Langflow ви позволява също да публикувате потоци чрез API. Благодарение на тази функция, прототипът, създаден в редактора, може да се превърне в мозъка на външно приложение, уебсайт или бот за съобщения. Един от начините да направите това е чрез комбиниране Langflow с LangBot, платформа, която свързва AI системи с Telegram, Discord, Slack, LINE, WeChat и други услуги.

Какво е Langflow и за какво се използва?

Какво е Langflow и за какво се използва?

Langflow е визуална платформа за изграждане и изпълнение работни процеси, базирани на езикови моделиНеговият редактор използва компоненти, които могат да бъдат плъзгани върху платното и свързани чрез портове, образувайки последователност от обработка.

Наличните компоненти включват:

  • Влизания и излизания от чата да получавате и връщате съобщения.
  • Езикови модели от различни доставчици.
  • Подкани с динамични инструкции и променливи.
  • Агенти способни да решат кои инструменти да използват.
  • Качващи файлове за обработка на документи и други данни.
  • Вграждане на модели да представя информацията с помощта на вектори.
  • Векторни бази данни за съхраняване и извличане на подходящо съдържание.
  • Инструменти и API които позволяват взаимодействие с външни услуги.
  • Компоненти на паметта за да се запази историята на разговорите.

Въпреки че Langflow се е появил тясно свързан с екосистемата LangChain, той не бива да се описва единствено като графичен интерфейс за тази библиотека. В момента той предлага собствена компонентна архитектура, API, сървър и система за внедряване, в допълнение към интеграции с множество доставчици.

Langflow е особено полезен за създаване на прототипи, експериментиране с различни модели, разработване на RAG системи и представяне на логиката на приложенията чрез API. Той също така ви позволява да създавате персонализирани Python компоненти, когато включените блокове не отговарят на специфични нужди.

Разлики между поток, верига и агент

Преди да започнем, е важно да разграничим няколко понятия, които често се използват взаимозаменяемо.

Un поток Това е пълният набор от компоненти и връзки, които изграждат приложението. Той може да съдържа входни данни, подкани, модели, инструменти, място за съхранение и изходни данни.

А верига Той изпълнява относително предвидима последователност. Например, може да получи заявка, да я преведе, да я изпрати към модел и след това да обобщи отговора. Резултатът от един етап преминава към следващия, следвайки предварително определен път.

Un агентВместо това, то получава цел и решава кой инструмент да използва, за да я постигне. Може да направи заявка към база данни, да извърши търсене или да изпълни няколко операции, преди да отговори.

Възможно е също така да се изгради многоагентни системикъдето няколко агента изпълняват различни функции. Един може да събира информация, друг да я анализира, а трети да подготвя крайния отговор. Последователното свързване на няколко модела обаче не трансформира автоматично потока в многоагентна система.

Тази разлика е важна, защото агентите предлагат по-голяма гъвкавост, но могат също така да консумират повече токени, да им отнема повече време и да вземат неочаквани решения. За проста и предвидима задача, Конвенционалният работен процес обикновено е по-бърз и по-лесен за отстраняване на грешки..

Каква роля играе LangBot в тази интеграция?

Langflow обработва изпълнението на логиката на AI приложението, но не управлява директно всички връзки с услуги като Telegram, Discord или Slack. За тази цел можете да използвате LangBot.

LangBot е платформа с отворен код, предназначена за създаване и управление на ботове в различни услуги за съобщенияТой управлява приемането на съобщения, връзката с всяка платформа, разрешенията и изпращането на отговори до крайния потребител.

Разпределението на отговорностите е следното:

  • Langflow действа като двигател с изкуствен интелект: Той получава съобщението, изпълнява подканите, запитва данни, извиква модела и генерира отговор.
  • LangBot действа като посредник: Получава съобщението от Telegram, Discord или Slack, изпраща го към потока и връща резултата на съответната платформа.

Следователно, LangBot не конвертира автоматично никоя диаграма в завършен бот. Първо, трябва Създайте и тествайте потока в Langflow, публикувайте крайната си точка и предоставете на LangBot информацията, необходима за изпълнението ѝ.

Изключително съдържание - Щракнете тук  Как да редактирате видеоклипове в TikTok без да използвате външни приложения

Изисквания за създаване на бот с Langflow и LangBot

Изисквания за създаване на бот с Langflow и LangBot

Преди да започнете, трябва да имате инсталирани или налични следните инструменти:

  • Докер и Докер Компози, ако ще стартирате приложенията, използвайки контейнери.
  • Лангфлоу, инсталиран локално или на достъпен сървър.
  • ЛангБот, инсталиран с помощта на uv, Docker или един от поддържаните от него методи.
  • API ключ от доставчика на модела, освен ако не използвате локален модел.
  • Токен за Telegram, Discord, Slack или друга платформа където искате да публикувате бота.
  • Ключ за API на Langflow за да се оторизират повиквания към потока.

Трябва също да проверите дали LangBot има достъп до адреса на Langflow. Уверете се, че и двете приложения функционират правилно в браузъра. не гарантира, че могат да общуват помежду сиособено когато са в различни контейнери.

За първоначален тест можете да стартирате и двата инструмента на един и същ компютър. След като работният процес заработи, можете да го преместите на сървър, да добавите постоянна база данни и да внедрите по-строги мерки за сигурност.

Как да инсталирате Langflow с помощта на Docker

Най-бързият начин да изпробвате Langflow е да използвате официалния му Docker образ. Една основна команда би била следната:

docker run -d \
  --name langflow \
  -p 7860:7860 \
  -v langflow-data:/app/langflow \
  -e LANGFLOW_AUTO_LOGIN=false \
  -e LANGFLOW_SUPERUSER_PASSWORD=CAMBIA_ESTA_CONTRASENA \
  langflowai/langflow:latest

След това можете да получите достъп до интерфейса, като използвате:

http://localhost:7860

Обемът langflow-data Това ви позволява да запазите проекти и настройки, когато контейнерът бъде пресъздаден. Без него, Може да загубите потоците, като премахнете или подмените контейнера.

Не бива да използвате слаба парола или директно да публикувате порт 7860 в интернет. В производствена среда е препоръчително да използвате HTTPS, да ограничите достъпа и да внедрите подходяща база данни, като например PostgreSQL.

Как да инсталирате Langflow с Docker
Свързана статия:
Как да инсталирате Langflow с Docker стъпка по стъпка

Как да инсталирате и отворите LangBot

LangBot предлага различни методи за инсталиране. За бърз тест можете да го стартирате, използвайки uvx, инструмент, включен в UV екосистемата:

uvx langbot

След стартиране, административният панел обикновено се намира на адрес:

http://localhost:5300

Тази процедура е удобна за тестване на приложението без ръчно настройване на Python среда. За по-издръжливо внедряване, LangBot предлага и конфигурация, базирана на Docker Compose.

Не бива да бъркаш Порт 5300 на LangBot с 7860 на LangflowТе са две независими приложения и всяко от тях поддържа свой собствен панел, конфигурация и процес.

От LangBot ще трябва да установите връзка с избраната от вас платформа за съобщения и да конфигурирате канала или доставчика, отговорен за генерирането на отговори. Точните имена на някои менюта може да варират в различните версии, но интеграцията на Langflow използва своя API, за да изпълни публикувания поток.

Как да изградим основния поток в Langflow

Как да изградим основния поток в Langflow

Преди да го свържете към LangBot, създайте нов поток от интерфейса на Langflow. Можете да започнете с шаблона. Основни подкани или започвайки от празно платно.

Един прост разговорен поток може да съдържа:

  • Въвеждане в чата: получава съобщението, изпратено от потребителя.
  • Подкана: Добавете инструкциите, които определят поведението на бота.
  • Езиков модел: изпълнете избрания модел.
  • Изход от чата: предоставя отговора, генериран от модела.

Общата връзка би била:

Chat Input → Prompt → Language Model → Chat Output

В компонента на модела ще трябва да изберете доставчик и да конфигурирате неговите идентификационни данни. Langflow поддържа различни модели и интеграции, така че наличните полета ще зависят от избраната от вас опция.

В подканата можете да напишете инструкции като следните:

Eres un asistente de soporte técnico.
Responde en español con instrucciones claras y breves.
Si no conoces la respuesta, indícalo y no inventes información.

Pregunta del usuario:
{input}

Името на променливата трябва да съвпада с входа, свързан с компонента. Ако подканата очаква различна променлива или не получава потребителското съобщение, Моделът може да игнорира заявката или винаги да отговаря по един и същи начин..

Как да тествате потока преди публикуването му

Отворете Langflow Playground и изпратете различни съобщения. Не проверявайте само дали връща отговор: разгледайте и как обработва дълги въпроси, празни входни данни, двусмислени инструкции и заявки, за които няма информация.

Ако използвате инструменти или документи, проверете дали моделът:

  • Извикайте подходящия инструмент когато е необходимо.
  • Не използва инструмент за въпроси, на които можете да отговорите директно.
  • Извличане на съответните фрагменти на документацията.
  • Той не си измисля информация когато източникът не съдържа отговора.
  • Това държи разговорите отделно. от различни потребители.

Тази стъпка е от съществено значение. Ако потокът не работи в Playground, свързването му с LangBot само ще добави още един слой сложност и ще го направи... става по-трудно да се открие източникът на проблема.

Как да получите API ключ и идентификатор на потока

Как да получите ключа и идентификатора на потока на Langflow API

LangBot трябва да знае кой поток да изпълни и да има оторизация за достъп до него.

За да създадете ключ, отворете потребителското меню на Langflow, въведете Настройки и потърсете секцията Ключове за API на LangflowСъздайте нова парола, копирайте я и я запазете в мениджър на пароли, защото е възможно тя да не се показва отново изцяло.

Ключовете на Langflow наследяват разрешенията на потребителя, който ги е създал. Следователно. Не трябва да споделяте администраторски ключ или да го включвате в екранни снимки, хранилища или публични файлове..

Изключително съдържание - Щракнете тук  Как да запишете екрана си с CapCut и най-добрите алтернативи

За да намерите потока, отворете го и въведете:

Share → API access

От този раздел можете да видите генерираната крайна точка и да видите примери за код, за да я стартирате. Адресът обикновено следва структура, подобна на тази:

http://localhost:7860/api/v1/run/IDENTIFICADOR_DEL_FLUJO

Langflow ви позволява също да зададете име на крайната точка. Това улеснява използването на разпознаваем адрес вместо дълъг идентификатор.

http://localhost:7860/api/v1/run/bot-soporte

Въпреки че Flow ID може да се показва на различни места в интерфейса или URL адреса, Споделянето и достъпът до API са най-надеждният ориентир защото показва крайната точка, която външното приложение трябва да използва.

Как да проверите ръчно Langflow API

Преди да конфигурирате LangBot, препоръчително е да изпратите заявка директно към API. Можете да използвате кода, предоставен от Langflow, или да проведете тест с curl:

curl --request POST \
  --url "http://localhost:7860/api/v1/run/IDENTIFICADOR_DEL_FLUJO" \
  --header "Content-Type: application/json" \
  --header "x-api-key: TU_API_KEY" \
  --data '{
    "input_value": "Hola, ¿puedes ayudarme?",
    "input_type": "chat",
    "output_type": "chat"
  }'

Ако тази заявка е неуспешна, проверете регистрационните файлове на адреса, ключа, идентификатора и Langflow, преди да продължите.

Точното съдържание на тялото може да варира в зависимост от използваните в потока входни данни. Панелът за достъп до API генерира примери, съобразени с конфигурацията, така че За предпочитане е да копирате примера, създаден от вашата собствена инсталация..

Можете също да се консултирате с интерактивната API документация на адрес:

http://localhost:7860/docs

Как да свържете LangBot с Langflow API

След като API-то бъде проверено, отворете таблото за управление на LangBot и създайте или редактирайте канала, който ботът ще използва. Изберете интеграцията с Langflow и въведете исканата информация.

Обикновено ще трябва да предоставите:

  • Адрес на базата Langflow: Например, http://localhost:7860.
  • API ключ: ключът, създаден от настройките на Langflow.
  • Идентификатор на поток или име на крайна точка: Идентифицирайте потока, който трябва да бъде изпълнен.
  • Входни параметри: позволяват съобщението на потребителя да бъде изпратено правилно.

След това трябва да свържете канала със съответния бот или платформа. Например, за Telegram ще трябва да създадете бот, използвайки BotFather, и да въведете неговия токен в LangBot. Discord и Slack изискват свои собствени приложения, идентификационни данни и разрешения.

Пълният поток ще бъде следният:

  1. Потребителят изпраща съобщение от Telegram, Discord или Slack.
  2. LangBot получава съобщението чрез интеграция на платформата.
  3. LangBot изпраща заявката до крайната точка на Langflow.
  4. Langflow изпълнява компонентите, подкани, инструменти и модели.
  5. Langflow връща резултата на LangBot.
  6. LangBot предоставя отговора на потребителя на оригиналната платформа.

Как да свържете Langflow и LangBot, ако използвате Docker

Как да свържете Langflow и LangBot, ако използвате Docker

Когато и двете приложения работят директно на една и съща машина, те могат да комуникират, използвайки локалните си портове. В Docker обаче, localhost Това се отнася до самия контейнер.

Ако LangBot е вътре в контейнер и конфигурирате:

http://localhost:7860

LangBot ще търси Langflow в собствения си контейнер. Тъй като услугата се намира другаде, връзката ще се провали.

Ако и двете услуги работят с Docker Compose, най-чистото решение е да ги добавите към споделена мрежа и използвайте името на услугата:

services:
  langflow:
    image: langflowai/langflow:latest
    ports:
      - "7860:7860"
    networks:
      - ia_network

  langbot:
    image: langbotio/langbot:latest
    ports:
      - "5300:5300"
    networks:
      - ia_network

networks:
  ia_network:

В този случай LangBot трябва да осъществи достъп до Langflow, използвайки адрес, подобен на:

http://langflow:7860

Името langflow Това съответства на услугата, декларирана в Docker Compose.

Ако Langflow работи на хост компютъра и LangBot е вътре в Docker, може да се наложи да използвате:

http://host.docker.internal:7860

Точният адрес зависи от операционната система и конфигурацията на Docker. Затова се препоръчва да тествате свързаността. от средата, където LangBot действително работине само от браузъра на хоста.

Как да запазим паметта на разговорите

Ако всяко съобщение се изпраща до Langflow като напълно независима заявка, моделът може да не запомни какво е казал потребителят преди това.

Компонентът Langflow Agent има вградена памет за чат. Може да се използва и История на съобщенията за извличане на съобщения, съхранени в Langflow или съвместими външни услуги.

За правилно разделяне на разговорите, заявките трябва да използват Идентификатор на стабилна сесияLangBot трябва да изпраща един и същ идентификатор за съобщения, принадлежащи към един и същ разговор, и различен за всеки потребител, канал или група.

Ако всички потребители споделят един и същ идентификатор на сесия, съществува риск от следното:

  • Различните разговори се смесват.
  • Потребителят получава контекст, принадлежащ на друго лице.
  • Историята расте ненужно.
  • Ботът генерира противоречиви отговори или разкрива данни.

Точната стратегия ще зависи от интеграцията, но обикновено е удобно идентификаторът да се изгради, като се използва идентификаторът на платформата, каналът и потребителят.

Как да добавяте документи с помощта на RAG система

Как да добавяте документи с помощта на RAG система

Едно от най-интересните приложения на Langflow е създаването на бот, който отговаря, използвайки собствена документация. За да направите това, можете да внедрите система от Възстановяване на добавена генерация или RAG.

Процесът обикновено се разделя на две части:

  • Индексиране: Документите се разделят на фрагменти, конвертират се във вграждания и се съхраняват във векторна база данни.
  • Консултация: Въпросът на потребителя се трансформира във вектор и се търсят най-свързаните фрагменти, преди да се извика моделът.
Изключително съдържание - Щракнете тук  YouTube засилва контрола си върху дийпфейковете с изкуствен интелект за политици и журналисти.

Langflow включва шаблони и компоненти за работа с програми за зареждане на документи, модели за вграждане и различни векторни бази данни. Можете да използвате RAG шаблон като отправна точка и да го адаптирате към вашите файлове.

За да се получат надеждни резултати, е препоръчително да се коригира:

  • Размерът и припокриването на фрагментите.
  • Моделът, използван за генериране на вграждания.
  • Броят на извлечените резултати.
  • Подканата, която ви принуждава да отговорите въз основа на източниците.
  • Разрешения за достъп до всяка колекция от документални филми.

RAG системата не гарантира, че всички отговори ще бъдат правилни. Ако при извличането на информация бъдат открити неподходящи фрагменти или подканата не установява ясни граници, Моделът все още може да интерпретира погрешно информация или да измисля детайли..

Случаи на употреба на Langflow и LangBot

Комбинацията от двата инструмента ви позволява да публикувате една и съща AI система на различни канали, без да престроявате цялата логика за всяка платформа.

Някои интересни случаи на употреба включват:

  • Бот за обслужване на клиенти който се консултира с ръководства, политики и често задавани въпроси.
  • Вътрешен асистент свързано с оторизирана корпоративна документация.
  • Бот за продажби който събира информация и насочва възможностите към екипа по продажбите.
  • Модератор на общността от Discord или Telegram.
  • Технически асистент способен да консултира база знания.
  • Агент с инструменти за получаване на информация от API или бази данни.
  • Система за класификация който анализира съобщенията и ги насочва към съответния отдел.

За чувствителни действия, като например промяна на записи, изпращане на имейли или обработка на поръчки, е препоръчително да се изисква потвърждение и внимателно да се ограничи наборът от инструменти. Агентът не трябва да получава повече разрешителни, отколкото е строго необходимо.

Как да поправите най-често срещаните грешки при свързване

Как да поправим най-често срещаните грешки при свързване в Langflow

Ако LangBot не успее да изпълни потока, първата стъпка е да проверите дали API работи, като направите ръчно извикване. Това помага да се определи дали грешката е в Langflow, LangBot или мрежата.

Най-често срещаните грешки са следните:

  • Неправилен идентификатор на потока: Идентификаторът на компонент е копиран вместо целия поток.
  • Невалиден API ключ: Ключът е непълен, отменен или принадлежи на потребител без достатъчни разрешения.
  • Неправилен URL адрес: се е удвоил /api или пълната крайна точка е въведена в поле, което очаква само домейна и порта.
  • Неправилно използване на localhost: LangBot и Langflow са в различни контейнери.
  • Недостъпен порт: Услугата не слуша, контейнерът е спрял или има междинна защитна стена.
  • Несъвместим входен формат: Потокът очаква различен тип данни или име на променлива.
  • Грешка на доставчика: Ключът на модела е неправилен, няма баланс или е достигнал лимита си.
  • Времето за чакане изтече: Работният процес отнема твърде много време, защото проверява документи, изпълнява инструменти или използва бавен модел.

Трябва също да прегледате лог файловете на двете услуги:

docker logs langflow
docker logs langbot

Ако използвате Docker Compose, можете да проверите най-новите лог файлове, като използвате:

docker compose logs --tail=200 langflow
docker compose logs --tail=200 langbot

Не споделяйте пълни лог файлове, без да ги прегледате, тъй като те могат да съдържат вътрешни адреси, потребителски имена, пароли или фрагменти от разговори.

Сигурност и внедряване в производство

Инсталация, която работи на локален компютър, не е задължително готова за достъп до интернет. Преди да използвате бота с реални потребители, трябва да защитите както Langflow, така и LangBot.

Препоръчителните мерки включват:

  • Активиране на удостоверяване и използвайте силни пароли.
  • Запазете ключовете като тайни или променливи на средатаникога директно в кода.
  • Използвайте HTTPS чрез обратен прокси.
  • Ограничете кои портове са публично достъпни.
  • Приложете ограничения за употреба и ограничения за заявки.
  • Разделете разговорите, използвайки идентификатори на сесии.
  • Прегледайте разрешенията, предоставени на инструментите и агентите.
  • Използвайте постоянно хранилище и правете резервни копия.
  • Актуализирайте редовно изображенията и зависимостите.

Корпоративните приложения също трябва да контролират кои потребители имат достъп до всеки документ, база данни или инструмент. Свързването на частен източник към RAG система не означава, че всички потребители на ботове трябва да имат достъп до него.

Кога си струва да използвате Langflow с LangBot

Тази комбинация е особено полезна, когато искате отделете дизайна на изкуствения интелект от интеграцията с платформи за съобщенияМожете да променяте потока, да променяте модела или да добавяте документи, без да престроявате бота на Telegram или Discord от нулата.

Langflow предоставя визуалния редактор, агентите, инструментите, паметта и API. LangBot добавя свързаност на каналите за съобщения, управление на ботове и разпределение на отговори.

За един прост прототип процесът може да бъде завършен за кратко време. Приложение, предназначено за реални потребители, обаче се нуждае от тестване, отстраняване на грешки, сигурност, ограничения за използване и постоянно съхранение.

След като комуникацията е правилно конфигурирана, всяко съобщение ще следва един и същ път: LangBot го получава, Langflow изпълнява интелигентността на потока и LangBot връща отговора на оригиналния канал.Тази архитектура позволява една и съща система да се използва на множество платформи и да продължи да се подобрява от визуалния редактор, без да се променя всеки бот поотделно.