URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 123147
[ Назад ]

Исходное сообщение
"Выпуск spaCy 3.0, библиотеки для обработки информации на естественном языке"

Отправлено opennews , 01-Фев-21 23:17 
Компания Explosion AI опубликовала выпуск свободной библиотеки spaCy с реализацией алгоритмов обработки текста на естественном языке (NLP, Natural Language...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=54505


Содержание

Сообщения в этом обсуждении
"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Корец , 01-Фев-21 23:17 
Я гляжу, что даже сложный софт пишется на таких языках, как пайтон. Но ведь 2.7 закопали, так? Значит весь софт, который был написан под старую версию нужно переписывать. Значит со временем текущие реализации пайтона тоже закопают и софт придётся переписывать.

Объясните мне суть. Почему для подобных проектов не используются более "стабильные" языки?


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Урри , 01-Фев-21 23:25 
Потому что буяк-буяк и в продакшен.
А если взлетит, то потом желающие могут и переписать на нормальном быстром языке.

Лично я такой подход поддерживаю (с одним единым исключением - лишь бы не на джаваскрипте).


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Корец , 01-Фев-21 23:34 
Звучит разумно, наверное вы правы.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 00:24 
Сабж очень быстрый и эффективный. Альтернатив подобного уровня на других языках я не знаю, куда ты там переписывать собрался?

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено iCat , 02-Фев-21 03:48 
Ну он же сказал: на стабильный язык. На ассемблер. ;)

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 10:17 
ассемблер нифига не стабильный. на разных процах он отличается. выходят новые процы с еще более расширенными наборами инструкция

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Массаракш , 02-Фев-21 17:14 
В пайтон удобно выбрасывать высокоуровневую логику, API, и вообще не ждать миллиард лет после каждой компиляции... а оптимизированные куску можно невозбранно переписывать на Cython - который таки компилится в Cи и машинный код и из остального кода питона дергать их.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 21:29 
На Delphi пишу. Агонь. Компиляция самая быстрая на этой планете.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Анонимный_анон , 03-Фев-21 08:04 
Не перепишут, потому что переписать такой слой brainware это очень большая работа, тем более с языка на язык

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 01-Фев-21 23:28 
Почему не на латыни комментарии пишете?

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 01-Фев-21 23:46 
Caput tuum in ano est

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 00:30 
>Значит весь софт, который был написан под старую версию нужно переписывать.

Всяким ретроградам прошивку надо перешивать. С ферритовых сердечников на магниторезистивную память.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 09:56 
Весь питон на стимпанк смахивает. Во времена, когда кругом электроника, эти жрут кактусы и делают "продакшн прожекты" на пару.....

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Ordu , 02-Фев-21 00:36 
> Почему для подобных проектов не используются более "стабильные" языки?

Это какие, например?


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено FractaL , 02-Фев-21 00:50 
Конечно же это Rust. Нормальные проекты можно писать только на Rust. Всё остальное еритики.

На расте тоже ничего не работает но зато безопасно неработает.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Ordu , 02-Фев-21 01:15 
> Конечно же это Rust. Нормальные проекты можно писать только на Rust. Всё
> остальное еритики.

Что серьёзно?

> На расте тоже ничего не работает но зато безопасно неработает.

Ты хочешь сказать, что эта модель в новости не работает? Скачал и попробовал? Прям брекинг ньюс, дополни новость.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 00:54 
> Значит со временем текущие реализации пайтона тоже закопают и софт придётся переписывать.

Это из ваших заключений никак не следует, но не суть. Любой живой язык развивается, и в нём депрекейтят устаревший мусор. И любой живой софт не испытывает проблем с тем чтобы за этими изменениями следовать. В питоне просто не испугались пойти на кардинальные решения и выкинуть гнильё, а не копить залежи совместимости, которые уже терминально изурововали плюсы, например. Именно и только такие языки и должны использоваться и для подобный проектов и для любых других.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Anonim , 02-Фев-21 01:07 
> Я гляжу, что даже сложный софт пишется на таких языках, как пайтон

