🧪 uQLM — движок для SQL‑запросов к LLM, разработанный в CVS Health
Что если к языковой модели можно обращаться как к обычной базе данных?
💡 uQLM (Universal Query Language for Models) позволяет писать SQL‑подобные запросы, чтобы:
✅ Обращаться к LLM как к таблице
✅ Фильтровать, агрегировать и комбинировать ответы
✅ Подключать собственные модели и источники данных
✅ Использовать привычный синтаксис SQL без prompt-инженерии
📌 Пример запроса:
uQLM работает как прослойка между пользователем и языковой моделью, облегчая интеграцию ИИ в аналитические пайплайны.
🔗 GitHub: https://github.com/cvs-health/uqlm
@pythonl
Что если к языковой модели можно обращаться как к обычной базе данных?
💡 uQLM (Universal Query Language for Models) позволяет писать SQL‑подобные запросы, чтобы:
✅ Обращаться к LLM как к таблице
✅ Фильтровать, агрегировать и комбинировать ответы
✅ Подключать собственные модели и источники данных
✅ Использовать привычный синтаксис SQL без prompt-инженерии
📌 Пример запроса:
SELECT generate_response(prompt)
FROM gpt4
WHERE prompt LIKE '%explain%'
LIMIT 5;
uQLM работает как прослойка между пользователем и языковой моделью, облегчая интеграцию ИИ в аналитические пайплайны.
🔗 GitHub: https://github.com/cvs-health/uqlm
@pythonl
❤12👍4🔥3😁3
🐍 Почему Python `deepcopy()` такой медленный и что использовать вместо него
Функция
🔥 Почему
1. Рекурсия на всём дереве объектов
Python проходит по каждому вложенному элементу, даже если их сотни тысяч.
2. Определение метода копирования
Для каждого объекта проверяется, можно ли вызвать
3. Memo-словарь для ссылок
Чтобы избежать бесконечных циклов при копировании (например, объект ссылается сам на себя), Python ведёт словарь уже скопированных элементов. Это полезно, но замедляет работу.
4. Реализация на чистом Python
В отличие от сериализации (`pickle`),
📊 Пример замеров скорости
💻 Результат (у вас может отличаться, но смысл тот же):
- d
- p
- р
⚡ Когда что использовать
✅ copy.deepcopy()
Подходит, если структура очень сложная, а вам нужна стопроцентно независимая копия.
✅ pickle.loads(pickle.dumps(obj))
Быстрее на больших структурах, плюс удобно, если данные нужно сохранять.
✅ json.loads(json.dumps(obj))
Хорошо для простых словарей и списков с базовыми типами.
✅ Ручное копирование (list comprehension, dict comprehension)
Лучший вариант, если вы знаете структуру данных и хотите максимум скорости.
📌 Итог
d
Если важна производительность — используйте сериализацию или ручные методы копирования, они могут быть в десятки и сотни раз быстрее.
Ставь 🔥, сохраняй себе в копилку Python-трюков, чтобы не забыть 😉
@pythonl
Функция
copy.deepcopy()
кажется удобной: она создаёт полную копию объекта со всеми вложенными структурами. Но на практике она часто оказывается очень медленной и становится бутылочным горлышком в проектах. Давайте разберёмся почему так происходит и какие есть альтернативы. 🔥 Почему
deepcopy()
тормозит 1. Рекурсия на всём дереве объектов
Python проходит по каждому вложенному элементу, даже если их сотни тысяч.
2. Определение метода копирования
Для каждого объекта проверяется, можно ли вызвать
__deepcopy__
, или приходится идти стандартным путём. 3. Memo-словарь для ссылок
Чтобы избежать бесконечных циклов при копировании (например, объект ссылается сам на себя), Python ведёт словарь уже скопированных элементов. Это полезно, но замедляет работу.
4. Реализация на чистом Python
В отличие от сериализации (`pickle`),
deepcopy()
не ускорена на уровне C, поэтому работает медленнее. 📊 Пример замеров скорости
import copy, pickle, time
data = [[i for i in range(1000)] for _ in range(1000)]
# deepcopy
start = time.time()
a = copy.deepcopy(data)
print("deepcopy:", time.time() - start)
# pickle
start = time.time()
b = pickle.loads(pickle.dumps(data))
print("pickle roundtrip:", time.time() - start)
# list comprehension (для списков списков)
start = time.time()
c = [sub[:] for sub in data]
print("manual copy:", time.time() - start)
💻 Результат (у вас может отличаться, но смысл тот же):
- d
eepcopy:
~2.5 сек - p
ickle:
~0.8 сек - р
учное копирование:
~0.02 сек (!) ⚡ Когда что использовать
✅ copy.deepcopy()
Подходит, если структура очень сложная, а вам нужна стопроцентно независимая копия.
✅ pickle.loads(pickle.dumps(obj))
Быстрее на больших структурах, плюс удобно, если данные нужно сохранять.
✅ json.loads(json.dumps(obj))
Хорошо для простых словарей и списков с базовыми типами.
✅ Ручное копирование (list comprehension, dict comprehension)
Лучший вариант, если вы знаете структуру данных и хотите максимум скорости.
📌 Итог
d
eepcopy()
— это универсальный инструмент, но он платит за универсальность скоростью. Если важна производительность — используйте сериализацию или ручные методы копирования, они могут быть в десятки и сотни раз быстрее.
Ставь 🔥, сохраняй себе в копилку Python-трюков, чтобы не забыть 😉
@pythonl
1🔥24❤7👍7
🌟 Большой гайд по TOML и
TOML стал стандартом для конфигурации Python-проектов благодаря своей простоте и читаемости. Начиная с Python 3.11, вы можете парсить TOML-файлы встроенным модулем
Хотя
🔗 Ссылка - *клик*
@pythonl
tomllib
на Python TOML стал стандартом для конфигурации Python-проектов благодаря своей простоте и читаемости. Начиная с Python 3.11, вы можете парсить TOML-файлы встроенным модулем
tomllib
без установки дополнительных зависимостей. Это удобно для работы с pyproject.toml и конфигами инструментов вроде pytest, mypy и black. Хотя
tomllib
поддерживает только чтение файлов, его возможностей хватает для большинства задач. Для записи и сложного редактирования TOML можно использовать библиотеки toml или tomlkit. В статье подробно разбираются примеры чтения конфигов и работа с pyproject.toml. 🔗 Ссылка - *клик*
@pythonl
❤8👍6🔥1
Forwarded from Machinelearning
Что она умеет:
-
- Автоматическая пунктуация, капитализация и точные таймстампы до слова.
- Поддержка русского, французского, немецкого, испанского и многих других языков.
Чем интересна
- До 10× быстрее инференс, чем у моделей в 3 раза больше.
- Уже показывает state-of-the-art точность среди открытых моделей на Hugging Face.
- Лицензия CC-BY-4.0 — можно свободно использовать в проектах.
Под капотом:
- Архитектура: FastConformer-энкодер + Transformer-декодер (~978M параметров).
- Форматы:
.wav
и .flac
, моно 16 кГц. - Легко интегрируется через NVIDIA NeMo или прямо с Hugging Face.
Где пригодится:
Всего ~978M параметров → легче, быстрее и дешевле в использовании, чем большие модели конкурентов.
@ai_machinelearning_big_data
#AI #NVIDIA #SpeechRecognition #ASR #AST #Multilingual #MachineLearning #DeepLearning
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍8🔥5
❌ Монолитные тесты = больше головной боли при отладке.
Когда в одном тесте проверяешь всё подряд, при падении непонятно, какой именно сценарий сломался.
✅ Пишем специфичные тесты.
Каждая функция тестирует один конкретный случай. Так при падении сразу видно, где ошибка.
Плохо:
Хорошо:
📌 Результат — быстрее находишь баги и не тратишь время на догадки.
Когда в одном тесте проверяешь всё подряд, при падении непонятно, какой именно сценарий сломался.
✅ Пишем специфичные тесты.
Каждая функция тестирует один конкретный случай. Так при падении сразу видно, где ошибка.
Плохо:
def test_extract_sentiment():
assert extract_sentiment("I love this!") == "positive"
assert extract_sentiment("Terrible") == "negative"
assert extract_sentiment("On time") == "neutral"
Хорошо:
def test_extract_sentiment_positive():
assert extract_sentiment("I love this!") == "positive"
def test_extract_sentiment_negative():
assert extract_sentiment("Terrible") == "negative"
📌 Результат — быстрее находишь баги и не тратишь время на догадки.
👍10❤7🔥3
IT-конференция про разработку, облака, AI и данные 🖥
3 сентября команда Cloud․ru снова проводит IT-конференцию — GoCloud Tech.
В этот раз целый трек посвящен Dev Platform Services:
Еще будут отдельные треки про AI&ML, облачную инфраструктуру и работу с данными, демо, воркшопы и afterparty.
Где и когда⬇️
3 сентября, Москва, Гоэлро Лофт
Не пропустите🖱
3 сентября команда Cloud․ru снова проводит IT-конференцию — GoCloud Tech.
В этот раз целый трек посвящен Dev Platform Services:
➡️ Мультикластерное автомасштабирование в Kubernetes➡️ Что «под капотом» монтирования S3➡️ Как улучшить cloud native продукт с помощью eBPF➡️ Применение подхода Architecture as Code➡️ И другие доклады про ускорение разработки
Еще будут отдельные треки про AI&ML, облачную инфраструктуру и работу с данными, демо, воркшопы и afterparty.
Где и когда
3 сентября, Москва, Гоэлро Лофт
Не пропустите
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
🚀 FastMCP 2.0 — новый стандарт для интеграции LLM в Python-приложения. Этот фреймворк для работы с упрощает подключение языковых моделей к внешним ресурсам. Инструмент предлагает стандартизированный способ предоставления данных, инструментов и шаблонов запросов для ИИ-приложений.
Проект имеет минималистичный синтаксис: достаточно декоратора
🤖 GitHub
@pythonl
Проект имеет минималистичный синтаксис: достаточно декоратора
@mcp.tool,
чтобы превратить обычную Python-функцию в инструмент, доступный для LLM. Проект развивается как альтернатива официальному MCP SDK и уже включает клиентские библиотеки, систему аутентификации и инструменты для тестирования. При этом система автоматически генерирует схему на основе type hints и docstrings.🤖 GitHub
@pythonl
❤10👍6🔥5
DeepCode превращает научные статьи и технические документы в готовые проекты, включая фронтенд, бэкенд и полноценные репозитории.
🔹 Основные возможности:
• Paper2Code — реализация идей из исследований в рабочий код
• Text2Web — генерация интерфейсов по описанию
• Text2Backend — автоматическое создание масштабируемых серверов
• Поддержка длинных документов и многофайловых проектов
🔜 В ближайшее время разработчики обещают:
• Автоматическую проверку и валидацию кода
• Повышение скорости генерации
• Улучшенную работу с требованиями
• Бенчмарки воспроизведения научных статей (PaperBench)
Проект полностью open source: https://github.com/HKUDS/DeepCode
@pythonl
#deepcode #AI #coding
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍4🔥3