f-строки в Python:* Перед строкой ставится
f* Возвращается обычная строка
* Выражения в
{} вычисляются и подставляютсяx = 5
y = 7
f'{x} + {y} = {x+y}' # 5 + 7 = 12
x = [1, 2]
y = [3, 4]
f'{x} + {y} = {x+y}' # [1, 2] + [3, 4] = [1, 2, 3, 4]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤4🤔1
Нужно округлить даты/время в Pandas:
*
*
*
Пример:
👉 @PythonPortal
*
dt.floor — вниз (к предыдущему интервалу)*
dt.ceil — вверх (к следующему интервалу)*
dt.round — к ближайшему интервалуПример:
s.dt.floor('3h') # предыдущий 3-часовой слот
s.dt.ceil('15m') # следующий 15-минутный слот
s.dt.round('1D') # ближайшие суткиPlease open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥3❤2
Нужно обнулить время (до полуночи) в серии datetime в Pandas — используется
На выходе та же серия datetime, но у всех значений время
👉 @PythonPortal
dt.normalize:df['x'].dt.normalize()
На выходе та же серия datetime, но у всех значений время
00:00:00.Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Теперь можно искать по PDF на 500 страниц без чанкинга и без векторизации.
Андрей Карпати недавно озвучил идею:
что если база знаний работает как вики, а не как векторная база?
OpenKB — open-source CLI, построенный вокруг этой концепции.
Он компилирует сырые документы в структурированную связанную вики-систему с помощью LLM.
Знания накапливаются, а не пересобираются при каждом запросе.
В классическом RAG контекст каждый раз восстанавливается заново. Здесь модель опирается на уже построенную структуру.
Длинные PDF разбираются через PageIndex — древовидный индекс без векторов, который позволяет рассуждать по структуре документа.
Что получается на выходе:
> авто-суммаризация и страницы концептов
> кросс-ссылки между документами
> детект противоречий и пробелов
> режим наблюдения за изменениями
> markdown, совместимый с Obsidian
Поддерживаются PDF, Word, PowerPoint, Excel, HTML и изображения.
Таблицы и фигуры извлекаются нативно.
Один новый файл может автоматически обновить до 15 страниц в вики.
База знаний начинает сохранять то, что уже было выучено.
https://github.com/VectifyAI/OpenKB
👉 @PythonPortal
Андрей Карпати недавно озвучил идею:
что если база знаний работает как вики, а не как векторная база?
OpenKB — open-source CLI, построенный вокруг этой концепции.
Он компилирует сырые документы в структурированную связанную вики-систему с помощью LLM.
Знания накапливаются, а не пересобираются при каждом запросе.
В классическом RAG контекст каждый раз восстанавливается заново. Здесь модель опирается на уже построенную структуру.
Длинные PDF разбираются через PageIndex — древовидный индекс без векторов, который позволяет рассуждать по структуре документа.
Что получается на выходе:
> авто-суммаризация и страницы концептов
> кросс-ссылки между документами
> детект противоречий и пробелов
> режим наблюдения за изменениями
> markdown, совместимый с Obsidian
Поддерживаются PDF, Word, PowerPoint, Excel, HTML и изображения.
Таблицы и фигуры извлекаются нативно.
Один новый файл может автоматически обновить до 15 страниц в вики.
База знаний начинает сохранять то, что уже было выучено.
https://github.com/VectifyAI/OpenKB
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤6👍2🤔1🤝1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁44❤6👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Sentrux измеряет архитектуру кодовой базы в реальном времени.
Что делает:
→ Оценивает «здоровье» архитектуры (0–10000)
→ Отслеживает модульность, циклические зависимости, глубину, равномерность, избыточность
→ Работает за миллисекунды (Rust + tree-sitter, 52 языка)
→ Отдает фидбек, пока агенты пишут код
Как работает:
→ scan / rescan анализируют структуру
→ check_rules применяет ограничения
→ evolution отслеживает изменения во времени
→ Правила лежат в
Экспонируется как MCP-сервер:
→ Агенты получают живой структурный фидбек прямо в процессе сессии
Вместо:
code → review позже
Получаешь:
code → оценка → исправление (внутри цикла)
https://github.com/sentrux/sentrux
👉 @PythonPortal
Что делает:
→ Оценивает «здоровье» архитектуры (0–10000)
→ Отслеживает модульность, циклические зависимости, глубину, равномерность, избыточность
→ Работает за миллисекунды (Rust + tree-sitter, 52 языка)
→ Отдает фидбек, пока агенты пишут код
Как работает:
→ scan / rescan анализируют структуру
→ check_rules применяет ограничения
→ evolution отслеживает изменения во времени
→ Правила лежат в
.sentrux/rules.toml (связность, слои, циклы)Экспонируется как MCP-сервер:
→ Агенты получают живой структурный фидбек прямо в процессе сессии
Вместо:
code → review позже
Получаешь:
code → оценка → исправление (внутри цикла)
https://github.com/sentrux/sentrux
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🤔6👍1
Используй f-строки Python и спецификаторы форматирования, чтобы быстро и на скорую руку собирать таблицы:
Вывод:
👉 @PythonPortal
d = {'a':10, 'bcd': 2, 'e': 3456}
for key, value in d.items():
print(f'{key:.<5}{value:.>5}')Вывод:
a.......10
bcd......2
e.....3456
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍6🔥2
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10
Будь ленивым разработчиком 😴 😴 😴
Лучшие разработчики — не те, кто пишет больше всего кода. Это те, кто пишет минимум кода и при этом решает задачу быстрее, качественнее и надёжнее.
Это избыточный подход:
Это нормальный, идиоматичный вариант:
Лень — не про небрежность. Это про уважение к своему времени и времени команды. Это про вложение ресурсов в понимание идиом языка, чтобы фокусироваться на реальных задачах, а не переизобретать базовые вещи.
У каждого сильного разработчика есть набор «ленивых» приёмов:
✔️ генераторы списков вместо вложенных циклов
✔️
✔️ контекстные менеджеры вместо ручного открытия/закрытия ресурсов
✔️ короткие выражения, которые проходят ревью
Цель — не демонстрировать объём проделанной работы, а доставлять чистые и поддерживаемые решения с минимальными затратами.
👉 @PythonPortal
Лучшие разработчики — не те, кто пишет больше всего кода. Это те, кто пишет минимум кода и при этом решает задачу быстрее, качественнее и надёжнее.
Это избыточный подход:
transposed = []
for i in range(len(matrix[0])):
row = []
for r in matrix:
row.append(r[i])
transposed.append(row)
Это нормальный, идиоматичный вариант:
transposed = list(zip(*matrix))
Лень — не про небрежность. Это про уважение к своему времени и времени команды. Это про вложение ресурсов в понимание идиом языка, чтобы фокусироваться на реальных задачах, а не переизобретать базовые вещи.
У каждого сильного разработчика есть набор «ленивых» приёмов:
collections.defaultdict вместо ручных проверокЦель — не демонстрировать объём проделанной работы, а доставлять чистые и поддерживаемые решения с минимальными затратами.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤24👍5🔥3
Hugging Face буквально собрали у себя все ключевые «секреты».
Важно разобраться в оценке больших языковых моделей.
> Пока ты работаешь с языковыми моделями:
> обучаешь или дообучаешь свои модели,
> выбираешь модель под задачу,
> или пытаешься понять текущее состояние области,
почти неизбежно возникает вопрос:
как понять, что модель хорошая?
> Ответ — оценка качества. Она везде:
> лидерборды с рейтингами моделей,
> бенчмарки, которые якобы меряют рассуждения,
> знания, кодинг или математику,
> статьи с заявленными новыми лучшими результатами.
Но что такое оценка на самом деле?
И что она реально показывает?
Этот гайд помогает во всём разобраться.
👉 @PythonPortal
Важно разобраться в оценке больших языковых моделей.
> Пока ты работаешь с языковыми моделями:
> обучаешь или дообучаешь свои модели,
> выбираешь модель под задачу,
> или пытаешься понять текущее состояние области,
почти неизбежно возникает вопрос:
как понять, что модель хорошая?
> Ответ — оценка качества. Она везде:
> лидерборды с рейтингами моделей,
> бенчмарки, которые якобы меряют рассуждения,
> знания, кодинг или математику,
> статьи с заявленными новыми лучшими результатами.
Но что такое оценка на самом деле?
И что она реально показывает?
Этот гайд помогает во всём разобраться.
О чём вообще оценка моделей
Базовые понятия больших языковых моделей для понимания оценки
Оценка через готовые бенчмарки
Создание своей системы оценки
Главная проблема оценки
Оценка свободного текста
Статистическая корректность оценки
Стоимость и эффективность оценки
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7
Please open Telegram to view this post
VIEW IN TELEGRAM
❤28😁12🔥4
Большой момент для Soniox: сегодня запускаем Soniox Text-to-Speech.
Это серьёзный шаг вперёд. Soniox начинали с распознавания речи. Теперь, имея и распознавание, и синтез, мы становимся голосовой платформой для любого языка.
Soniox TTS заточен под самые сложные части генерации речи:
- Речь уровня носителя на более чем 60 языках
- Генерация без галлюцинаций
- Корректное озвучивание буквенно-цифровых последовательностей: числа, идентификаторы, адреса
- Правильное произношение имён и иностранных слов
- Стриминг с ультранизкой задержкой для приложений в реальном времени
Ценообразование простое: $0.70 за час сгенерированной речи.
Ключевое здесь — общий вектор: разработчики и компании могут работать с одним провайдером для базового голосового стека — распознавание речи, синтез речи, мультиязычный голос, инфраструктура реального времени, региональные деплои и соответствие требованиям.
Это важный шаг в переходе от провайдера распознавания речи к полноценной голосовой платформе для всех языков.
Голос становится базовым интерфейсом для софта. Для глобального использования он должен быть быстрым, точным, устойчивым и доступным на любом языке. Этим мы и занимаемся в Soniox.
Подробнее в блоге
👉 @PythonPortal
Это серьёзный шаг вперёд. Soniox начинали с распознавания речи. Теперь, имея и распознавание, и синтез, мы становимся голосовой платформой для любого языка.
Soniox TTS заточен под самые сложные части генерации речи:
- Речь уровня носителя на более чем 60 языках
- Генерация без галлюцинаций
- Корректное озвучивание буквенно-цифровых последовательностей: числа, идентификаторы, адреса
- Правильное произношение имён и иностранных слов
- Стриминг с ультранизкой задержкой для приложений в реальном времени
Ценообразование простое: $0.70 за час сгенерированной речи.
Ключевое здесь — общий вектор: разработчики и компании могут работать с одним провайдером для базового голосового стека — распознавание речи, синтез речи, мультиязычный голос, инфраструктура реального времени, региональные деплои и соответствие требованиям.
Это важный шаг в переходе от провайдера распознавания речи к полноценной голосовой платформе для всех языков.
Голос становится базовым интерфейсом для софта. Для глобального использования он должен быть быстрым, точным, устойчивым и доступным на любом языке. Этим мы и занимаемся в Soniox.
Подробнее в блоге
Please open Telegram to view this post
VIEW IN TELEGRAM
😁2❤1
Безумцы реализовали MicroGPT от Andrej Karpathy полностью на ПЛИС-логике.
Без графического процессора.
Без PyTorch.
Без циклов инференса на центральном процессоре.
Только трансформер, «зашитый» в железо, генерирующий 50 000+ токенов в секунду.
Модель небольшая, но идея не в этом: инференс не обязан существовать только в программной среде.
Целью было не сделать максимально большую модель.
Целью было представить весь путь инференса трансформера в виде, читаемом для железа: память, счётчики, состояния конечных автоматов, аккумуляторы, таблицы поиска и многотактные арифметические блоки.
Базовая схема использует фиксированную арифметику Q4.12 и веса, хранящиеся в ПЗУ.
Большая часть модели сводится к одной повторяющейся операции: матрично-векторному умножению. Поэтому был реализован переиспользуемый 16-канальный потоковый блок матрично-векторных вычислений и затем он временно мультиплексируется на Q/K/V, MLP и выходной слой языковой модели.
Самым интересным оказался механизм внимания.
В Python это одно аккуратное уравнение.
В RTL это превращается в расписание: генерация Q/K/V, проход по скалярным произведениям, отслеживание максимума, приближённое вычисление экспоненты, накопление, деление, смешивание V, затем обратная проекция.
https://github.com/Luthiraa/TALOS-V2
👉 @PythonPortal
Без графического процессора.
Без PyTorch.
Без циклов инференса на центральном процессоре.
Только трансформер, «зашитый» в железо, генерирующий 50 000+ токенов в секунду.
Модель небольшая, но идея не в этом: инференс не обязан существовать только в программной среде.
Целью было не сделать максимально большую модель.
Целью было представить весь путь инференса трансформера в виде, читаемом для железа: память, счётчики, состояния конечных автоматов, аккумуляторы, таблицы поиска и многотактные арифметические блоки.
Базовая схема использует фиксированную арифметику Q4.12 и веса, хранящиеся в ПЗУ.
Большая часть модели сводится к одной повторяющейся операции: матрично-векторному умножению. Поэтому был реализован переиспользуемый 16-канальный потоковый блок матрично-векторных вычислений и затем он временно мультиплексируется на Q/K/V, MLP и выходной слой языковой модели.
Самым интересным оказался механизм внимания.
В Python это одно аккуратное уравнение.
В RTL это превращается в расписание: генерация Q/K/V, проход по скалярным произведениям, отслеживание максимума, приближённое вычисление экспоненты, накопление, деление, смешивание V, затем обратная проекция.
https://github.com/Luthiraa/TALOS-V2
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤2🔥2
Есть число с плавающей точкой в Python и нужно вывести его как процент — используй формат
👉 @PythonPortal
% в f-строкеx = .023
print(f'{x:.2%}') # 2.30%
x = .02375
print(f'{x:.2%}') # 2.38% -- округляется!
x = 1.02375
print(f'{x:.2%}') # 102.38%
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤6
Count number of Faces using Python – OpenCV.pdf
355.8 KB
Как с помощью Python и OpenCV считать лица на видео / фото
🟢 Подключаемся к камере.
🟢 Используем библиотеку dlib для обнаружения лиц.
🟢 Рисуем рамки вокруг лиц и выводим их количество.
🟢 Останавливаем программу по нажатию "q".
Пример кода тоже есть.
👉 @PythonPortal
Пример кода тоже есть.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍4
Please open Telegram to view this post
VIEW IN TELEGRAM
😁38❤3👍2
Смотри топовые научные статьи по ИИ, машинному обучению, робототехнике, квантовой физике и другим направлениям на kurate.org.
Сотни препринтов с arXiv ежедневно ранжируются по научному импакту через парные сравнения, где судьями выступают модели — Claude, GPT и Gemini.
👉 @PythonPortal
Сотни препринтов с arXiv ежедневно ранжируются по научному импакту через парные сравнения, где судьями выступают модели — Claude, GPT и Gemini.
Please open Telegram to view this post
VIEW IN TELEGRAM