TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #121 · 20 јул.

Регулярно требуется преобразовать какой-либо текст в максимально совместимый текст для URL, имени файла, имени объекта в каком-то софте и тд. Требования совместимости простые: в тексте должны быть только допустимые символы. Обычно это a-z, 0-9 и "_" или "-". То есть, только прописные буквы латинского алфавита и цифры (как пример). Допустим, нам нужно название статьи в блоге преобразовать в slug для добавления его в URL этой статьи. Как это лучше всего сделать? В Django по умолчанию есть готовая функция slugify для таких случаев. Но я её никогда не использую. Почему? Потому что её недостаточно! Приведём пример >>> from django.utils.text import slugify >>> slugify('This is a Title') 'this-is-a-title' Пока всё отлично >>> slugify('This is a "Title!"') 'this-is-a-title' Спец символы удалились, всё хорошо. >>> slugify('Это заголовок статьи') '' Вот и приехали 😢. Если текст не английский то буквы просто игнорируются. Можно это поправить >>> slugify('Это заголовок статьи', allow_unicode=True) 'это-заголовок-статьи' Но тогда мы не вписываемся в условие. У нас появилась кириллица в тексте. Так как я часто пишу сайты для русскоязычных пользователей эта проблема весьма актуальна. Я не использую стандартную функцию и всегда пишу свою. Оригинал я не беру в расчёт и пишу полностью свою функцию. И так, по порядку: 🔸1. Исходный текст: >>> text = 'Мой заголовок №10 😁!' Взял специально посложней со специальными символами. 🔸2. Транслит Необходимо сделать транслит всех символов в латиницу. Здесь очень выручает библиотека unidecode. Помимо простого транслита кириллицы в латиницу она умеет преобразовывать спец символы и иероглифы в текстовые аналоги. from unidecode import unidecode >>> unidecode("Ñ Σ ® µ ¶ ¼ 月 山") 'N S (r) u P 1/4 Yue Shan' Очень крутая библиотека, советую👍 В нашем случае получаем такое преобразование: >>> text = unidecode(text) >>> print(text) 'Moi zagolovok No. 10 !' Отличный транслит. Смайл просто удалился, хотя я ждал что-то вроде :). Ну и ладно, всë равно невалидные символы. А еще наш код уже поддерживает любой язык, будь то хинди или корейский. 🔸4. Фильтр символов Unidecode не занимается фильтрацией по недопустимым символам. Это мы делаем в следующем шаге через regex. Просто заменим все символы на "_" если они вне указанного диапазона. >>> text = re.sub(r'[^a-zA-Z0-9]+', '_', text) >>> print(text) 'Moi_zagolovok_No_10_' Символ "+" в паттерне выручает когда несколько недопустимых символов идут рядом. Все они заменяются на один символ "_". 🔸5. Slugify Осталось удалить лишние символы по краям и сделать нижний регистр >>> text = text.strip('_').lower() >>> print(text) 'moi_zagolovok_no_10' Получаем отличный slug! 😎 🌎 Полный код в виде функции. ______________ PS. Проверку что в строке остался хоть один допустимый символ я бы вынес в отдельную функцию. #libs#tricks#django

Резултати

Пронајдени 3 слични објави

Пребарај: #slm

当前筛选 #slm清除筛选
Machinelearning

@ai_machinelearning_big_data · Post #9516 · 13.02.2026 г., 15:23

🌟Tencent сжали 1.8B модель в 2 бита: 600 МБ веса и Dual-CoT на борту. Tencent Hunyuan выкатили open-source решение для тех, кто хочет запускать LLM локально на кофеварке. HY-1.8B-2Bit - модель, которую утрамбовали так плотно, что она занимает меньше места, чем многие современные мобильные приложения. Модель пилили методом Quantization-Aware Training, который в отличие от PTQ, позволяет адаптироваться к низкой разрядности весов еще на этапе тренировки. За основу взяли backbone Hunyuan-1.8B-Instruct и жестко сжали веса до 2 бит. При этом эффективный размер в памяти получился эквивалентен модели на 300М параметров, а физический вес получился всего 600 МБ. Что самое ценное - сохранили фичу Dual-CoT: модель умеет переключаться между быстрым мышлением для простых тасков и глубоким long-CoT для сложных. 🟡Бенчмарки 🟢По сравнению с fp16-учителем (1.8B), деградация метрик всего ~4%. Это очень мало для 2-битного квантования. 🟢Разница в точности на сравнении с INT4 ничтожна - 0.13%, хотя весит модель в 2 раза меньше. 🟢Если взять плотную модель на 0.5B параметров, то HY-1.8B-2Bit обходит ее в среднем на 16-17%. На GSM8K разрыв вообще дикий: +22.29%. 🟢Prefill ускорился в 3-8 раз, генерация токенов - в 2-3 раза на поддерживаемом железе. 🟡Жирный нюанс Текущая реализация требует поддержки инструкций Arm SME2. Это значит, что вся эта красота заведется только на Apple M4 и MediaTek Dimensity 9500. Если у вас M1/M2 или Snapdragon прошлых поколений - пока мимо. Разработчики обещают подвезти Neon kernel позже. Кстати, GGUF тоже есть, так что если под рукой есть M4 - можно тестить. Остальным остается ждать оптимизации под старые инструкции. 🟡Модель 🟡GGUF 🟡Техотчет 🖥GitHub @ai_machinelearning_big_data #AI#ML#SLM#2bitQ#Tencent