Это библиотека по сути обертка над DL моделями - в этом случаи python используется просто как frontend и на итоговую производительность влияет слабо


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 09:11 
> python используется просто как frontend и на итоговую производительность влияет слабо

Ещё как влияет. NLP-проекты очень часто требуют дополнительные операции над строками. Если на Java или на Julia потери на дополнительные проверки токенов или лексем можно и не заметить, то в питон-проекте, это легко может стать причиной тотальной просадки производительности и крахом проекта в целом.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 09:33 
Cython == C. C производительнее julia (не в курсе за производительность) и тем более java (раз в 1000).

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 09:54 
Cython != Python. Желающих писать проект на Cython много не найдётся. В случае CPython же, лучше его не трогать вообще....

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 11:06 
Единственный повод использовать Cython и получить производительность равную C, это когда у тебя уже есть проект на CPython. На Cython желают писать все, кому внезапно стало не хватать производительности питона на некоторых участках, и простота, с которой можно его применить, действительно подкупает. Многие приличные батарейки используют cython, тебе нужно только немножко оптимизировать свой код вынеся горячие участки в него и остальное можно оставить без изменений.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 12:52 
>> На Cython желают писать все, кому внезапно стало не хватать производительности

На Cython никто не желает писать. Просто есть современные языки программирования, а есть питон и его поклонники, уверяющие, что язык, слепленный на коленках по лекалам 70-х ещё актуален :(


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 11:12 
Ну и ещё ты говоришь CPython ты подразумеваешь си с частью логики на питоне, писать на языке без интеграции с си это удел неполноценных языков. А у си, как известно, сишная производительность.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 12:56 
Вот посадить вас таких умных на годик другой писать на C.... Да, жить на C можно, но за этот годик-другой, программист на современном ЯП типа Julia, Rust, или, даже, C++, успеет столько написать, что догнать вы его не сможете никакой обвязкой на питоне. Надо понимать, что питон + С в 90-м году, может, и нормально. Но в 2021-м есть масса способов не использовать языки-нашлёпки.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено economist , 02-Фев-21 11:42 
Верно, но отчасти. Строковые методы и re в Питоне написана на С и потому быстры. Крах проекта из-за доп. проверок? - ну это уже слишком...


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 12:57 
Ок.... Добавьте на питоне проверку окончания, например... И посмотрите сколько процентов времени будет уходить на эту проверку по сравнению с функциями, реализованными в C-коде.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено economist , 02-Фев-21 19:41 
А куда спешить в NLP?

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 22:53 
Даже если спешить некуда, за вычислительные ресурсы приходится платить. Впрочем, сложно представить себе сервер, который никуда не спешит...

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Галустян , 02-Фев-21 05:03 
Ну, во-первых, если код для 2.7 написан по PEP20+PEP8 и вовремя поддерживался, избавляясь от устаревшего, то он с большой вероятностью вообще не потребует никакого рефакторинга для работы под 3.х.
Во-вторых, чтобы написать такое на стабильном си, понадобится пару десятилетий, если не больше ;).

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 09:55 
>PEP8

вообще об оформлении, на поведение не влияет.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Галустян , 02-Фев-21 13:30 
Оформление влияет на дисциплину, дисциплина влияет на щепетильность, щепетильность - это вопрос качества в целом, качество влияет на процент ошибок и неудачных решений в коде, а эти 2 неразлучника влияют на поведение ;).
И да, кстати, если не писать по PEP8, значит автоматически не писать по PEP20. Они связаны.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Галустян , 02-Фев-21 05:11 
Проблема не в языках, а в программистах. Их как и гитаристов - в каждом дворе не меньше пяти, да только Блэкморов и Мальмстинов среди них по 2-3 на крупный город.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено An O Nim , 02-Фев-21 09:00 
> ... ... ... Но ведь 2.7 закопали, так? Значит весь софт, который был написан под старую версию нужно переписывать.
> ... ... ...
> ... Объясните мне суть. ... ...

