<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Python on Tatarinov</title><link>https://blog.tatarinovms.ru/tags/python/</link><description>Recent content in Python on Tatarinov</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sun, 12 Apr 2026 10:00:00 +0500</lastBuildDate><atom:link href="https://blog.tatarinovms.ru/tags/python/index.xml" rel="self" type="application/rss+xml"/><item><title>VoxCPM — клонирование вашего голоса через CLI</title><link>https://blog.tatarinovms.ru/voxcpm/</link><pubDate>Sun, 12 Apr 2026 10:00:00 +0500</pubDate><guid>https://blog.tatarinovms.ru/voxcpm/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/voxcpm/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;h1 id="развёртывание-voxcpm-на-macbook-с-чипом-apple-silicon"&gt;
 Развёртывание VoxCPM на MacBook с чипом Apple Silicon
 &lt;a class="heading-link" href="#%d1%80%d0%b0%d0%b7%d0%b2%d1%91%d1%80%d1%82%d1%8b%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-voxcpm-%d0%bd%d0%b0-macbook-%d1%81-%d1%87%d0%b8%d0%bf%d0%be%d0%bc-apple-silicon"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Данное руководство содержит пошаговые инструкции по установке и запуску &lt;a href="https://github.com/OpenBMB/VoxCPM" class="external-link" target="_blank" rel="noopener"&gt;VoxCPM&lt;/a&gt; на macOS с процессорами Apple Silicon. Игрался на своем ноуте.&lt;/p&gt;
&lt;h2 id="скачиваем-репозиторий-проекта"&gt;
 Скачиваем репозиторий проекта
 &lt;a class="heading-link" href="#%d1%81%d0%ba%d0%b0%d1%87%d0%b8%d0%b2%d0%b0%d0%b5%d0%bc-%d1%80%d0%b5%d0%bf%d0%be%d0%b7%d0%b8%d1%82%d0%be%d1%80%d0%b8%d0%b9-%d0%bf%d1%80%d0%be%d0%b5%d0%ba%d1%82%d0%b0"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Переходим в папку, где у вас всё будет аккуратно лежать и скачиваем репу:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git clone https://github.com/OpenBMB/VoxCPM.git
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cd VoxCPM
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="настройка-доступа-к-hugging-face"&gt;
 Настройка доступа к Hugging Face
 &lt;a class="heading-link" href="#%d0%bd%d0%b0%d1%81%d1%82%d1%80%d0%be%d0%b9%d0%ba%d0%b0-%d0%b4%d0%be%d1%81%d1%82%d1%83%d0%bf%d0%b0-%d0%ba-hugging-face"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Для ускорения загрузки моделей и повышения лимитов запросов рекомендуется настроить токен доступа на Hugging Face&lt;/p&gt;</description></item><item><title>Telegram бот для собачего адресника</title><link>https://blog.tatarinovms.ru/findmydog/</link><pubDate>Sun, 11 Jan 2026 14:54:00 +0500</pubDate><guid>https://blog.tatarinovms.ru/findmydog/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/findmydog/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;h3 id="введение"&gt;
 Введение
 &lt;a class="heading-link" href="#%d0%b2%d0%b2%d0%b5%d0%b4%d0%b5%d0%bd%d0%b8%d0%b5"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Потеря питомца — страшный сон любого владельца. Я решил подойти к вопросу технически и написал небольшой телеграм-бот, который будет круться на домашнем сервере, а на адреснике для своей собаки закажу QR-код, который ведет в персонального Telegram-бота.&lt;/p&gt;
&lt;h2 id="зачем-это-нужно"&gt;
 Зачем это нужно?
 &lt;a class="heading-link" href="#%d0%b7%d0%b0%d1%87%d0%b5%d0%bc-%d1%8d%d1%82%d0%be-%d0%bd%d1%83%d0%b6%d0%bd%d0%be"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Геолокация в один клик: Нашедшему не нужно объяснять на словами, где он находится. Нажатие одной кнопки в боте отправляет мне точные координаты GPS.&lt;/p&gt;</description></item><item><title>IPChecker — мониторинг внешнего IP с уведомлениями в Telegram</title><link>https://blog.tatarinovms.ru/ipchecker/</link><pubDate>Mon, 05 Jan 2026 20:00:00 +0500</pubDate><guid>https://blog.tatarinovms.ru/ipchecker/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/ipchecker/logo.webp" alt="logo"&gt;&lt;/p&gt;
&lt;p&gt;Для удалённого доступа к домашнему серверу и сервисам на нем, важно знать текущий внешний IP-адрес. Решил написать простой бот, который отслеживает изменения и присылает уведомления в Telegram.&lt;/p&gt;
&lt;h2 id="описание-проекта"&gt;
 Описание проекта
 &lt;a class="heading-link" href="#%d0%be%d0%bf%d0%b8%d1%81%d0%b0%d0%bd%d0%b8%d0%b5-%d0%bf%d1%80%d0%be%d0%b5%d0%ba%d1%82%d0%b0"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;IPChecker&lt;/strong&gt; — минималистичный Python-бот для мониторинга внешнего IP-адреса. При изменении IP отправляет уведомление в Telegram с указанием старого и нового адреса.&lt;/p&gt;
&lt;h3 id="возможности"&gt;
 Возможности
 &lt;a class="heading-link" href="#%d0%b2%d0%be%d0%b7%d0%bc%d0%be%d0%b6%d0%bd%d0%be%d1%81%d1%82%d0%b8"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Автоматическая проверка внешнего IP через API ipify.org&lt;/li&gt;
&lt;li&gt;Уведомления в Telegram при изменении адреса&lt;/li&gt;
&lt;li&gt;Сохранение истории последнего IP в локальный файла&lt;/li&gt;
&lt;li&gt;Настраиваемая частота проверок&lt;/li&gt;
&lt;li&gt;Запуск как системная служба через systemd&lt;/li&gt;
&lt;li&gt;Автоматический перезапуск при сбоях&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="установка"&gt;
 Установка
 &lt;a class="heading-link" href="#%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%ba%d0%b0"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;h3 id="1-клонирование-репозитория"&gt;
 1. Клонирование репозитория
 &lt;a class="heading-link" href="#1-%d0%ba%d0%bb%d0%be%d0%bd%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d1%80%d0%b5%d0%bf%d0%be%d0%b7%d0%b8%d1%82%d0%be%d1%80%d0%b8%d1%8f"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git clone https://gitverse.ru/tatarinovms/IPChecker.git
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cd IPChecker
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="2-установка-зависимостей"&gt;
 2. Установка зависимостей
 &lt;a class="heading-link" href="#2-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%ba%d0%b0-%d0%b7%d0%b0%d0%b2%d0%b8%d1%81%d0%b8%d0%bc%d0%be%d1%81%d1%82%d0%b5%d0%b9"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo apt install python3-requests
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="3-настройка-конфигурации"&gt;
 3. Настройка конфигурации
 &lt;a class="heading-link" href="#3-%d0%bd%d0%b0%d1%81%d1%82%d1%80%d0%be%d0%b9%d0%ba%d0%b0-%d0%ba%d0%be%d0%bd%d1%84%d0%b8%d0%b3%d1%83%d1%80%d0%b0%d1%86%d0%b8%d0%b8"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Скопируйте пример конфигурации и заполните своими данными:&lt;/p&gt;</description></item></channel></rss>