🚀 Kreuzberg — мощный фреймворк Document Intelligence для Python!
🔹 Извлекает текст, метаданные и структурированные данные из PDF, Office-документов, изображений и др.
🔹 Основан на проверенных open-source решениях: Pandoc, PDFium, Tesseract
🔹 Поддержка 18 форматов (PDF, DOCX, PPTX, HTML, изображения, таблицы и пр.)
🔹 Высокая производительность: 30+ документов/с, лёгкий runtime (≈360 МБ), установка 71 МБ
🔹 Открытый исходный код под MIT-лицензией, 2 000⭐ на GitHub
GitHub
Пример:
from kreuzberg import extract_file
# In your async function
result = await extract_file("presentation.pptx")
print(result.content)
# Rich metadata extraction
print(f"Title: {result.metadata.title}")
print(f"Author: {result.metadata.author}")
print(f"Page count: {result.metadata.page_count}")
print(f"Created: {result.metadata.created_at}")
✨ Попробуйте: https://github.com/Goldziher/kreuzberg
#Python #OCR #DocumentIntelligence #OpenSource #Kreuzberg
@Python_Community_ru
🔹 Извлекает текст, метаданные и структурированные данные из PDF, Office-документов, изображений и др.
🔹 Основан на проверенных open-source решениях: Pandoc, PDFium, Tesseract
🔹 Поддержка 18 форматов (PDF, DOCX, PPTX, HTML, изображения, таблицы и пр.)
🔹 Высокая производительность: 30+ документов/с, лёгкий runtime (≈360 МБ), установка 71 МБ
🔹 Открытый исходный код под MIT-лицензией, 2 000⭐ на GitHub
GitHub
Пример:
from kreuzberg import extract_file
# In your async function
result = await extract_file("presentation.pptx")
print(result.content)
# Rich metadata extraction
print(f"Title: {result.metadata.title}")
print(f"Author: {result.metadata.author}")
print(f"Page count: {result.metadata.page_count}")
print(f"Created: {result.metadata.created_at}")
✨ Попробуйте: https://github.com/Goldziher/kreuzberg
#Python #OCR #DocumentIntelligence #OpenSource #Kreuzberg
@Python_Community_ru
🖥Тебе не всегда стоит использовать классы в Python
Python известен простотой и читабельностью — и многие сразу переходят к использованию классов. Но как показывает опыт, классы далеко не всегда нужны:
Python — невероятно гибкий язык, но классы не всегда лучший выбор. В большинстве случаев стандартные типы, функции и библиотеки предлагают более простые и элегантные решения.
🔍 Когда вы можете обойтись без класса
1. Хранение простых данных
Вместо класса:
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
point = Point(10, 20)
Point = namedtuple('Point', ['x', 'y'])
point = Point(10, 20)
# или
@dataclass
class Point:
x: int
y: int
point = Point(10, 20)
Статические утилиты без состояния
Вместо:
class Utils:
@staticmethod
def add(a, b): return a + b
result = Utils.add(3, 4)
используйте просто функцию:
def add(a, b): return a + b
result = add(3, 4)
Группировка констант
Вместо использования отдельного класса:
class Config:
HOST = 'localhost'
PORT = 8080
можно определить модуль с константами:
HOST = 'localhost'
PORT = 8080
Простые изменяемые состояния
Если нужен лишь список или словарь:
inventory = []
inventory.append('apple')
Операции на лету
Вместо класса с одним методом transform:
result = Transformer().transform([1,2,3])
используйте:
result = [x*2 for x in [1,2,3]]
Стандартная библиотека может уже всё заменить
Например, configparser, json, csv и другие модули часто покрывают функциональность управления конфигурациями без необходимости писать класс вручную.
✅ Когда классы всё же уместны
Используйте классы, если вам действительно нужны:
- Состояние и поведение, связанные вместе
- Наследование и расширяемость
- Капсуляция логики и данных
- Чёткая структура и переиспользуемость
Но многие простые сценарии проще и понятнее реализовать без OOP-механизмов
💡 Почему это важно
Это помогает избежать избыточного кода и упростить архитектуру
Повышает читабельность, особенно для новичков или в небольших скриптах
Снижает перегрузку инициализации, особенно там, где функциональность тривиальна
📌 Подробнее (https://adamgrant.micro.blog/2025/07/24/123050.html)
@Python_Community_ru
Python известен простотой и читабельностью — и многие сразу переходят к использованию классов. Но как показывает опыт, классы далеко не всегда нужны:
Python — невероятно гибкий язык, но классы не всегда лучший выбор. В большинстве случаев стандартные типы, функции и библиотеки предлагают более простые и элегантные решения.
🔍 Когда вы можете обойтись без класса
1. Хранение простых данных
Вместо класса:
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
point = Point(10, 20)
Point = namedtuple('Point', ['x', 'y'])
point = Point(10, 20)
# или
@dataclass
class Point:
x: int
y: int
point = Point(10, 20)
Статические утилиты без состояния
Вместо:
class Utils:
@staticmethod
def add(a, b): return a + b
result = Utils.add(3, 4)
используйте просто функцию:
def add(a, b): return a + b
result = add(3, 4)
Группировка констант
Вместо использования отдельного класса:
class Config:
HOST = 'localhost'
PORT = 8080
можно определить модуль с константами:
HOST = 'localhost'
PORT = 8080
Простые изменяемые состояния
Если нужен лишь список или словарь:
inventory = []
inventory.append('apple')
Операции на лету
Вместо класса с одним методом transform:
result = Transformer().transform([1,2,3])
используйте:
result = [x*2 for x in [1,2,3]]
Стандартная библиотека может уже всё заменить
Например, configparser, json, csv и другие модули часто покрывают функциональность управления конфигурациями без необходимости писать класс вручную.
✅ Когда классы всё же уместны
Используйте классы, если вам действительно нужны:
- Состояние и поведение, связанные вместе
- Наследование и расширяемость
- Капсуляция логики и данных
- Чёткая структура и переиспользуемость
Но многие простые сценарии проще и понятнее реализовать без OOP-механизмов
💡 Почему это важно
Это помогает избежать избыточного кода и упростить архитектуру
Повышает читабельность, особенно для новичков или в небольших скриптах
Снижает перегрузку инициализации, особенно там, где функциональность тривиальна
📌 Подробнее (https://adamgrant.micro.blog/2025/07/24/123050.html)
@Python_Community_ru
You might not need a Python class
You might not need a Python class :: Adam Grant —
Python is an incredibly versatile programming language known for its simplicity and readability. Among its features, the ability to use classes for object-oriented programming is both powerful and frequently recommended. However, classes aren’t always the…
🎙️ Higgs Audio v2 — открытая аудио‑модель, которая обходит GPT‑4o-mini-tts
Boson AI выложили модель синтеза речи, обученную на 10+ млн часов аудио — и она уже показывает лучшие результаты, чем GPT‑4o-mini-tts и другие закрытые системы.
🧠 Что умеет Higgs Audio v2:
- Генерирует естественную, эмоциональную речь
- Поддерживает мультиспикерность и клонирование голосов без дообучения
- Работает в zero-shot: достаточно текст + один голосовой пример
- Озвучка в 24 kHz — звук заметно лучше, чем у многих систем с 16 kHz
📊 Побеждает GPT‑4o-mini-tts в бенчмарках:
- 75.7 % win rate на эмоциях
- 55.7 % win rate на вопросах
- Отличные метрики по точности и качеству речи
🛠️ Открыт код + модели:
- Новый AudioVerse токенизатор (эффективность + качество)
- Dual‑FFN архитектура
- Q-learning для адаптивной выразительности
git clone https://github.com/boson-ai/higgs-audio.git
cd higgs-audio
pip install -r requirements.txt
pip install -e .
🔥 GitHub: https://github.com/boson-ai/higgs-audio
@Python_Community_ru
Boson AI выложили модель синтеза речи, обученную на 10+ млн часов аудио — и она уже показывает лучшие результаты, чем GPT‑4o-mini-tts и другие закрытые системы.
🧠 Что умеет Higgs Audio v2:
- Генерирует естественную, эмоциональную речь
- Поддерживает мультиспикерность и клонирование голосов без дообучения
- Работает в zero-shot: достаточно текст + один голосовой пример
- Озвучка в 24 kHz — звук заметно лучше, чем у многих систем с 16 kHz
📊 Побеждает GPT‑4o-mini-tts в бенчмарках:
- 75.7 % win rate на эмоциях
- 55.7 % win rate на вопросах
- Отличные метрики по точности и качеству речи
🛠️ Открыт код + модели:
- Новый AudioVerse токенизатор (эффективность + качество)
- Dual‑FFN архитектура
- Q-learning для адаптивной выразительности
git clone https://github.com/boson-ai/higgs-audio.git
cd higgs-audio
pip install -r requirements.txt
pip install -e .
🔥 GitHub: https://github.com/boson-ai/higgs-audio
@Python_Community_ru