В языке на первом месте удобство для решения нужного класса задач. Питон оказался удачный язык. В чём именно, какие подробности здесь не скажу, у других публикаций много.

На Питоне можно писать так, что работает одинаково и под 2.7 и под 3. Граммотный девелопер знает такие особенности и учитывает. Ещё грамотный дев берёт не все подряд пакеты из Pip, разбирается где хороший код, где поддержка кода.

Поэтому хороший код довольно легко перложить с версии на версию.

На языке Си до сих пор пишут. И архитектура железа и объём наработок на Си столь велики, что закопают, но немало поколений ИТ ещё выйдет в тираж раньше события.

P.S. Из практики: да, действительно, на иных языках употеешь там, где на Питоне через полчаса уже "Весчъ" сделана. :) А широкие возможности тяп ляп... так это сами себе злые буратино и девелопер и родители девелопера.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 10:51 
>работает одинаково и под 2.7 и под 3

Не совсем одинаково, и это надевание совы на глобус. А после 3.2 вообще не актуально, грамотный дев пошлёт нахрен таких пользователей и не будет им угождать в ущерб нормальным.

>не все подряд пакеты из Pip, разбирается где хороший код, где поддержка кода

Да, он как минимум по возможности будет обходить по стокилометровой дуге батарейки с заявленной поддержкой питона ниже 3.6 (на сегодня, и то позволительно только старым).

>довольно легко перложить с версии на версию

К сожалению, это подразумевает совершенно нездоровые объёмы рефакторинга, в противном случае не будут использованы новые, более эффективные методы и подходы. Это большая проблема для протухших проектов, у которых есть "необходимость" поддерживать доисторические. Ошибочное решение сродни оставить 2 ветку на плаву, нужно закапывать легаси как можно быстрее. Приятно, что до многих начало доходить всё же. Но это всё же достоинство языка, что питон не стоит на месте и конкуренция в лице того же жс заставляет его развиваться.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Галустян , 02-Фев-21 15:43 
Фейспалм и ахтунг. Вы точно про синьоров с седыми волосами или всё-таки про новую волну кодеров с завышенным чсв и серверами развёрнутыми в прошлом году?

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 18:10 
> Фейспалм и ахтунг. Вы точно про синьоров с седыми волосами или всё-таки
> про новую волну кодеров с завышенным чсв и серверами развёрнутыми в
> прошлом году?

Седым мулям пхп подавай, пусть там и остаются, на пхп3.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 09:05 
> Объясните мне суть. Почему для подобных проектов не используются более "стабильные" языки?

Питон и всё, что вокруг него - игрушки для детей. Поэтому, поигрались, надоело, и выбросили. Следующее поколение "детей" всё равно не будет использовать опыты предыдущих.

Ни для чего другого, питон не пригоден.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 10:03 
С 1990 так говорят ...

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 10:30 
Ну так количество детей с компьютером с тех пор сильно увеличилось.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 00:42 
И как всегда на питоне долбануться можно пока установишь. Про эти пипы заливать не надо, нормальные люди мусор в систему не тянут.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Far , 02-Фев-21 00:47 
А использовать requirements, который присутсвует в гите, религия не позволяет?

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено An O Nim , 02-Фев-21 09:02 
Так у автора тезис: Пип - помойка.

Так и есть, в Пипе много отбросов. Увы.

Низкий порог входа дал много мусора. Вероятно.

