Введение

В Интеллос можно использовать инструменты-краулеры, например Jina, которые умеют преобразовывать веб-страницы в формат markdown, понятный LLM. Недавно wordware.ai обратил наше внимание на то, что с помощью краулеров можно собирать данные из социальных сетей для анализа через LLM, создавая более интересные приложения. Однако известно, что 2 февраля 2023 года X (бывший Twitter) прекратил предоставлять бесплатный доступ к API и с тех пор усилил защиту от краулинга. Инструменты вроде Jina не могут получить доступ к контенту X напрямую.
Начиная с 9 февраля мы больше не будем поддерживать бесплатный доступ к Twitter API — ни v2, ни v1.1. Вместо этого появится платный базовый тариф 🧵 — Developers (@XDevelopers) 2 февраля 2023
К счастью, в Интеллос также есть HTTP-инструмент, который позволяет вызывать внешние инструменты краулинга, отправляя HTTP-запросы. Приступим!

Предварительные требования

Регистрация в Crawlbase

Crawlbase — это комплексная платформа для сбора и скрапинга данных, предназначенная для бизнеса и разработчиков. Кроме того, использование Crawlbase Scraper позволяет собирать данные с таких социальных платформ, как X, Facebook и Instagram. Перейдите для регистрации: crawlbase.com

Рабочее пространство Интеллос

Нужен доступ к рабочему пространству Интеллос, например к https://app.intellos.ru.

Настройка поставщиков LLM

Настройте поставщика модели в настройках аккаунта:
Настройка поставщика модели в настройках аккаунта

Создание Chatflow

Теперь приступим к Chatflow. Нажмите Создать с нуля, чтобы начать:
Создать с нуля, чтобы начать
Инициализированный Chatflow должен выглядеть так:

Добавление узлов в Chatflow

Итоговый Chatflow выглядит так

Узел начала

В узле начала мы можем добавить системные переменные в начале чата. В этой статье нам нужен идентификатор пользователя Twitter в виде строковой переменной. Назовём его id. Нажмите на узел начала и добавьте новую переменную:
Узел начала и добавление новой переменной

Узел кода

Согласно документации Crawlbase, переменная url (она будет использоваться в следующем узле) должна иметь вид https://twitter.com/ + user id, например https://twitter.com/elonmusk для Илона Маска. Чтобы преобразовать идентификатор пользователя в полный URL, можно использовать следующий код на Python, который объединяет префикс https://twitter.com/ с идентификатором пользователя:
Добавьте узел кода, выберите Python и задайте имена входной и выходной переменных:
Добавьте узел кода, выберите Python и задайте имена входной и выходной переменных

Узел HTTP-запроса

На основе документации Crawlbase, чтобы получить профиль пользователя Twitter в формате http, нужно заполнить узел HTTP-запроса в следующем виде:
На основе документации Crawlbase, чтобы получить профиль пользователя Twitter в формате HTTP,
Важно: из соображений безопасности лучше не вводить значение токена напрямую в виде обычного текста — это плохая практика. На самом деле в последней версии Интеллос значения токенов можно задавать в Переменные среды. Нажмите env - Добавить переменную, чтобы задать значение токена, и тогда обычный текст не появится в узле. Проверьте свой crawlbase API Key по адресу https://crawlbase.com/dashboard/account/docs.
Проверьте HTTPS
Вводя /, вы можете легко вставить API Key как переменную.
Вводя / , вы можете легко вставить API Key как переменную
Нажмите кнопку запуска этого узла, чтобы проверить, корректно ли он работает:

Узел LLM

Теперь мы можем использовать LLM, чтобы проанализировать результат, собранный crawlbase, и выполнить нашу команду. Значение context должно быть body из узла HTTP-запроса. Ниже приведён пример системного промпта.

Тестовый запуск

Нажмите Предпросмотр, чтобы начать тестовый запуск, и введите идентификатор пользователя Twitter в поле id
Предпросмотр, чтобы начать тестовый запуск и ввести идентификатор пользователя Twitter в ID
Например, я хочу проанализировать твиты Илона Маска и написать твит о глобальном потеплении в его стиле. Похоже на Илона? lol Нажмите Опубликовать в правом верхнем углу и добавьте приложение на свой сайт. Получайте удовольствие!

И напоследок…

Другие краулеры X (Twitter)

В этой статье я познакомил вас с crawlbase. Это, пожалуй, самый дешёвый из доступных сервисов-краулеров для Twitter, но иногда он не может корректно собрать содержимое твитов пользователя. Сервис краулинга Twitter, который использует упомянутый ранее wordware.ai, — это Tweet Scraper V2, но подписка на хостинговую платформу apify стоит $49 в месяц.