Machinelearning

@ai_machinelearning_big_data · Post #9545 · 18.02.2026 г., 15:34

Tiny Aya: семейство мультиязычных SLM. Cohere Labs выкатили семейство моделей Tiny Aya на 3 млрд. параметров с контекстным окном 8К, которое поддерживает 70+ языков. Семейство заявляется как достойный кандидат для локальных переводчиков, чат-ботов и образовательных тулзов в оффлайн-режиме. Если необходимо, чтобы было быстро, локально и переводить суахили или кхмерский лучше, чем Llama - это вот оно. 🟡Фишка релиза в дата-инжиниринге. Tiny Aya учили на 6 трлн. токенов, а проблему нехватки данных для редких языков решали через синтетику от моделей-учителей (своя Command R + DeepSeek-V3). Вместо того чтобы учить одну модель всему сразу, разбили данные на языковые кластеры (Европа, Азия, Африка и т.д.) и дотюнивали отдельные ветки, после чего смержили эти региональные чекпоинты в глобальную модель Tiny Aya Global. 🟡Состав семейства Tiny Aya Global: Универсальный чекпоинт для всех языков. Tiny Aya Earth: Африка и Западная Азия. Tiny Aya Fire: Южная Азия. Tiny Aya Water: Азиатско-Тихоокеанский регион и Европа. Мы тут GGUF: Есть к каждой версии в 4, 8 и 16-бит. iOS и Android: модели доступны в PocketPal 🟡Результаты тестов Global-версия бьет Gemma 3-4B в 46 языках из 61 на бенче WMT24++. На iPhone 17 Pro выдает 32 токена/сек, на стареньком iPhone 13 - около 10 токенов/сек в квантовании Q4_k_m. Самый высокий показатель безопасности (91.1%) среди конкурентов (Qwen3-4B, Ministral-3-3B). 🟡Капля реализма Это 3B модель. В сложных задачах она очевидно хуже или где-то рядом с одноклассниками, чудес ждать не стоит. Несмотря на заявленное разнообразие, английский язык занимает львиную долю датасета во всех кластерах. При сильном сжатии (ниже Q4) качество начинает заметно страдать, особенно на редких языках. 📌Лицензирование: CC-BY-NC-4.0 License. 🟡Блогпост 🟡Набор моделей 🟡Техотчет 🟡Demo @ai_machinelearning_big_data #AI#ML#SLM#TinyAya#Cohere

Addis Standard

@addisstandardeng · Post #21411 · 16.02.2026 г., 06:57

#Sudan’s Democratic Bloc split over unauthorized talks in #Ethiopia Public divisions emerged within Sudan’s Freedom and Change – Democratic Bloc on Sunday after member organizations held unauthorized meetings with international mediators in the Ethiopian capital, #Addis_Abeba. The “Quintuple Mechanism”—comprising the #African_Union, #IGAD, the #United_Nations, the #Arab_League, and the #European_Union—is seeking to bridge the gap between Sudanese political forces to launch a process on the country’s future governance. Democratic Bloc spokesperson Juma al-Wakil disavowed the delegation in Addis Ababa, stating the coalition “did not participate in the meeting and did not send a representative delegation.” He added that no authorization had been issued for any entity to represent the bloc in the consultations. Al-Wakil, who is affiliated with Minni Minawi’s Sudan Liberation Movement (#SLM), said that if members participated, they did so in a “personal or .... https://sudantribune.com/article/310749