Своё под ключ писать нормально, а вот чужое переиспользовать просто так нельзя, нужно разбираться в сортах.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 00:47 
Кончено же не ставят. Нормальные люди знают про venv. В одну команду ставится, с минимумом затрат, как и всегда.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 00:51 
Тот же мусор только чуть более локализованный.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 00:53 
Что и требовалось доказать. У питона как всегда всё через одно место.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 00:58 
Что доказать-то? Мы доказали что в твоём дистрибутиве spacy не опакечен из коробки, что является проблема исключительно твоего говённого дистрибутива. Но даже для таких питон позволяет установить spacy одной командой своими средствами. Что тебе не нравится?

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 03-Фев-21 11:08 
У него NIH syndrome.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 09:57 
Venv, pipenv, poetry - для смузихлёбных карго-культистов - фанатов докера и снапа.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 10:57 
Только virtualenv, только хардкор? Просто venv штатный механизм, и остальные нет. Подобная изоляция довольно удобна, мне например нужны определённые версии для определённых проектов. И для разработки зачастую нужны предрелизные версии, либо старые версии как зависимости, у тебя вариант или копировать из гитхаба руками или использовать pip, но в любом случае без "песочницы" ты засрёшь батарейками всю систему, и в итоге ничего работать не будет.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 03-Фев-21 01:31 
Доверься мне.

python3 -m build -nwx
sudo pip3 install --upgrade ./dist/*whl

И никаких проблем.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 03-Фев-21 01:33 
>засрёшь батарейками всю систему, и в итоге ничего работать не будет.

Только /usr/local/python3*/dist-packages/. Она для этого и предназначена, вообде-то.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 03-Фев-21 11:04 
>>засрёшь батарейками всю систему, и в итоге ничего работать не будет.
> Только /usr/local/python3*/dist-packages/. Она для этого и предназначена, вообде-то.

Там не будет никакого разделения. Типичный хелловорлд имеет под тысячу зависимостей и они будут блокировать часть обновлений (как минимум), либо сломаются, если ты всё-таки обновишь. Вот допустим 900 пакетов из этой тысячи можно обновить спокойно, но 2 пакета (временно) блокируют тебе оставшиеся. Но они могут не использоваться в соседнем проекте, где при этом используются те 98 блокированных пакетов вместе с теми 900.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 00:56 
Что за чушь, ставится одной командой из родной репы дистрибутива:

https://repology.org/project/python:spacy/versions


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 08:51 
Напиши ебылд для нормального дистра.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено bergentroll , 02-Фев-21 09:32 
Я прошу прощения, а что для вас образец хорошего, чтоб не мусор?

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 09:00 
Что же она такая медленная?... Даже в сравнении с OpenNLP

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним12345 , 02-Фев-21 09:28 
Питон навсегда

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 10:02 
Нет поддержки i686 - значит либа не нужна.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 11:49 
i686 уже не нужен.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 03-Фев-21 10:53 
NLP на i686 - это несерьезно.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 05-Фев-21 10:46 
>NLP на не суперкомпьютере - это несерьезно.

Пофиксил. Если нужно серьёзно - то это к майкрософту, гуглу, яндексу и сберу и ещё нескольким компаниям. Всё остальное несерьёзно.


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 02-Фев-21 13:38 
Ждем реализации на нормальном языке без зависимостей и блотвари. Прототипы и концепты это не показатель и уж точно не принимо.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено COBA , 02-Фев-21 23:15 
Вопрос только в том - для чего ждать?

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 03-Фев-21 15:31 
Ну вот когда будет хоть какие-либо бенчмарки проходить - подумаем о применении.

"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 03-Фев-21 11:02 
>Языковые модели подготовлены для 58 языков

В новости же сказано по 59 моделей для 18 языков: "spaCy v3.0 provides retrained model families for 18 languages and 59 trained pipelines in total".


"Выпуск spaCy 3.0, библиотеки для обработки информации на ест..."
Отправлено Аноним , 03-Фев-21 23:48 
Не такой уж и постоянный у них API. Внутри меняются алгоритмы и от версии к версии эта поделка дает разный результат. Требуется корректировка моделей. Или привязку к версии, но старые версии они грохают со своего варезника ибо EoL.
В долгосрочной перспективе - так себе либа. Но для наколенных поделок, чтобы работало с понедельника и до обеда - вполне зачетно.