Skip to main content

MCP server for the Redbees modem (Zephyr RTOS): generation and verification of Lua scripts, device access over SMP (mcumgr), and flashing via esptool.

Project description

redbees-modem-mcp

MCP-сервер для модема Redbees (Zephyr RTOS): пошаговая генерация и проверка Lua-скриптов, полный доступ к устройству по SMP (mcumgr) через serial/BLE/UDP и прошивка через esptool. Подключается к любому MCP-хосту (Claude Desktop, IDE, Codex и т.д.). Работает офлайн.

🚀 Новичку — начните с раздела «Быстрый старт с нуля» ниже: установка на чистой Windows/Linux (VS Code + Cline), простым языком, по шагам. Всё, что после него, — технический справочник.

Быстрый старт с нуля

Это раздел для тех, кто начинает с чистой системы — ничего заранее устанавливать не нужно. К концу у вас будет: редактор VS Code с ИИ-ассистентом Cline, подключённый к нему MCP-сервер redbees-modem-mcp (генерация Lua, доступ к модему, прошивка) и выбранная модель ИИ. Займёт ~20–30 минут (в основном ожидание загрузок).

  1. Что понадобится
  2. Шаг 1. Установить VS Code
  3. Шаг 2. Установить расширение Cline
  4. Шаг 3. Установить uv
  5. Шаг 4. Скачать MCP-сервер
  6. Шаг 5. Скачать поисковую модель
  7. Шаг 6. Прописать MCP-сервер в Cline
  8. Шаг 7. Подключить модель ИИ (LLM) в Cline
  9. Шаг 8. Проверка

