OpenBMB выпустила две OCR-модели: одна распознаёт документы, другая проверяет, насколько результату можно доверять.
MiniCPM-OCR 1.0 – модель на 1,3 млрд параметров для китайских и английских документов. Обрабатывает текст, таблицы, формулы, графики и печати, преобразуя PDF и изображения в Markdown или JSON.
По данным команды, она набирает 93,68 на Real5-OmniDocBench и 54,7 на OCRBench v2. Поддерживает сложные снимки: перекошенные и изогнутые страницы, фотографии и повторно снятые документы.
MiniCPM-OCR Jev – проверяющая модель на 2 млрд параметров. Получает изображение и результат OCR, затем выставляет оценку качества от 0 до 1 для отдельных областей. Помогает находить текст, формулы и таблицы, требующие ручной проверки.
Jev работает и с другими распознавателями. На JevOCRBench её AUROC составляет 93,6 против 93,8 у Qwen3.5-397B-A17B. Это показатель различения правильных и ошибочных результатов, а не процент безошибочно распознанных страниц.
С ускорением DSpark авторы сообщают о пропускной способности в 1,49 раза выше PaddleOCR-VL-1.6 и в 3,62 раза выше MinerU2.5 Pro в своих тестах.
Доступны vLLM, SGLang, llama.cpp и Ollama, квантованные версии, SDK и инструкции по дообучению.
https://github.com/OpenBMB/MiniCPM-OCR
@Python_Community_ru
MiniCPM-OCR 1.0 – модель на 1,3 млрд параметров для китайских и английских документов. Обрабатывает текст, таблицы, формулы, графики и печати, преобразуя PDF и изображения в Markdown или JSON.
По данным команды, она набирает 93,68 на Real5-OmniDocBench и 54,7 на OCRBench v2. Поддерживает сложные снимки: перекошенные и изогнутые страницы, фотографии и повторно снятые документы.
MiniCPM-OCR Jev – проверяющая модель на 2 млрд параметров. Получает изображение и результат OCR, затем выставляет оценку качества от 0 до 1 для отдельных областей. Помогает находить текст, формулы и таблицы, требующие ручной проверки.
Jev работает и с другими распознавателями. На JevOCRBench её AUROC составляет 93,6 против 93,8 у Qwen3.5-397B-A17B. Это показатель различения правильных и ошибочных результатов, а не процент безошибочно распознанных страниц.
С ускорением DSpark авторы сообщают о пропускной способности в 1,49 раза выше PaddleOCR-VL-1.6 и в 3,62 раза выше MinerU2.5 Pro в своих тестах.
Доступны vLLM, SGLang, llama.cpp и Ollama, квантованные версии, SDK и инструкции по дообучению.
https://github.com/OpenBMB/MiniCPM-OCR
@Python_Community_ru
Разобраться в коде старой игры без исходников: retro-kit автоматизирует работу с Ghidra
Открытый инструмент помогает исследовать 32-битные игры примерно 1993–2010 годов: DOS-программы на Watcom C/C++ и Windows-игры в формате Win32 PE.
На выходе - C-подобный декомпилированный код, список функций, граф вызовов, строки и таблицы указателей. Это материал для анализа, а не восстановленный оригинальный исходник.
Что умеет retro-kit:
- Показывать имена методов DirectX, вызываемых через COM-таблицы.
- Распознавать библиотеки эпохи: Miles, Smacker, Bink, FMOD, BASS и другие.
- Восстанавливать сведения о C++-классах из MSVC RTTI.
- Переносить найденные имена функций между родственными версиями игры.
Есть MCP-сервер для ИИ-агентов: можно подключить Claude Code, исследовать функции и связи между ними, сохранять заметки и возвращать уточнённые имена в Ghidra.
Базовый запуск:
retrokit info GAME.EXE
retrokit analyze GAME.EXE
Понадобятся Ghidra 12.x, JDK 21+ и Python 3.10+. Лицензия - Apache 2.0.
https://github.com/nautilusbits/retrokit
@Python_Community_ru
Открытый инструмент помогает исследовать 32-битные игры примерно 1993–2010 годов: DOS-программы на Watcom C/C++ и Windows-игры в формате Win32 PE.
На выходе - C-подобный декомпилированный код, список функций, граф вызовов, строки и таблицы указателей. Это материал для анализа, а не восстановленный оригинальный исходник.
Что умеет retro-kit:
- Показывать имена методов DirectX, вызываемых через COM-таблицы.
- Распознавать библиотеки эпохи: Miles, Smacker, Bink, FMOD, BASS и другие.
- Восстанавливать сведения о C++-классах из MSVC RTTI.
- Переносить найденные имена функций между родственными версиями игры.
Есть MCP-сервер для ИИ-агентов: можно подключить Claude Code, исследовать функции и связи между ними, сохранять заметки и возвращать уточнённые имена в Ghidra.
Базовый запуск:
retrokit info GAME.EXE
retrokit analyze GAME.EXE
Понадобятся Ghidra 12.x, JDK 21+ и Python 3.10+. Лицензия - Apache 2.0.
https://github.com/nautilusbits/retrokit
@Python_Community_ru
Python выпустил внеплановые обновления безопасности: 3.15.1, 3.14.9 и 3.13.17. Причина – инцидент с сертификатами eMudhra / emSign.
Во всех трёх релизах встроенный pip обновлён до 26.2.2, включающего certifi 2026.10.19 с обновлённым набором доверенных сертификатов.
Для Python 3.13 сделали исключение: ветка уже перешла в режим исправлений безопасности, но разработчики выпустили специальное обновление с установщиками и новым pip.
Обновить сам Python недостаточно: команда отдельно просит обновить pip и uv во всех существующих виртуальных окружениях.
В анонсе приведена команда безопасного обновления pip по прямой ссылке на wheel с проверкой SHA-256.
Дополнительно установщики для macOS используют предварительную версию Tk, исправляющую возможное зависание приложений с tkinter, включая IDLE, на macOS 27.0.
https://blog.python.org/2026/10/python-3151-3149-31317/
@Python_Community_ru
Во всех трёх релизах встроенный pip обновлён до 26.2.2, включающего certifi 2026.10.19 с обновлённым набором доверенных сертификатов.
Для Python 3.13 сделали исключение: ветка уже перешла в режим исправлений безопасности, но разработчики выпустили специальное обновление с установщиками и новым pip.
Обновить сам Python недостаточно: команда отдельно просит обновить pip и uv во всех существующих виртуальных окружениях.
В анонсе приведена команда безопасного обновления pip по прямой ссылке на wheel с проверкой SHA-256.
Дополнительно установщики для macOS используют предварительную версию Tk, исправляющую возможное зависание приложений с tkinter, включая IDLE, на macOS 27.0.
https://blog.python.org/2026/10/python-3151-3149-31317/
@Python_Community_ru
🔎 Xiaomi открыла модель для разбора документов размером всего 0,8 млрд параметров
Xiaomi-OCR-0 объединяет распознавание текста, разбор структуры документа, извлечение ключевой информации и ответы на вопросы по содержимому.
То есть задача модели шире обычного «перепечатать текст с картинки»: она помогает превратить документ в данные, с которыми можно работать дальше.
По данным разработчиков:
- 95,24 балла на Real5-OmniDocBench.
- 83,2 балла в среднем на пяти тестах вопросов и ответов с опорой на распознавание текста.
- Первое место среди моделей меньше 1B параметров по качеству разбора документов на OmniDocBench v1.6.
В открытый доступ выложили веса, код инференса, интерактивное демо, MCP-сервис и Agent Skill. Последние два компонента позволяют подключать обработку документов к рабочим процессам ИИ-агентов.
Компактный размер делает модель интересной для собственной инфраструктуры. Но качество на конкретных сканах, языках и сложных таблицах стоит проверять отдельно: результаты бенчмарков не гарантируют точность на любых документах.
🤗 Huggingface: https://huggingface.co/xiaomi-research/Xiaomi-OCR-0
🔗 GitHub: https://github.com/xiaomi-research/Xiaomi-OCR-0
📄 Demo: https://huggingface.co/spaces/loongwayX/Xiaomi-OCR-0-demo #XiaomiAI #OCR #OpenSource
@Python_Community_ru
Xiaomi-OCR-0 объединяет распознавание текста, разбор структуры документа, извлечение ключевой информации и ответы на вопросы по содержимому.
То есть задача модели шире обычного «перепечатать текст с картинки»: она помогает превратить документ в данные, с которыми можно работать дальше.
По данным разработчиков:
- 95,24 балла на Real5-OmniDocBench.
- 83,2 балла в среднем на пяти тестах вопросов и ответов с опорой на распознавание текста.
- Первое место среди моделей меньше 1B параметров по качеству разбора документов на OmniDocBench v1.6.
В открытый доступ выложили веса, код инференса, интерактивное демо, MCP-сервис и Agent Skill. Последние два компонента позволяют подключать обработку документов к рабочим процессам ИИ-агентов.
Компактный размер делает модель интересной для собственной инфраструктуры. Но качество на конкретных сканах, языках и сложных таблицах стоит проверять отдельно: результаты бенчмарков не гарантируют точность на любых документах.
🤗 Huggingface: https://huggingface.co/xiaomi-research/Xiaomi-OCR-0
🔗 GitHub: https://github.com/xiaomi-research/Xiaomi-OCR-0
📄 Demo: https://huggingface.co/spaces/loongwayX/Xiaomi-OCR-0-demo #XiaomiAI #OCR #OpenSource
@Python_Community_ru
huggingface.co
xiaomi-research/Xiaomi-OCR-0 · Hugging Face
Image-Text-to-Text model with 0.9B parameters. Download, explore files and run it on Hugging Face.
⚡ pyfastlogging- быстрый неблокирующий логгер для Python
pyfastlogging — Python-обёртка над fastlogging, где запись логов вынесена в фоновые потоки. За счёт этого основной код меньше блокируется на I/O.
Что умеет:
- thread-safe логирование
- несколько writers на один logger
- консоль, файлы, TCP, syslog и callbacks
- ротация и сжатие логов
- AES-шифрование сетевого логирования
- multiprocessing и threads
- конфигурация через JSON, XML и YAML
- экспорт логов в OpenTelemetry по OTLP/HTTP
Установка:
pip install pyfastlogging
python
from pyfastlogging import TRACE, Logging, ConsoleWriterConfig
logger = Logging(
TRACE,
"main",
[ConsoleWriterConfig(TRACE, True)],
)
logger.info("Hello")
logger.shutdown()
Поддерживается Python 3.10+. Актуальный релиз - 0.9.0, лицензия - MIT OR Apache-2.0. PyPI
Хороший вариант для сервисов, где обычное логирование уже начинает влиять на latency.
https://pypi.org/project/pyfastlogging/
@Python_Community_ru
pyfastlogging — Python-обёртка над fastlogging, где запись логов вынесена в фоновые потоки. За счёт этого основной код меньше блокируется на I/O.
Что умеет:
- thread-safe логирование
- несколько writers на один logger
- консоль, файлы, TCP, syslog и callbacks
- ротация и сжатие логов
- AES-шифрование сетевого логирования
- multiprocessing и threads
- конфигурация через JSON, XML и YAML
- экспорт логов в OpenTelemetry по OTLP/HTTP
Установка:
pip install pyfastlogging
python
from pyfastlogging import TRACE, Logging, ConsoleWriterConfig
logger = Logging(
TRACE,
"main",
[ConsoleWriterConfig(TRACE, True)],
)
logger.info("Hello")
logger.shutdown()
Поддерживается Python 3.10+. Актуальный релиз - 0.9.0, лицензия - MIT OR Apache-2.0. PyPI
Хороший вариант для сервисов, где обычное логирование уже начинает влиять на latency.
https://pypi.org/project/pyfastlogging/
@Python_Community_ru
👾 Русскоязычный каталог из 2118 проектов по декомпиляции игр: от Ocarina of Time до Xbox 360
На GitHub появился awesome-список, собранный на русском: проекты, которые восстанавливают игры из машинного кода. Это декомпиляции, статические рекомпиляции, порты на исходниках и ремейки движков. Задача простая: помочь найти проект под нужную игру и платформу и объяснить, как всё это устроено.
Масштаб впечатляет. В каталоге около 2118 проектов для примерно 1829 игр, из них 1771 активных. По типам: 786 декомпиляций, 525 статических рекомпиляций, 269 портов на исходниках, 238 ремейков движков, 234 дизассемблирования, 57 браузерных портов и 9 инструментов.
По платформам лидирует ПК с 295 проектами, дальше Nintendo 64 (190), Xbox 360 и PlayStation 1 (по 161). Следом идут DOS, GameCube, PS2, Game Boy Advance и Wii. Среди примеров Zelda (Ocarina of Time, Majora's Mask, Twilight Princess), Mario 64, Sonic, Diablo, Morrowind, OpenRA и OpenRCT2.
Внутри не просто список. В README есть топ-25, отдельный список браузерных портов, каталоги по типам и платформам, раздел о том, как начать декомпилировать самому, FAQ и глоссарий. Из инструментов упоминаются N64Recomp, XenonRecomp, RT64, splat, decomp.me, objdiff и m2c. Каталог обновляется автоматически через GitHub Actions.
Важная оговорка: сами проекты работают с данными из легально купленных копий игр, а в репозитории лежат только ссылки.
Репозиторий: https://github.com/justxor/awesome-decomp-games-ru
@Python_Community_ru
На GitHub появился awesome-список, собранный на русском: проекты, которые восстанавливают игры из машинного кода. Это декомпиляции, статические рекомпиляции, порты на исходниках и ремейки движков. Задача простая: помочь найти проект под нужную игру и платформу и объяснить, как всё это устроено.
Масштаб впечатляет. В каталоге около 2118 проектов для примерно 1829 игр, из них 1771 активных. По типам: 786 декомпиляций, 525 статических рекомпиляций, 269 портов на исходниках, 238 ремейков движков, 234 дизассемблирования, 57 браузерных портов и 9 инструментов.
По платформам лидирует ПК с 295 проектами, дальше Nintendo 64 (190), Xbox 360 и PlayStation 1 (по 161). Следом идут DOS, GameCube, PS2, Game Boy Advance и Wii. Среди примеров Zelda (Ocarina of Time, Majora's Mask, Twilight Princess), Mario 64, Sonic, Diablo, Morrowind, OpenRA и OpenRCT2.
Внутри не просто список. В README есть топ-25, отдельный список браузерных портов, каталоги по типам и платформам, раздел о том, как начать декомпилировать самому, FAQ и глоссарий. Из инструментов упоминаются N64Recomp, XenonRecomp, RT64, splat, decomp.me, objdiff и m2c. Каталог обновляется автоматически через GitHub Actions.
Важная оговорка: сами проекты работают с данными из легально купленных копий игр, а в репозитории лежат только ссылки.
Репозиторий: https://github.com/justxor/awesome-decomp-games-ru
@Python_Community_ru
🏎 Всю Формулу-1 можно воспроизвести на Python. Нашёл проект с 7000 звёзд на GitHub
F1 Race Replay позволяет заново просматривать реальные гонки Формулы-1 в интерактивном режиме, отслеживая перемещения болидов и телеметрию пилотов.
Проект написан на Python и использует библиотеку FastF1 для получения исторических данных гонок.
Что умеет:
Показывает положение всех болидов на трассе, порядок пилотов, используемые шины и текущий круг.
Позволяет останавливать гонку, перематывать назад и вперёд, а также менять скорость воспроизведения от 0,1x до 256x.
Отображает скорость пилотов, передачи, состояние DRS, времена кругов и секторов. Можно выбирать нескольких гонщиков и сравнивать их телеметрию.
Есть визуализация выезда машины безопасности, графики деградации шин и отдельные окна для анализа гоночной стратегии.
Всё запускается локально:
git clone https://github.com/IAmTomShaw/f1-race-replay
cd f1-race-replay
pip install -r requirements.txt
python main.py
Внутри используются Python 3.11+, FastF1, Arcade, PySide6 и NumPy. Можно создавать собственные панели телеметрии и подключать их к потоку данных.
Хороший проект для тех, кто хочет попрактиковаться в Python, визуализации данных и анализе спортивной телеметрии.
GitHub: https://github.com/IAmTomShaw/f1-race-replay
@Python_Community_ru
F1 Race Replay позволяет заново просматривать реальные гонки Формулы-1 в интерактивном режиме, отслеживая перемещения болидов и телеметрию пилотов.
Проект написан на Python и использует библиотеку FastF1 для получения исторических данных гонок.
Что умеет:
Показывает положение всех болидов на трассе, порядок пилотов, используемые шины и текущий круг.
Позволяет останавливать гонку, перематывать назад и вперёд, а также менять скорость воспроизведения от 0,1x до 256x.
Отображает скорость пилотов, передачи, состояние DRS, времена кругов и секторов. Можно выбирать нескольких гонщиков и сравнивать их телеметрию.
Есть визуализация выезда машины безопасности, графики деградации шин и отдельные окна для анализа гоночной стратегии.
Всё запускается локально:
git clone https://github.com/IAmTomShaw/f1-race-replay
cd f1-race-replay
pip install -r requirements.txt
python main.py
Внутри используются Python 3.11+, FastF1, Arcade, PySide6 и NumPy. Можно создавать собственные панели телеметрии и подключать их к потоку данных.
Хороший проект для тех, кто хочет попрактиковаться в Python, визуализации данных и анализе спортивной телеметрии.
GitHub: https://github.com/IAmTomShaw/f1-race-replay
@Python_Community_ru
👍1
🔥 На GitHub появился большой набор нейросетей, полностью реализованных на Keras 3
ZeroModels собирает в одной библиотеке десятки pretrained-моделей для самых разных задач: LLM, VLM, computer vision, генерация изображений, depth estimation и распознавание речи.
Внутри уже есть Qwen, DeepSeek, Llama, Gemma, Stable Diffusion, Qwen-Image, Whisper, SAM, DINO, Depth Anything и много других моделей. Веса конвертируются из Transformers, timm и Diffusers в формат Keras.
Установка одной командой:
`pip install -U zeromodels`
Код открыт под Apache 2.0, но лицензии конкретных весов остаются исходными.
GitHub: https://github.com/IMvision12/ZeroModels
@Python_Community_ru
ZeroModels собирает в одной библиотеке десятки pretrained-моделей для самых разных задач: LLM, VLM, computer vision, генерация изображений, depth estimation и распознавание речи.
Внутри уже есть Qwen, DeepSeek, Llama, Gemma, Stable Diffusion, Qwen-Image, Whisper, SAM, DINO, Depth Anything и много других моделей. Веса конвертируются из Transformers, timm и Diffusers в формат Keras.
Установка одной командой:
`pip install -U zeromodels`
Код открыт под Apache 2.0, но лицензии конкретных весов остаются исходными.
GitHub: https://github.com/IMvision12/ZeroModels
@Python_Community_ru
🖥️ Python: 4 проекта недели, которые стоит добавить в закладки
В свежем дайджесте Python Hub несколько интересных новинок для Python-разработчиков, Data Engineers и ML-инженеров.
1. SQLBuild - SQL-трансформации с проверками на этапе компиляции
Новый open-source фреймворк для построения SQL и Python-пайплайнов. Проверяет ссылки на таблицы, типы колонок и контракты ещё до выполнения запросов. Поддерживает end-to-end тестирование и безопасное переименование таблиц без потери истории.
Интересная деталь: компилятор и планировщик написаны на Rust, а выполнение задач и расширения используют Python.
GitHub: https://github.com/sqlstack-io/sqlbuild
2. TorchTPU - PyTorch теперь работает нативно на Google TPU
Совместный проект Google и Meta. Разработчики могут запускать PyTorch-модели на TPU с поддержкой eager execution, torch.compile и распределённого обучения.
Перенос существующего кода может сводиться к замене .to("cuda") на .to("tpu").
Документация: https://pytorch.org/blog/introducing-torchtpu/
3. fastpybase64 - декодирование Base64 на скорости 13 ГБ/с
Библиотека Даниэля Лемира использует SIMD-оптимизации на базе simdutf и выступает заменой стандартного модуля Python base64.
В тестах на одном ядре Intel Xeon Gold 6548N она показала 13,3 ГБ/с на блоках размером 64 КБ. Это примерно в 27 раз быстрее стандартной библиотеки Python и в 4 раза быстрее pybase64.
Установка:
pip install fastpybase64
Использование:
import fastpybase64 as base64
encoded = base64.b64encode(b"hello")
decoded = base64.b64decode(encoded)
Подробнее: https://lemire.me/blog/2026/10/17/decoding-base64-in-python-at-10-gigabytes-per-second/
4. TorchNeuron - запуск PyTorch на AWS Trainium
Новый нативный backend для ускорителей AWS Trainium2 и Trainium3. Поддерживает torch.compile, распределённое обучение, пользовательские GPU-подобные ядра через NKI и профилирование.
Модель можно перенести на Trainium практически без изменения архитектуры:
model = MyModel().to("neuron")
Проект также поддерживает DDP, FSDP2 и Tensor Parallelism.
GitHub: https://github.com/aws-neuron/torch-neuronx
Все четыре проекта показывают, куда движется Python-экосистема: более строгая работа с данными, аппаратное ускорение, оптимизация низкоуровневых операций и единый интерфейс для разных вычислительных платформ.
Полный дайджест: https://pythonhub.dev/digest/2026-11-08/
@Python_Community_ru
В свежем дайджесте Python Hub несколько интересных новинок для Python-разработчиков, Data Engineers и ML-инженеров.
1. SQLBuild - SQL-трансформации с проверками на этапе компиляции
Новый open-source фреймворк для построения SQL и Python-пайплайнов. Проверяет ссылки на таблицы, типы колонок и контракты ещё до выполнения запросов. Поддерживает end-to-end тестирование и безопасное переименование таблиц без потери истории.
Интересная деталь: компилятор и планировщик написаны на Rust, а выполнение задач и расширения используют Python.
GitHub: https://github.com/sqlstack-io/sqlbuild
2. TorchTPU - PyTorch теперь работает нативно на Google TPU
Совместный проект Google и Meta. Разработчики могут запускать PyTorch-модели на TPU с поддержкой eager execution, torch.compile и распределённого обучения.
Перенос существующего кода может сводиться к замене .to("cuda") на .to("tpu").
Документация: https://pytorch.org/blog/introducing-torchtpu/
3. fastpybase64 - декодирование Base64 на скорости 13 ГБ/с
Библиотека Даниэля Лемира использует SIMD-оптимизации на базе simdutf и выступает заменой стандартного модуля Python base64.
В тестах на одном ядре Intel Xeon Gold 6548N она показала 13,3 ГБ/с на блоках размером 64 КБ. Это примерно в 27 раз быстрее стандартной библиотеки Python и в 4 раза быстрее pybase64.
Установка:
pip install fastpybase64
Использование:
import fastpybase64 as base64
encoded = base64.b64encode(b"hello")
decoded = base64.b64decode(encoded)
Подробнее: https://lemire.me/blog/2026/10/17/decoding-base64-in-python-at-10-gigabytes-per-second/
4. TorchNeuron - запуск PyTorch на AWS Trainium
Новый нативный backend для ускорителей AWS Trainium2 и Trainium3. Поддерживает torch.compile, распределённое обучение, пользовательские GPU-подобные ядра через NKI и профилирование.
Модель можно перенести на Trainium практически без изменения архитектуры:
model = MyModel().to("neuron")
Проект также поддерживает DDP, FSDP2 и Tensor Parallelism.
GitHub: https://github.com/aws-neuron/torch-neuronx
Все четыре проекта показывают, куда движется Python-экосистема: более строгая работа с данными, аппаратное ускорение, оптимизация низкоуровневых операций и единый интерфейс для разных вычислительных платформ.
Полный дайджест: https://pythonhub.dev/digest/2026-11-08/
@Python_Community_ru
Octop - open-source платформа, где можно запускать сразу несколько AI-агентов для себя, семьи или команды, при этом все данные остаются на вашей машине.
Главное:
- multi-user + multi-agent архитектура;
- Web UI, CLI, Telegram, Feishu, DingTalk, QQ, WeCom;
- собственная память для каждого workspace;
- RAG по вашим документам;
- browser automation через headless Chromium;
- удалённый рабочий стол и управление GUI;
- cron-задачи на естественном языке;
- интеграция с Claude Code и OpenCode через ACP;
- MCP/OAuth connectors и система плагинов;
- SQLite по умолчанию, PostgreSQL опционально.
GitHub - https://github.com/TencentCloud/Octop
@Python_Community_ru
Главное:
- multi-user + multi-agent архитектура;
- Web UI, CLI, Telegram, Feishu, DingTalk, QQ, WeCom;
- собственная память для каждого workspace;
- RAG по вашим документам;
- browser automation через headless Chromium;
- удалённый рабочий стол и управление GUI;
- cron-задачи на естественном языке;
- интеграция с Claude Code и OpenCode через ACP;
- MCP/OAuth connectors и система плагинов;
- SQLite по умолчанию, PostgreSQL опционально.
GitHub - https://github.com/TencentCloud/Octop
@Python_Community_ru