Самое смешное - код настоящий и вполне рабочий.
Даже Pixar не пишет фейковый код.
https://x.com/toystory/status/2024529641571320101?s=20
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥3❤2
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Быстрый старт HTTP API на FastAPI с валидацией данных
Сохрани себе шаблон для быстрого старта HTTP API на FastAPI с базовой валидацией данных. Используй Pydantic для определения схемы данных и автоматической генерации документации.
Сохрани себе шаблон для быстрого старта HTTP API на FastAPI с базовой валидацией данных. Используй Pydantic для определения схемы данных и автоматической генерации документации.
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
class Item(BaseModel):
name: str
price: float
is_offer: bool = None
@app.post("/items/", response_model=Item)
async def create_item(item: Item):
return item
@app.get("/")
async def read_root():
return {"message": "Welcome to the FastAPI!"}
👎4😁4❤2🔥1
AI-гонка меняет правила игры
На NeurIPS 2025 вклад в топ-50 научных работ распределился почти поровну между Китаем и США — глобальное лидерство в ИИ теперь реально делят две страны.
Но самое интересное — структура исследований.
В США центр тяжести смещается из университетов в индустрию.
Корпоративные лаборатории Google DeepMind, Meta, Microsoft уже конкурируют на равных с топ-университетами вроде Stanford, MIT и CMU.
ИИ-наука становится частью продуктовой гонки, а не только академической.
В Китае картина другая — лидерство по-прежнему у академии:
Tsinghua, CAS, Peking University, SJTU, HKUST.
Сильная государственно-университетская модель продолжает давать результат.
Другие заметные игроки:
- Сингапур — NUS, NTU
- Южная Корея — KAIST
- ОАЭ — MBZUAI
- Канада — Mila
А вот Европа постепенно отстаёт.
В списке, только Oxford, EPFL, ETH Zurich и TUM.
Вывод простой:
ИИ сегодня — это уже не только наука.
Это геополитика, индустрия и борьба за экономическое лидерство.
Кто контролирует исследования — тот контролирует будущее технологий.
linkedin.com/posts/pierre-alexandre-balland-20b75b13_who-pushed-the-ai-frontier-at-neurips-2025-activity-7403119036496162817-vRPE
На NeurIPS 2025 вклад в топ-50 научных работ распределился почти поровну между Китаем и США — глобальное лидерство в ИИ теперь реально делят две страны.
Но самое интересное — структура исследований.
В США центр тяжести смещается из университетов в индустрию.
Корпоративные лаборатории Google DeepMind, Meta, Microsoft уже конкурируют на равных с топ-университетами вроде Stanford, MIT и CMU.
ИИ-наука становится частью продуктовой гонки, а не только академической.
В Китае картина другая — лидерство по-прежнему у академии:
Tsinghua, CAS, Peking University, SJTU, HKUST.
Сильная государственно-университетская модель продолжает давать результат.
Другие заметные игроки:
- Сингапур — NUS, NTU
- Южная Корея — KAIST
- ОАЭ — MBZUAI
- Канада — Mila
А вот Европа постепенно отстаёт.
В списке, только Oxford, EPFL, ETH Zurich и TUM.
Вывод простой:
ИИ сегодня — это уже не только наука.
Это геополитика, индустрия и борьба за экономическое лидерство.
Кто контролирует исследования — тот контролирует будущее технологий.
linkedin.com/posts/pierre-alexandre-balland-20b75b13_who-pushed-the-ai-frontier-at-neurips-2025-activity-7403119036496162817-vRPE
🔥4🤔3❤2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Обработка ошибок при считывании JSON в Python
Если вы сталкиваетесь с проблемами при считывании JSON в Python, убедитесь, что вы не забыли обрабатывать потенциальные исключения. Используйте блоки
Если вы сталкиваетесь с проблемами при считывании JSON в Python, убедитесь, что вы не забыли обрабатывать потенциальные исключения. Используйте блоки
try и except для отлова ошибок, таких как JSONDecodeError. Это поможет вам быстро диагностировать проблемы с форматом данных.
import json
json_data = '{"name": "John", "age": 30}' # Пример корректного JSON
try:
parsed_data = json.loads(json_data)
print(f"Name: {parsed_data['name']}, Age: {parsed_data['age']}")
except json.JSONDecodeError as e:
print(f"Ошибка разбора JSON: {e}")
except KeyError as e:
print(f"Отсутствует ключ: {e}")
except Exception as e:
print(f"Произошла ошибка: {e}")
👍7❤5
This media is not supported in your browser
VIEW IN TELEGRAM
Хочешь почувствовать настоящую магию автоматизации - дай Python управлять твоим компьютером. Скрипт может сам кликать, печатать, открывать программы и выполнять рутину вместо тебя. Это уровень, где ты начинаешь автоматизировать действия, а не просто обрабатывать данные. И именно тут люди впервые понимают, что программирование - это сила, а не теория.
import pyautogui, time
time.sleep(5)
pyautogui.write("Python рулит!", interval=0.1)
pyautogui.press("enter")
pyautogui.moveTo(500, 500, duration=1)
pyautogui.click()
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤5👎3
This media is not supported in your browser
VIEW IN TELEGRAM
🛡 Продвинутый совет по Docker, который экономит часы и нервы.
Большинство разработчиков используют Docker как «виртуалку в коробке». Продвинутый уровень начинается, когда ты начинаешь мыслить слоями, кешем и размером образа.
Главное правило - многоступенчатые сборки (multi-stage builds).
Зачем это нужно:
Ты разделяешь процесс сборки и запуска.
В одном образе у тебя компиляторы, dev-зависимости, инструменты сборки.
Во втором - только чистый рантайм и готовый артефакт.
В итоге:
- образ меньше в разы
- меньше уязвимостей
- быстрее деплой
- быстрее pull на серверах
Как правильно мыслить:
1. Build stage - всё тяжёлое
Здесь ты устанавливаешь build-essential, gcc, node, go, poetry, всё что нужно для сборки.
2. Runtime stage - только то, что нужно приложению в работе
Никаких компиляторов. Никаких dev-зависимостей.
3. Кеш слоёв - твой главный ускоритель
Файлы зависимостей копируются раньше кода. Тогда при изменении кода Docker не пересобирает всё.
4. Не запускай контейнеры от root
Создай пользователя внутри контейнера. Это реальный прирост безопасности.
5. Используй конкретные версии образов
Не python:latest, а python:3.12.2-slim. Иначе однажды всё сломается без твоего участия.
Большинство разработчиков используют Docker как «виртуалку в коробке». Продвинутый уровень начинается, когда ты начинаешь мыслить слоями, кешем и размером образа.
Главное правило - многоступенчатые сборки (multi-stage builds).
Зачем это нужно:
Ты разделяешь процесс сборки и запуска.
В одном образе у тебя компиляторы, dev-зависимости, инструменты сборки.
Во втором - только чистый рантайм и готовый артефакт.
В итоге:
- образ меньше в разы
- меньше уязвимостей
- быстрее деплой
- быстрее pull на серверах
Как правильно мыслить:
1. Build stage - всё тяжёлое
Здесь ты устанавливаешь build-essential, gcc, node, go, poetry, всё что нужно для сборки.
2. Runtime stage - только то, что нужно приложению в работе
Никаких компиляторов. Никаких dev-зависимостей.
3. Кеш слоёв - твой главный ускоритель
Файлы зависимостей копируются раньше кода. Тогда при изменении кода Docker не пересобирает всё.
4. Не запускай контейнеры от root
Создай пользователя внутри контейнера. Это реальный прирост безопасности.
5. Используй конкретные версии образов
Не python:latest, а python:3.12.2-slim. Иначе однажды всё сломается без твоего участия.
# Stage 1 - сборка
FROM python:3.12-slim AS builder
WORKDIR /app
COPY requirements.txt .
RUN pip install --prefix=/install --no-cache-dir -r requirements.txt
COPY . .
# Stage 2 - минимальный рантайм
FROM python:3.12-slim
WORKDIR /app
COPY --from=builder /install /usr/local
COPY --from=builder /app .
RUN useradd -m appuser
USER appuser
CMD ["python", "app.py"]
❤7🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
📊 ПОЧЕМУ МАЛЕНЬКИЕ ИИ-МОДЕЛИ ИНОГДА ЛУЧШЕ БОЛЬШИХ
Большие модели выглядят впечатляюще в бенчмарках, но в реальных системах часто выигрывают маленькие. Причина проста — продакшен живёт не метрикой “кто умнее”, а метриками latency, стоимости и стабильности.
Маленькая модель отвечает быстрее. Это значит меньше задержки для пользователя, меньше таймаутов и выше конверсия. Когда у тебя API, чат или рекомендационная система, каждые 100 мс влияют на поведение людей.
Она дешевле. Меньше VRAM, меньше серверов, меньше энергопотребление. Можно масштабировать горизонтально без огромных GPU-кластеров. В итоге ты платишь за инфраструктуру в разы меньше.
Она стабильнее. Большие модели чаще галлюцинируют на узких задачах, перегружаются контекстом и сложнее дебажатся. Маленькая модель, обученная под конкретную задачу, ведёт себя предсказуемее.
И самое важное — маленькие модели проще дообучать, быстрее деплоить и легче держать под контролем. Поэтому в проде часто побеждает не “самая умная”, а “самая управляемая”.
Большие модели выглядят впечатляюще в бенчмарках, но в реальных системах часто выигрывают маленькие. Причина проста — продакшен живёт не метрикой “кто умнее”, а метриками latency, стоимости и стабильности.
Маленькая модель отвечает быстрее. Это значит меньше задержки для пользователя, меньше таймаутов и выше конверсия. Когда у тебя API, чат или рекомендационная система, каждые 100 мс влияют на поведение людей.
Она дешевле. Меньше VRAM, меньше серверов, меньше энергопотребление. Можно масштабировать горизонтально без огромных GPU-кластеров. В итоге ты платишь за инфраструктуру в разы меньше.
Она стабильнее. Большие модели чаще галлюцинируют на узких задачах, перегружаются контекстом и сложнее дебажатся. Маленькая модель, обученная под конкретную задачу, ведёт себя предсказуемее.
И самое важное — маленькие модели проще дообучать, быстрее деплоить и легче держать под контролем. Поэтому в проде часто побеждает не “самая умная”, а “самая управляемая”.
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch, time
model_name = "Qwen/Qwen2.5-1.5B-Instruct" # маленькая модель
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=torch.float16, device_map="auto")
prompt = "Explain why smaller models can be better in production:"
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
start = time.time()
out = model.generate(**inputs, max_new_tokens=100)
latency = time.time() - start
print(tokenizer.decode(out[0], skip_special_tokens=True))
print(f"Latency: {latency:.2f}s")
❤5👎2
🔥 На stepik вышел курс, который учит Создавать настоящие AI-сервисы, а не просто запускать скрипты?
Этот практический курс по Python и FastAPI покажет, как собрать полноценное приложение с ИИ, базой данных, автогенерацией контента и Telegram-ботом.
Ты пройдёшь путь от первого HTTP-запроса до рабочего сервиса, который сам генерирует текст через ИИ, сохраняет данные, отправляет результаты по расписанию и отвечает пользователям.
Никакой теории ради теории - только практические шаги, из которых рождается реальный продукт.
🎁 48 часов действует скидка в 40% процентов
👉 Начать учиться на Stepik
Этот практический курс по Python и FastAPI покажет, как собрать полноценное приложение с ИИ, базой данных, автогенерацией контента и Telegram-ботом.
Ты пройдёшь путь от первого HTTP-запроса до рабочего сервиса, который сам генерирует текст через ИИ, сохраняет данные, отправляет результаты по расписанию и отвечает пользователям.
Никакой теории ради теории - только практические шаги, из которых рождается реальный продукт.
🎁 48 часов действует скидка в 40% процентов
👉 Начать учиться на Stepik
👎3🤔2❤1👍1🔥1🥴1
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 ЛОКАЛЬНЫЙ ИИ БЕЗ ОБЛАКА И API КЛЮЧЕЙ
Запуск локального ИИ - это способ получить быстрый отклик, приватность и контроль над моделью без зависимостей от облака.
Главное - использовать лёгкие модели и готовые инструменты, чтобы не упереться в нехватку памяти и долгую настройку окружения. Ниже — примеры, которые позволяют сразу начать работу: чат, генерация кода, запуск через Python и HTTP API.
Запуск локального ИИ - это способ получить быстрый отклик, приватность и контроль над моделью без зависимостей от облака.
Главное - использовать лёгкие модели и готовые инструменты, чтобы не упереться в нехватку памяти и долгую настройку окружения. Ниже — примеры, которые позволяют сразу начать работу: чат, генерация кода, запуск через Python и HTTP API.
Запуск модели в терминале (чат)
# Чат с моделью прямо в терминале
ollama run mistral
# Модель, заточенная под код
ollama run codellama
# Запуск локального сервера Ollama
ollama serve
❤4🔥3👍2👎2
Ты научишься делать те, которые живут в проде.
Это не про BeautifulSoup ради галочки.
Это про системы сбора данных, которые:
• не падают от мелких правок на сайте
• собирают данные в разы быстрее
• обновляют всё сами по расписанию
• обходят ограничения и баны
• выглядят как сервис, а не хаос из файлов
Ты начнёшь видеть сайты не как страницы, а как источники данных, к которым можно подключиться.
В итоге ты сможешь:
• забирать данные для своих проектов
• автоматизировать чужую рутину
• делать инструменты для аналитики
• брать коммерческие заказы на сбор данных
Это навык, который напрямую превращается в деньги.
Не “знаю Python”, а умею добывать данные из интернета профессионально.
🎁 48 часов скидка 50% на Stepik: https://stepik.org/a/269942/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍2🖕2👏1😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Настраивай Python-окружение как профи, а не как «лишь бы запустилось». Главная идея - изоляция, воспроизводимость и автоматизация.
У тебя для каждого проекта должно быть своё виртуальное окружение, зафиксированные версии зависимостей и одинаковая среда у всей команды. Используй pyenv для управления версиями Python, виртуальное окружение для проекта, файл зависимостей с точными версиями и автопроверки кода до коммита.
Тогда проект через год запустится так же, как сегодня, и на твоей машине, и на сервере, и у коллеги. Подписывайся, больше фишек каждый день !
# ставим менеджер версий Python
brew install pyenv
# ставим нужную версию Python
pyenv install 3.12.2
pyenv local 3.12.2
# создаём виртуальное окружение
python -m venv .venv
source .venv/bin/activate
# обновляем инструменты
pip install --upgrade pip
# ставим зависимости проекта
pip install fastapi uvicorn
# фиксируем версии
pip freeze > requirements.txt
# ставим pre-commit для авто-проверок
pip install pre-commit black ruff
pre-commit install
Please open Telegram to view this post
VIEW IN TELEGRAM
👎6❤4
This media is not supported in your browser
VIEW IN TELEGRAM
🚀Автопостинг из Telegram в VK на Python
Если ты ведёшь Telegram-канал и вручную дублируешь посты в VK - ты просто тратишь время.
Это легко автоматизируется на Python.
Telegram становится источником контента, VK — приёмником, а скрипт делает всю грязную работу за тебя.
Как это работает по шагам:
- бот читает новые сообщения из Telegram
- забирает текст поста
- отправляет его в VK через API
- при желании можно добавить фильтрацию, форматирование или логирование
Что нужно подготовить заранее:
- токен VK с правами
- ID сообщества VK
- токен Telegram-бота
- ID Telegram-канала или чата
Такой подход отлично подходит для:
- советов и обучающих постов
- новостей и апдейтов
- кросс-постинга контента
- роста охвата без ручной рутины
Если ты ведёшь Telegram-канал и вручную дублируешь посты в VK - ты просто тратишь время.
Это легко автоматизируется на Python.
Telegram становится источником контента, VK — приёмником, а скрипт делает всю грязную работу за тебя.
Как это работает по шагам:
- бот читает новые сообщения из Telegram
- забирает текст поста
- отправляет его в VK через API
- при желании можно добавить фильтрацию, форматирование или логирование
Что нужно подготовить заранее:
- токен VK с правами
wall- ID сообщества VK
- токен Telegram-бота
- ID Telegram-канала или чата
Такой подход отлично подходит для:
- советов и обучающих постов
- новостей и апдейтов
- кросс-постинга контента
- роста охвата без ручной рутины
import requests
TELEGRAM_BOT_TOKEN = "TELEGRAM_BOT_TOKEN"
TELEGRAM_CHAT_ID = "@your_channel"
VK_TOKEN = "VK_ACCESS_TOKEN"
VK_GROUP_ID = "123456789" # без минуса
def post_to_vk(text: str):
url = "https://api.vk.com/method/wall.post"
payload = {
"owner_id": f"-{VK_GROUP_ID}",
"from_group": 1,
"message": text,
"access_token": VK_TOKEN,
"v": "5.199",
}
requests.post(url, data=payload)
def handle_telegram_update(update):
message = update.get("message")
if not message:
return
text = message.get("text")
if text:
post_to_vk(text)
def poll_telegram():
offset = None
while True:
resp = requests.get(
f"https://api.telegram.org/bot{TELEGRAM_BOT_TOKEN}/getUpdates",
params={"offset": offset, "timeout": 30},
).json()
for update in resp["result"]:
offset = update["update_id"] + 1
handle_telegram_update(update)
poll_telegram()
🔥8❤3
⚡️ Python-код, который работает, но делает лишнее в 100 раз
Этот Python-код выглядит нормально.
Он работает.
Он проходит тесты.
Но делает лишнюю работу в десятки, а иногда и в сотни раз.
Самая частая причина — ты случайно превращаешь линейный алгоритм в квадратичный.
Типичный сценарий:
- есть список
- внутри цикла ты каждый раз делаешь
- на маленьких данных всё быстро
- на реальных — приложение начинает «тормозить без причины»
Проблема в том, что:
-
- поиск внутри цикла = O(n²)
- Python честно делает работу, которую ты ему попросил
Профи думают не «работает или нет», а сколько лишних операций выполняется.
Правильный подход:
- если нужны проверки принадлежности — используй
- если считаешь элементы — используй
- если данные не меняются — предвычисляй один раз
Этот приём один из самых частых источников скрытых performance-багов в Python-коде.
Этот Python-код выглядит нормально.
Он работает.
Он проходит тесты.
Но делает лишнюю работу в десятки, а иногда и в сотни раз.
Самая частая причина — ты случайно превращаешь линейный алгоритм в квадратичный.
Типичный сценарий:
- есть список
- внутри цикла ты каждый раз делаешь
in, count, index- на маленьких данных всё быстро
- на реальных — приложение начинает «тормозить без причины»
Проблема в том, что:
-
list — это O(n) для поиска- поиск внутри цикла = O(n²)
- Python честно делает работу, которую ты ему попросил
Профи думают не «работает или нет», а сколько лишних операций выполняется.
Правильный подход:
- если нужны проверки принадлежности — используй
set- если считаешь элементы — используй
dict или Counter- если данные не меняются — предвычисляй один раз
Этот приём один из самых частых источников скрытых performance-багов в Python-коде.
# ❌ Плохо: O(n²)
users = ["alice", "bob", "carol", "dave"]
for u in users:
if u in users: # каждый раз полный проход списка
process(u)
# ✅ Хорошо: O(n)
users = ["alice", "bob", "carol", "dave"]
users_set = set(users)
for u in users:
if u in users_set:
process(u)
🔥7❤2🥰1
Media is too big
VIEW IN TELEGRAM
🐍 Python-библиотеки - сложность изучения 🔥
• 🌐 Requests - 🟢 Легко
• 📊 Pandas - 🟢 Легко
• 🔢 NumPy - 🟢 Легко
• 📈 Matplotlib - 🟢 Легко
• 🕸️ BeautifulSoup - 🟢 Легко
• ⚡ FastAPI - 🟡 Легко–Средне
• 🧩 Pydantic - 🟡 Легко–Средне
• 📦 Pytest - 🟡 Легко–Средне
• 🗄️ SQLAlchemy - 🟠 Средне
• 🤖 Scikit-Learn - 🟠 Средне
• 🔥 PyTorch - 🟠 Средне
• 🧠 TensorFlow - 🟠 Средне
• 📉 Statsmodels - 🟠 Средне
• 🧬 Dask - 🔴 Сложно
• ⚡ Ray - 🔴 Сложно
• 🔗 LangChain - 🟠 Средне
• 🧠 LangGraph - 🟣 Очень сложно
Самые лёгкие, вроде Requests или BeautifulSoup, решают одну конкретную задачу.
У них простой API — сделал запрос, получил данные, готово.
Чуть сложнее библиотеки вроде FastAPI или Pydantic.
Они требуют понимания архитектуры приложений, валидации данных и работы серверов.
Средний уровень - SQLAlchemy, PyTorch, TensorFlow.
Здесь уже нужно понимать базы данных, машинное обучение и математические модели.
А вот Dask и Ray считаются сложными не потому, что код длинный. А потому что они работают с распределёнными вычислениями - кластеры, параллельность, управление ресурсами.
То есть чем выше уровень библиотеки, тем больше системного мышления и архитектуры нужно понимать.
Поэтому сложность Python-библиотек -
это не про Python. Это про уровень задач, которые они решают.
#Python #PythonDev #MachineLearning
https://www.youtube.com/shorts/vDm-vYmoxx0
🐍 Python полезные ресурсы 🚀Max
• 🌐 Requests - 🟢 Легко
• 📊 Pandas - 🟢 Легко
• 🔢 NumPy - 🟢 Легко
• 📈 Matplotlib - 🟢 Легко
• 🕸️ BeautifulSoup - 🟢 Легко
• ⚡ FastAPI - 🟡 Легко–Средне
• 🧩 Pydantic - 🟡 Легко–Средне
• 📦 Pytest - 🟡 Легко–Средне
• 🗄️ SQLAlchemy - 🟠 Средне
• 🤖 Scikit-Learn - 🟠 Средне
• 🔥 PyTorch - 🟠 Средне
• 🧠 TensorFlow - 🟠 Средне
• 📉 Statsmodels - 🟠 Средне
• 🧬 Dask - 🔴 Сложно
• ⚡ Ray - 🔴 Сложно
• 🔗 LangChain - 🟠 Средне
• 🧠 LangGraph - 🟣 Очень сложно
Самые лёгкие, вроде Requests или BeautifulSoup, решают одну конкретную задачу.
У них простой API — сделал запрос, получил данные, готово.
Чуть сложнее библиотеки вроде FastAPI или Pydantic.
Они требуют понимания архитектуры приложений, валидации данных и работы серверов.
Средний уровень - SQLAlchemy, PyTorch, TensorFlow.
Здесь уже нужно понимать базы данных, машинное обучение и математические модели.
А вот Dask и Ray считаются сложными не потому, что код длинный. А потому что они работают с распределёнными вычислениями - кластеры, параллельность, управление ресурсами.
То есть чем выше уровень библиотеки, тем больше системного мышления и архитектуры нужно понимать.
Поэтому сложность Python-библиотек -
это не про Python. Это про уровень задач, которые они решают.
#Python #PythonDev #MachineLearning
https://www.youtube.com/shorts/vDm-vYmoxx0
🐍 Python полезные ресурсы 🚀Max
👍13❤6🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 Как клонировать любой голос с Qwen3
Если нужен свой голос для бота, ассистента или озвучки — можно использовать Qwen3-TTS.
Модель генерирует речь и умеет подстраиваться под голос по короткому аудио-примеру.
Подходит для:
- voice-ботов
- персональных ассистентов
- озвучки видео
- генерации речи в одном стиле
Как использовать:
1. Подготовь чистый аудио-пример (5–15 секунд)
2. Передай его как reference
3. Генерируй речь из текста в нужном голосе
Если нужен свой голос для бота, ассистента или озвучки — можно использовать Qwen3-TTS.
Модель генерирует речь и умеет подстраиваться под голос по короткому аудио-примеру.
Подходит для:
- voice-ботов
- персональных ассистентов
- озвучки видео
- генерации речи в одном стиле
Как использовать:
1. Подготовь чистый аудио-пример (5–15 секунд)
2. Передай его как reference
3. Генерируй речь из текста в нужном голосе
Установка
pip install transformers soundfile accelerate
Пример использования Qwen3-TTS CustomVoice
import torch
import soundfile as sf
from transformers import AutoProcessor, AutoModel
model_id = "Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice"
processor = AutoProcessor.from_pretrained(model_id)
model = AutoModel.from_pretrained(model_id, torch_dtype=torch.float16).cuda()
text = "Привет! Это тест кастомного голоса."
reference_audio = "voice_sample.wav" # 5–15 секунд вашего голоса
inputs = processor(
text=text,
reference_audio=reference_audio,
return_tensors="pt"
).to("cuda")
with torch.no_grad():
audio = model.generate(**inputs)
sf.write("output.wav", audio.cpu().numpy(), samplerate=24000)
print("Voice generated: output.wav")
Модель:
https://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice
❤5👍2👎1
🐍 Вышли новые security-релизы Python:
- Python 3.12.13
- Python 3.11.15
- Python 3.10.20
Это обновления безопасности для поддерживаемых веток Python.
Важно: эти версии уже находятся в стадии security-fix only, поэтому релизы выходят нерегулярно и содержат в основном исправления уязвимостей и критических багов.
Что исправили:
1. Усилена безопасность HTML-парсера
-
-
-
-
-
-
2. Исправление проблемы памяти в SSL
Устранён use-after-free в модуле
3. Исправления безопасности для списков
Закрыты несколько уязвимостей, включая:
- use-after-free при сравнении списков
- выход за границы памяти при slice-операциях в списках
Эти исправления особенно важны для систем, работающих с параллельными или специально сформированными входными данными.
Если вы используете Python 3.10 / 3.11 / 3.12, рекомендуется обновиться.
Подробнее:
https://blog.python.org/2026/03/python-31213-31115-31020/
- Python 3.12.13
- Python 3.11.15
- Python 3.10.20
Это обновления безопасности для поддерживаемых веток Python.
Важно: эти версии уже находятся в стадии security-fix only, поэтому релизы выходят нерегулярно и содержат в основном исправления уязвимостей и критических багов.
Что исправили:
1. Усилена безопасность HTML-парсера
html.parser.HTMLParser стал устойчивее к вредоносной разметке и теперь корректно обрабатывает дополнительные RAWTEXT/PLAINTEXT элементы, включая:-
plaintext-
xmp-
iframe-
noembed-
noframes-
noscript (опционально) 2. Исправление проблемы памяти в SSL
Устранён use-after-free в модуле
ssl, который мог возникать при ошибке SSL_new(). 3. Исправления безопасности для списков
Закрыты несколько уязвимостей, включая:
- use-after-free при сравнении списков
- выход за границы памяти при slice-операциях в списках
Эти исправления особенно важны для систем, работающих с параллельными или специально сформированными входными данными.
Если вы используете Python 3.10 / 3.11 / 3.12, рекомендуется обновиться.
Подробнее:
https://blog.python.org/2026/03/python-31213-31115-31020/
❤6👍3🔥2
✔️ OpenAI хантит таланты через конкурс Parameter Golf.
Компания открыла публичное соревнование для исследователей с крайне жесткими техническими ограничениями. Участникам предстоит создать максимально эффективную языковую модель, при этом размер весов вместе с кодом для обучения не должен превышать 16 МБ. На сам процесс тренировки отводится строго до 10 минут на кластере из восьми видеокарт H100. Эффективность алгоритмов будет оцениваться на сете FineWeb.
Цель челленджа - поиск нестандартно мыслящих инженеров. Авторы лучших проектов получат приглашения на собеседование. Дополнительным стимулом станет призовой фонд в 1 млн. долларов, который распределят в виде грантов на аренду копьюта у провайдера Runpod.
На GitHub уже опубликованы базовые решения (https://github.com/openai/parameter-golf), проверочные скрипты и публичный лидерборд. Принять участие в конкурсе можно до 30 апреля.
https://openai.com/index/parameter-golf/
🐍 Python полезные ресурсы 🚀Max
#news #ai #ml #openai #chatgpt
Компания открыла публичное соревнование для исследователей с крайне жесткими техническими ограничениями. Участникам предстоит создать максимально эффективную языковую модель, при этом размер весов вместе с кодом для обучения не должен превышать 16 МБ. На сам процесс тренировки отводится строго до 10 минут на кластере из восьми видеокарт H100. Эффективность алгоритмов будет оцениваться на сете FineWeb.
Цель челленджа - поиск нестандартно мыслящих инженеров. Авторы лучших проектов получат приглашения на собеседование. Дополнительным стимулом станет призовой фонд в 1 млн. долларов, который распределят в виде грантов на аренду копьюта у провайдера Runpod.
На GitHub уже опубликованы базовые решения (https://github.com/openai/parameter-golf), проверочные скрипты и публичный лидерборд. Принять участие в конкурсе можно до 30 апреля.
https://openai.com/index/parameter-golf/
🐍 Python полезные ресурсы 🚀Max
#news #ai #ml #openai #chatgpt
❤7🔥4👍2