Что понадобится

  • Компьютер с Windows 10/11 или Linux и доступом в интернет.
  • Модем Redbees и USB-кабель — понадобится для команд к устройству (генерацию Lua можно пробовать и без модема).
  • Доступ к модели ИИ. Cline сам ИИ не содержит — он обращается к провайдеру. Варианты:
    • Anthropic (Claude) — ключ на https://console.anthropic.comAPI Keys;
    • OpenRouter (https://openrouter.ai) — один ключ на много моделей;
    • Ollama с облачной моделью — большие модели считаются в облаке Ollama, своя мощная видеокарта не нужна (см. вариант в шаге 7).

Две разные «модели» не перепутайте:

  • модель ИИ (LLM) — «мозг» ассистента, подключается ключом в Cline (шаг 7);
  • поисковая модель (эмбеддинги) — нужна серверу для поиска по базе знаний, скачивается в шаге 5. Её настраивать не надо.

Шаг 1. Установить VS Code

Windows:

  1. Откройте https://code.visualstudio.com и нажмите Download for Windows.
  2. Запустите скачанный установщик, жмите Далее со значениями по умолчанию.

Linux:

# Ubuntu / Debian — через snap (проще всего):
sudo snap install code --classic

Если snap нет — скачайте .deb с https://code.visualstudio.com и установите двойным кликом или sudo apt install ./code_*.deb.

Запустите VS Code.

Шаг 2. Установить расширение Cline

  1. В VS Code слева нажмите значок Extensions (или Ctrl+Shift+X).
  2. В поиске введите Cline.
  3. У расширения Cline нажмите Install.
  4. Слева появится новый значок Cline — на него будем нажимать дальше.

Шаг 3. Установить uv

uv — маленькая программа, которая сама развернёт окружение сервера и запустит его одной командой. Свой Python ставить не нужно.

Откройте терминал (Windows: меню Пуск → «PowerShell»; Linux: «Terminal»).

Windows (PowerShell):

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

После установки закройте и снова откройте терминал, затем проверьте:

uvx --version

Должна появиться строка с версией. Если «команда не найдена» — см. «Устранение проблем».

Шаг 4. Скачать MCP-сервер

Установите сам сервер заранее — иначе при первом подключении Cline может не дождаться его загрузки (~2 ГБ на диске, в основном PyTorch) и отключиться по таймауту.

В терминале:

uv tool install redbees-modem-mcp

Дождитесь строк вида:

Installed redbees-modem-mcp
Installed 2 executables: redbees-modem-mcp, redbees-modem-mcp-download-model

Первый раз — несколько минут, зависит от скорости интернета. Повторные переустановки ничего заново не качают — всё берётся из кэша uv.

Понадобится ~2 ГБ свободного места на системном диске. Если места мало, загрузка оборвётся с ошибкой «Недостаточно места на диске» (os error 112).

Шаг 5. Скачать поисковую модель

Модель для семантического поиска по базе знаний (~1 ГБ) тоже стоит скачать заранее, а не ждать первого запроса в Cline.

В том же терминале команда из шага 4 уже добавила нужную команду — просто запустите:

redbees-modem-mcp-download-model

Дождитесь строки Done! Model saved to: ... (первый раз — несколько минут). Модель сохранится в кэш (~/.cache/redbees-modem-mcp) и повторно скачиваться не будет.

Шаг 6. Прописать MCP-сервер в Cline

  1. В VS Code нажмите значок Cline слева.
  2. В окне Cline нажмите значок MCP Servers (вверху), затем Configure MCP Servers — откроется файл cline_mcp_settings.json.
  3. Вставьте в него это (если в файле уже есть { } — впишите блок redbees-modem внутрь mcpServers) и сохраните (Ctrl+S):
{
  "mcpServers": {
    "redbees-modem": {
      "command": "redbees-modem-mcp",
      "args": [],
      "env": {},
      "disabled": false,
      "autoApprove": [],
      "timeout": 3600
    }
  }
}

Команда redbees-modem-mcp — тот же исполняемый файл, который установил шаг 4 (uv tool install); используем его напрямую, а не через uvx, чтобы не ставить те же ~2 ГБ зависимостей второй раз в отдельную временную среду.

После сохранения Cline сам запустит сервер. В списке MCP напротив redbees-modem должен загореться зелёный индикатор. Первый запуск может занять до минуты (модель грузится в память).

Если Cline пишет «redbees-modem-mcp not found» — см. «Устранение проблем».

Шаг 7. Подключить модель ИИ (LLM) в Cline

  1. В окне Cline нажмите значок шестерёнки (Settings).
  2. В API Provider выберите провайдера (например, Anthropic).
  3. Вставьте свой API-ключ (из раздела «Что понадобится»).
  4. Выберите модель (например, свежую модель Claude) и сохраните.

Теперь у ассистента есть «мозг». Проверять — на следующем шаге.

Вариант: Ollama с облачной моделью. Если не хотите платный API-ключ Anthropic/OpenAI, можно подключить Ollama и запускать большие модели в облаке Ollama — тяжёлую модель считают серверы Ollama, локальная видеокарта не нужна, а Cline обращается к локальному Ollama как обычно.

  1. Установите Ollama с https://ollama.com/download (Windows/Linux/macOS).
  2. Войдите в аккаунт Ollama (нужно для облачных моделей) — в терминале:
    ollama signin
    
    (или просто следуйте подсказке при первом запуске облачной модели).
  3. Скачайте облачную модель — у неё суффикс -cloud, например:
    ollama pull gpt-oss:120b-cloud
    
    Другие варианты: qwen3-coder:480b-cloud, deepseek-v3.1:671b-cloud.
  4. В настройках Cline выберите API Provider = Ollama, оставьте Base URL http://localhost:11434 и выберите скачанную облачную модель.

Ollama умеет работать и полностью локально (маленькая модель на вашем компьютере, без входа в аккаунт и без облака) — но для сложной генерации Lua облачные модели заметно сильнее.

Шаг 8. Проверка

  1. Подключите модем по USB.

    • Windows: он появится как порт COM3/COM5 и т.п. (посмотреть можно в «Диспетчере устройств» → «Порты (COM и LPT)»).
    • Linux: обычно /dev/ttyUSB0 или /dev/ttyACM0.
  2. В окне чата Cline напишите простой запрос, например:

    Сгенерируй Lua-скрипт, который выводит статус модема.

    или, с подключённым модемом:

    Запусти диагностику устройства на COM5.

  3. Cline вызовет инструменты сервера. При первом вызове может думать чуть дольше. Когда инструмент «пишет» в устройство (прошивка, запись настроек), сервер сначала покажет превью и выполнит действие только после подтверждения — это нормально и безопасно.

Готово 🎉 Обновление сервера до новой версии не автоматическое (он установлен через uv tool install): uv tool upgrade redbees-modem-mcp, затем перезапустите сервер в Cline.


Установка (другие способы)

Кроме uv tool install из раздела выше, сервер можно поставить и так:

Через uvx (без установки)

uvx redbees-modem-mcp

uvx (часть uv) сам скачивает и запускает пакет эфемерно — отдельный venv не создаётся, но каждый запуск заново резолвит окружение (из уже скачанного кэша, не по сети).

Через pip

pip install redbees-modem-mcp

Из исходников (для разработки)

pip install -e .        # RAG-зависимости теперь в core (torch и пр. включены)

Запуск

Проще всего — готовые скрипты-лаунчеры в корне проекта: поднимают локальный HTTP-сервер (streamable-http) на http://127.0.0.1:8082/mcp. Сами находят Python из venv (.venv, затем системный) — отдельный exe не нужен. Все переменные сервера — и обязательные, и опциональные — выписаны в блоке НАСТРОЙКИ в начале каждого скрипта со значениями по умолчанию: транспорт, порт, профиль инструментов (RB_TOOLSET), модель, токен-бюджет и опциональные переопределения путей — правь прямо там.

.\run_server.ps1          # Windows PowerShell
run_server.bat            # Windows: двойной клик или cmd
./run_server.sh           # Linux/macOS (chmod +x один раз)

stdio-лаунчера нет намеренно: в stdio-режиме сервер поднимает сам MCP-хост через mcp_config.json (см. ниже) — запускать его руками не нужно.

Нет файла redbees-modem-mcp.exe, только .py? Это нормально. Exe не хранится в репозитории — это генерируемый console-script, который создаёт pip install -e . в папке Scripts твоего venv (а .venv/ в .gitignore). Лаунчеры и python -m его не требуют.

Вручную, без лаунчера. redbees-modem-mcp — это console-script; откуда он вызывается, зависит от способа установки:

  • uv tool install / uvx: команда сама резолвит и запускает пакет.
  • pip / из исходников: скрипт кладётся в папку Scripts твоего venv (\.venv\Scripts\redbees-modem-mcp.exe). Голое имя redbees-modem-mcp сработает, только если этот venv активирован. Иначе — ошибка «команда не распознана».

Надёжные способы (Windows PowerShell, установка из исходников):

# 1) активировать venv, потом звать по имени
.\.venv\Scripts\Activate.ps1
redbees-modem-mcp

# 2) без активации — полный путь к exe в venv
.\.venv\Scripts\redbees-modem-mcp.exe

# 3) без активации — через python -m (тот же venv)
.\.venv\Scripts\python.exe -m redbees_modem_mcp

# HTTP-режим без лаунчера (то же, что делает run_server.ps1):
$env:RB_TRANSPORT="streamable-http"; $env:RB_PORT="8082"; .\.venv\Scripts\python.exe -m redbees_modem_mcp

Транспорты

Сервер поддерживает два транспорта (выбор через RB_TRANSPORT):

  • stdio (по умолчанию) — по одному серверу на хост, запускает сам хост. Обычно руками не запускается (см. mcp_config.json ниже).
  • streamable-http / sse — один локальный сервер, много клиентов: один процесс → одна загруженная модель эмбеддингов на всех (меньше RAM, чем в stdio, где каждый хост поднимает свою копию). Клиенты подключаются к http://127.0.0.1:8082/mcp (для sse — эндпоинт /sse, только legacy). Слушает только localhost; аутентификации нет — пока сервер запущен, любой локальный процесс может к нему обращаться.

⚠️ Не привязывайте сервер к внешнему интерфейсу. По умолчанию RB_HOST = 127.0.0.1 (только localhost). Если выставить RB_HOST=0.0.0.0, управление устройством — включая прошивку и стирание flash — станет доступно из сети без всякой авторизации. Для доступа извне поднимайте аутентифицирующий обратный прокси.

Подключение в mcp_config.json

Раздел «Быстрый старт с нуля» уже показывает конкретно Cline. Здесь — общий формат и другие хосты/транспорты.

stdio через uv tool install (рекомендуется)

uv tool install redbees-modem-mcp
{
  "mcpServers": {
    "redbees-modem": {
      "command": "redbees-modem-mcp",
      "args": []
    }
  }
}

Обновление до новой версии не автоматическое: uv tool upgrade redbees-modem-mcp.

stdio через uvx (эфемерно, без установки)

Не требует отдельного шага установки, но каждый запуск резолвит окружение заново (правда, из уже скачанного кэша — не по сети) и не переиспользует venv из uv tool install:

{
  "mcpServers": {
    "redbees-modem": {
      "command": "uvx",
      "args": ["redbees-modem-mcp"]
    }
  }
}

Если хост пишет «команда не найдена» — укажите полный путь к exe (обычно ~/.local/bin/redbees-modem-mcp[.exe] или ~/.local/bin/uvx[.exe]) в поле command. Частая причина — GUI-хост был открыт ДО установки и не видит обновлённый PATH; перезапустите хост целиком.

HTTP/SSE вместо stdio. Если нужен один общий сервер (одна загруженная модель на несколько клиентов), подними его отдельно, а хост подключи по URL. Как поднять — зависит от способа установки:

  • source-install (клонированный репозиторий + pip install -e .): готовые лаунчеры в корне проекта — run_server.ps1 / run_server.bat (Windows) или run_server.sh (Linux/macOS); по умолчанию streamable-http на http://127.0.0.1:8082/mcp (настройки — в блоке НАСТРОЙКИ вверху скрипта);
  • uv tool install: однострочник
    $env:RB_TRANSPORT="streamable-http"; redbees-modem-mcp
    

Затем в cline_mcp_settings.json вместо command/args укажите URL:

{ "mcpServers": { "redbees-modem": { "url": "http://127.0.0.1:8082/mcp" } } }

Сервер должен быть запущен до подключения хоста. Для legacy-транспорта sse (RB_TRANSPORT=sse) эндпоинт — /sse.

stdio из локального venv

Хост запускает сервер не из твоего активированного venv, поэтому указывай полный путь к exe (или к python venv + -m), а не голое имя:

{
  "mcpServers": {
    "redbees-modem": {
      "command": "D:/PycharmProjects/rb-modem-assistant/.venv/Scripts/redbees-modem-mcp.exe",
      "env": {
        "RB_MODEL_DIR": "D:/PycharmProjects/rb-modem-assistant/models/jina-code-embeddings-0.5b"
      }
    }
  }
}

HTTP (streamable-http)

Сервер поднимаешь сам (лаунчером run_server.* или вручную), а клиент подключаешь к URL http://127.0.0.1:8082/mcp. Как именно — зависит от клиента:

  • Claude Code / клиенты с нативной поддержкой HTTP (~/.claude.json) — прямое поле url:

    { "mcpServers": { "redbees-modem": { "type": "http", "url": "http://127.0.0.1:8082/mcp" } } }
    
  • Claude Desktop — его claude_desktop_config.json понимает только stdio-формат (command/args/env); полей url/serverUrl/type он не читает. Подключение к HTTP-серверу — через мост mcp-remote (нужен Node/npx), который оборачивает HTTP в stdio:

    {
      "mcpServers": {
        "redbees-modem": {
          "command": "npx",
          "args": ["-y", "mcp-remote", "http://127.0.0.1:8082/mcp"]
        }
      }
    }
    

    Сервер (run_server) должен быть запущен до старта Claude Desktop. Альтернатива без JSON — добавить URL как Custom Connector в Settings → Connectors. Если HTTP не нужен, проще подключить сервер напрямую по stdio (см. разделы выше) — тогда Claude Desktop сам его запускает и держать run_server не надо.

Возможности

Генерация Lua — два шага с одобрением плана

  1. create_lua_script(task)Архитектор: сжатый под токен-бюджет контекст из базы знаний + план / альтернативы / вопросы / риски. Кода нет; модель ждёт одобрения пользователя.
  2. implement_plan(task, approved_plan) — роли Кодер → (Верификатор ⇄ Рефлектор) ×≥2: код по плану (без комментариев, пояснения отдельной секцией), затем итеративные проверки и правки через validate_lua_script.

Прошивка исполняет Lua 5.5 — по конструкциям языка применим официальный мануал https://www.lua.org/manual/5.5/. Полный текст мануала включён в корпус базы знаний (386 функций отдельными секциями), так что query_documentation отвечает и на вопросы по языку (синтаксис, string/table/math, метатаблицы, корутины); API устройства — только из базы знаний.

Прочие инструменты генерации/поиска: validate_lua_script (синтаксис через lupa с реальным Lua 5.5 — той же версии, что на устройстве; правила Zephyr: Watchdog в while/repeat, запрет os/io, конкатенация строк в циклах, запрет комментариев), query_documentation, compress_context, list_api_channels, list_examples, view_example, shell_api_reference, settings_api_reference.

Доступ к устройству по SMP (полный mcumgr)

Кроссплатформенно, на базе smpclient (без mcumgr.exe). Три транспорта: serial (port=COM5), BLE (ble_address/peer_name), UDP (host, IPv4/IPv6). Подсистемы:

  • smp_imagelist / upload / erase / test / confirm / ic_upload. У uploadslot (номер образа), upgrade (принять только более новую версию), use_sha (для малого MTU); у erase — выбор slot. ic_upload — загрузка через вендорную группу Intercreate (нужна её поддержка в прошивке);
  • smp_fsupload / download (size + SHA-256) / status / hash (+ off/length для хеша диапазона байт) / hash_types / close;
  • smp_osreset (+ force; boot_mode для перезагрузки в загрузчик/serial-recovery — нужна поддержка в прошивке) / echo / taskstat / mpstat / datetime / datetime_write / bootloader / mcumgr_params / appinfo;
  • smp_settingsread / write / delete / save / commit / load (value_type = str/int/bool/hex, ключи из SETTINGS_API_*.md);
  • smp_shell — shell-команды устройства (из SHELL_API_*.md);
  • smp_stat — статистика; smp_enum — перечислить поддерживаемые SMP-группы (details принимает фильтр groups);
  • smp_zephyr erase_storage — стереть раздел storage (необратимо).

Идентификация: list_serial_ports, scan_ble_devices (фильтр по SMP Service UUID), identify_device, discover_devices (дедуп одного устройства по приоритету serial→ble→udp). Развёртывание/диагностика: upload_lua_script, read_serial_logs, test_script_on_device, diagnose_device, hardware_reset_serial.

Прошивка (esptool)

esptool_version, flash_bootloader (→ 0x0), flash_application (→ 0x20000), flash_firmware (любой адрес), erase_flash.

Безопасность — по умолчанию превью

Все операции записи (прошивка, smp_* upload/erase/reset/write/delete/commit/ datetime_write/erase_storage, upload_lua_script) без confirm=true возвращают превью и ничего не делают. Тесты и диагностика на устройстве — только по явному запросу пользователя. Детали — в playbook, который сервер отдаёт хосту как instructions.

Семантический поиск (обязателен)

Семантический RAG всегда включён — без базы знаний сгенерированный Lua галлюцинировал бы. Пользователю поставляется готовый numpy-стор (bundled в пакете); приватный корпус исходников — нет. Keyword-поиск по bundled examples/ остаётся лишь как дополнение к контексту, не как самостоятельный фолбэк. Если стор не загрузился, RAG-инструменты возвращают громкий баннер SEMANTIC RAG UNAVAILABLE, а не молча деградируют.

Модель эмбеддингов (jina-code-embeddings) скачивается при первом запуске (в пользовательский кэш или RB_MODEL_DIR). Стор — обычная numpy-матрица (vectors.npy + docs.json), не chromadb: у chromadb персистентный HNSW-индекс ненадёжно перечитывается между процессами.

Пересборка стора — шаг мейнтейнера: python tools/admin_builder.py эмбеддит приватный корпус и пишет только векторы + имена файлов (без текста исходников). Модель переключается в redbees_modem_mcp/config.py (MODEL_NAME) — сменил модель, пересобери стор. На Windows держи RB_OMP_THREADS=1 (многопоточность может давать segfault этой модели).

Переменные окружения

Строго обязательных нет — у всех есть значения по умолчанию (стор bundled, модель скачивается сама). Все переменные также выписаны в блоке НАСТРОЙКИ лаунчеров run_server.* (обязательные — активны, опциональные — закомментированы). На практике задаёшь переменные транспорта для HTTP-режима и, при необходимости, RB_MODEL_DIR / RB_VECTOR_DB_DIR на свою модель/стор.

Переменная По умолчанию Назначение
RB_TRANSPORT stdio stdio | streamable-http | sse
RB_HOST 127.0.0.1 host для HTTP-транспортов
RB_PORT 8082 порт для HTTP-транспортов
RB_TOOLSET full full = все инструменты; lua = только 8 инструментов генерации/проверки Lua + доки (меньше контекста, лучше выбор инструментов у слабых LLM)
RB_MODEL_NAME jina-code-embeddings-0.5b модель эмбеддингов (также в config.py); перебивается RB_MODEL_DIR. Должна совпадать с моделью, которой собран стор — bundled-стор собран 0.5b
RB_MODEL_DIR ./models/<name> или кэш папка локальной модели (полный путь; главнее RB_MODEL_NAME). Скачивается, если её нет
RB_HF_REPO_ID jinaai/<RB_MODEL_NAME> HF-репозиторий для автоскачивания модели; нужен только для не-jina моделей
RB_VECTOR_DB_DIR bundled data/vector_store папка numpy-стора
RB_OMP_THREADS 1 потоки CPU для эмбеддинга; на Windows держать 1 (многопоток может дать segfault)
RB_EXAMPLES_DIR bundled data/examples папка Lua-примеров и API-доков
RB_DOC_TOKEN_BUDGET 6000 токен-бюджет сжатия контекста (единственный способ задать бюджет: клиент передать его не может)
HF_TOKEN токен HuggingFace для скачивания модели (если нужно)

Разработка

pip install -e .            # RAG-зависимости теперь в core
python tests/run_all.py     # офлайн-тесты
python -m redbees_modem_mcp # запуск из исходников

Сборка векторного стора (только для мейнтейнера)

Сборщик tools/admin_builder.py и приватный корпус secret_source_codes/ не входят в дистрибутив и недоступны пользователям. Сборка из исходников (семантические зависимости уже в core, ничего доп. не нужно):

$env:RB_SOURCE_DIR="./secret_source_codes"                       # приватный .lua/.md корпус
$env:RB_MODEL_DIR="./models/jina-code-embeddings-0.5b"           # та же локальная модель
.\.venv\Scripts\python.exe tools/admin_builder.py                # → redbees_modem_mcp/data/vector_store

Стор строится только на локальной модели (офлайн). По умолчанию сборщик пишет результат (vectors.npy + docs.json — только векторы и имена файлов, без текста корпуса) прямо в redbees_modem_mcp/data/vector_store — оттуда он попадает в wheel и сервер находит его без переменных окружения. RB_VECTOR_DB_DIR переопределяет путь и у сборщика, и у сервера (для экспериментов).

Устранение проблем

uvx --version → «команда не найдена» (после установки uv). Закройте терминал и откройте заново — установщик прописывает uv в PATH только для новых окон. Не помогло: перезагрузите компьютер.

Хост пишет «redbees-modem-mcp not found» при запуске сервера. GUI-хост (Cline, Claude Desktop и т.п.) не видит PATH, обновлённый после установки uv/сервера — особенно если он был открыт ДО этого. Варианты:

  • перезапустите хост целиком (не только окно, а процесс) и попробуйте снова;
  • укажите полный путь к файлу в поле command. Обычно это C:\Users\<имя>\.local\bin\redbees-modem-mcp.exe (Windows) или /home/<имя>/.local/bin/redbees-modem-mcp (Linux).

Хост долго стартует и краснеет / отваливается по таймауту. Скорее всего сервер и модель не были скачаны заранее (см. шаг 4 и шаг 5) — сервер качает себя и модель прямо на старте. Выполните в терминале uv tool install redbees-modem-mcp, затем redbees-modem-mcp-download-model, дождитесь конца, затем в хосте перезапустите сервер.

Модем не виден / нет нужного COM-порта.

  • Windows: проверьте кабель и «Диспетчер устройств»; при необходимости поставьте драйвер USB-UART.
  • Linux: добавьте себя в группу доступа к порту и перелогиньтесь:
    sudo usermod -aG dialout $USER
    

Загрузка модели идёт очень долго / обрывается. Это большая загрузка (~1 ГБ модель + ~2 ГБ зависимости сервера при самом первом запуске). Проверьте интернет и свободное место на диске, затем запустите redbees-modem-mcp-download-model ещё раз — уже скачанное не качается заново.

WinError 1114 при инициализации c10.dll

Если при запуске сервера или скачивании модели в консоли ошибка: [WinError 1114] Произошёл сбой в программе инициализации DLL. Error loading "...c10.dll"...

По умолчанию PyTorch ставит CUDA-сборку, которая конфликтует с гибридной графикой (Intel + NVIDIA) или планами энергосбережения Windows.

Решение: переустановить CPU-сборку PyTorch в venv:

pip install torch --index-url https://download.pytorch.org/whl/cpu --force-reinstall

Segfault при эмбеддинге / SEMANTIC RAG UNAVAILABLE

Многопоточность OpenMP/MKL на Windows может ронять модель. Держи RB_OMP_THREADS=1 (значение по умолчанию). Сервер и сборщик уже фиксируют переменные OMP/MKL и пред-импортируют torch до нативных модулей устройства.

Лицензия

Apache-2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

redbees_modem_mcp-0.2.1.tar.gz (737.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

redbees_modem_mcp-0.2.1-py3-none-any.whl (746.8 kB view details)

Uploaded Python 3

File details

Details for the file redbees_modem_mcp-0.2.1.tar.gz.

File metadata

  • Download URL: redbees_modem_mcp-0.2.1.tar.gz
  • Upload date:
  • Size: 737.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.7

File hashes

Hashes for redbees_modem_mcp-0.2.1.tar.gz
Algorithm Hash digest
SHA256 4576721fd8117fedb99f6faa5c8e26aa2a226a4c886156b3f6fe7140c6734a7f
MD5 4bd6e8418e2f6a1e9c07611826366602
BLAKE2b-256 1396d6df78b851d15ce171bb5013cf15372114715ed38a54560736b3947bec2a

See more details on using hashes here.

File details

Details for the file redbees_modem_mcp-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for redbees_modem_mcp-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6e21a96e63158484cff35256e0a816cbc6fd556c7f6a065a98a861dc80081320
MD5 a4ac59e92e447fa444e26446a57ff4ae
BLAKE2b-256 5e58a07a3974eb38daa3de57672d223c4fe31efe4068fe6a5a5c69d0956c33f4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page