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

Резултати

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

Пребарај: #technologylaw

当前筛选 #technologylaw清除筛选
AI & Law

@ai_and_law · Post #368 · 06.08.2024 г., 07:04

English Court of Appeal Decides Artificial Neural Network is Not Patentable In a landmark decision, the English Court of Appeal has ruled that an artificial neural network (ANN) is not patentable, reversing the High Court’s earlier decision. This decision aligns with the UK Intellectual Property Office’s (IPO) initial rejection of the patent application on the grounds of unpatentable subject matter. The case, Comptroller-General of Patents, Designs and Trade Marks v Emotional Perception AI Ltd [2024] EWCA Civ 825, highlighted key issues about the nature of ANNs and their patentability. The Court clarified that both hardware and software ANNs are considered computers and that their "weights and biases" are equivalent to a computer program. This means they fall under the computer program exclusion from patentability unless they can demonstrate a "technical contribution" outside the computer program itself. Importantly, the Court concluded that the training of the ANN, as part of the program's creation, does not constitute a technical contribution. Additionally, the outputs of the ANN, such as improved music recommendations, were deemed non-technical and subjective, thus not contributing to the patentability of the AI system. This decision has significant implications for the patent claims of generative AI systems, where training is a crucial part of development. #AI#PatentLaw#GenerativeAI#IntellectualProperty#TechnologyLaw#AIRegulation#UKLaw

AI & Law

@ai_and_law · Post #105 · 06.09.2023 г., 07:04

UK House of Commons Committee Issues Interim AI Governance Report Hello everyone! The UK House of Commons Committee on Science, Innovation, and Technology has released an interim report on AI governance. In a consultation involving over 100 AI experts, including researchers, businesses, and civil society representatives, the Committee explored AI applications in education, healthcare, and medicine, assessing their benefits and potential risks. While the UK government currently adopts a light-touch approach to AI regulation, the Committee warns that without an AI bill introduced before the next general election, the UK may lag behind the EU and US, both of which are making significant legislative progress in AI regulation. The report identifies 12 pivotal challenges for policymakers in shaping AI frameworks: 1. Bias 2. Privacy 3. Misrepresentation 4. Access to Data 5. Access to Compute 6. Black Box Algorithms 7. Open-Source Code 8. Intellectual Property and Copyright 9. Liability 10. Employment Disruption 11. International Coordination 12. Existential Threats The report emphasizes the need for mechanisms to prevent bias, protect privacy, and ensure transparency in AI systems, urging the introduction of an AI bill to maintain the UK's leadership in AI governance. #AIGovernance#UKAI#AIRegulation#AIChallenges#AIReport#TechnologyLaw#AIInnovation