Ivan Begtin
9.16K subscribers
2.68K photos
5 videos
115 files
5.51K links
I write about Open Data, Data Engineering, Government, Privacy, Digital Preservation and etc.

CTO&Founder of Dateno https://dateno.io

Telegram @ibegtin
Facebook - https://facebook.com/ibegtin
Email ivan@begtin.tech

Ads/promotion agent: @k0shk
Download Telegram
Похоже не только Anthropic попали на грабли одобрения новых ИИ моделей Белым домом (США), а и OpenAI. Их уже попросили притормозить с публичным анонсом их новой модели, до её тестирования.

Меня мучает все тот же вопрос - что будет когда появятся сравнимые по эффекту открытые и доступные китайские модели? Власти США их тоже попробуют притормозить ? Будет ли какой-то глобальный договор вроде договора о нераспространении химического или ядерного оружия? Куда мир вообще идет-то ?

#thoughts #ai
👍7🤔7🌚4😱21💯1
Для тех кто любит работать с данными, я недавно залил обновления в два репозитория:
- iterabledata библиотека для Python для чтения условно любых файлов и баз данных в итеративном режиме в том числе в потоковом режиме с экономией памяти
- undatum утилита для командной строки для манипуляции условно любыми дата файлами, их конверсии, чтении данных, анализу и документированию. Внутри используется как раз библиотека iterabledata

В чем особенность этих релизов.

В iterabledata исправлена возможность записи в форматы Avro, Orc и Lance. Не самые большие изменения, но повышающие удобство работы с библиотекой.

А утилита undatum была радикально обновлена с переводом большей части функций на работу через iterabledata и отказа от части внутреннего кода. Теперь работает преобразование файлов всех форматов которые поддерживает iterabledata - это более 100 форматов.

Сами инструменты были вдохновлены утилитами xsv и qsv и были написаны для того чтобы можно было удобным образом работать с изначально с JSONl/NDJSON файлами сжатыми любым способом, а далее с форматами вроде Parquet, ORC и остальные.

Вообще у меня не так много времени остается на программирование в последнее время, это скорее как хобби, но хобби полезное.

#opensource #datatools #dataengineering
1🔥14👍114
Свежий текст от The GovLab о том как меняется политика доступа к данным в эпоху ИИ. Текст, как я понимаю, по итогам нескольких сессий прогнозирования развития открытости данных, открытого доступа и обмена данными с ведущими экспертами и про то куда все двигается на основе этих разговоров.

Там все те же темы о которых я регулярно пишу, то что парадигма открытых данных
испытывает трудности, то что государства хотят больше контроля над данными, то тема данных стала синонимична ИИ и еще много всего.

#opendata #readings
👍83
Датасет Цифрового архива: Реконструированная функциональная структура расходов государственного бюджета (1912 – 1915 годы)

Небольшой датасет от Минфина России позволяет проследить динамику расходов разных ведомств в период 1912-1915 годов. По тогдашней практике все расходы разделены на обыкновенные и чрезвычайные. По Высочайше утвержденному мнению Департамента Государственной Экономии Государственного Совета от 4 июня 1894 года следует:

III. В отдел чрезвычайных расходов заносятся:
а) расходы по сооружению новых железных дорог;
б) расходы на изготовление и приобретение подвижного состава и железнодорожных принадлежностей, в чрезвычайных размерах;
в) издержки, вызываемые войной, военными экспедициями и вообще народными бедствиями, каковы неурожаи, эпидемии и т. п., и
г) расходы по досрочной уплате капитала по государственным займам, вне текущего, условиями займа определенного погашения их.
По данным датасета, чрезвычайные расходы были предусмотрены для 11 ведомств, а за рассматриваемые 4 года максимум таких расходов пришелся на Министерство путей сообщения. Минимум — на Морское министерство.

Публикуем скриншоты с мнением Государственного Совета, которое было опубликовано в томе XIV Полного собрания законов Российской империи, а также таблицу всех чрезвычайных расходов по разным ведомствам за период 1912—1915 годов.

Подробнее ознакомиться с динамикой государственных расходов в период 1912—1915 годов можно в датасете на сайте Цифрового архива.

#датасет #расходы #история #Минфин
👍133🔥3
Подборка полезных ссылок про данные, технологии и не только:
- Onyxia платформа от французского института статистики INSEE для организации работы команды data science. Помогает разворачивать разные открытые продукты под задачи: тетрадки Jupyter, R Studio и многие другие с акцентом на статистические данные и не только. Предназначена для обучения студентов в первую очередь
- miller аналог AWK для CSV файлов, позволяет их удобно форматировать с командной строки.
- tad настольный редактор для табличных файлов, в первую очередь это файлы CSV и Parquet, но также поддерживает и базы sqlite и duckdb. Из минусов - не обновлялся около года
- uPlot одна из наиболее быстрых и легковесных библиотек визуализации больших объемов данных временных рядов.

#opensource #datatools
🔥43👍3
В каком-то смысле ожидаемая новость, Google через Chrome втихую начал устанавливать на устройства пользователей 4ГБ ИИ модель Gemini Nano. Интересно тут сразу многое:
- устанавливают втихую, не предупреждая пользователя
- отключить это можно в настройках On-device AI в chrome://settings, где по умолчанию эта опция оказывается включенной
- даже из описания в справочной Google остается ощущение непрозрачности процесса

Автор оригинальной новости задается вопросом не является ли это нарушением GDPR и упоминает Anthropic которые похожим образом втихую вносили изменения на устройствах пользователей.

Тема эта за пределами конкретно Google, если бы у Apple и Microsoft был бы реальный прогресс с их ИИ продуктами они, наверняка бы давно добавили локальные модели как часть их ОС.

А пока во всю наблюдаем цифровые "dark patterns" от Бигтехов.

#readings #ai #google
😱8👍7🤨6😢2💯1
LongCat-2.0 свежая LLM на 1.6 триллионов параметров, контекстом в 1М и открытым кодом (пока не открыт, только обещан). Особенность в том что она под другим названием Owl Alpha уже входит в топ 5 рейтинга OpenRouter и активно в этом рейтинге растет. Иначе говоря разработчикам даже не надо доказывать ее востребованность, она и так де-факто уже проверена востребованностью.

Другая особенность в том что модель обучена полностью на китайских чипах и создана в компании Meituan - это такая китайская компания разработчик приложения доставки. Они и раньше делали LLM под названием LongCat, но кажется именно эта является прорывом.

#ai
👍4🔥3
Ещё немного про утилиту с открытым кодом для работы с данными undatum которую я когда-то разработал и потихоньку развиваю. Это не коммерческий продукт, а скорее вспомогательный инструмент когда надо что-то поделать с данными в командной строке и эти данные не просто плоские CSV файлы, а что-то посложнее.

Я приводил в пример ее использование для преобразования файлов, а вот дополнительные примеры того как ее можно применять.

Быстрое API на основе файла с данными

Предположим есть файл CSV, JSONl, Parquet или еще какой-то и его содержанию надо быстро дать доступ кому-то внешнему, но передавать файл/файлы целиком нельзя по какой-либо причине.

Очень простая и быстрая команда
undatum api run data.jsonl

Автоматически проанализирует файл и запустит веб-сервер с доступом к данным через REST API и возможностью фильтрации по его полям. Из плюсов - минимум усилий. Из минусов - в нем нет сейчас какой-то сложной программной логике поиска по полям и тд., только полный или частичный мэтчинг.

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

Быстрое документирование дата файлов

Когда есть некий файл с данными к нему нет дополнительной информации, а очень надо быстро в нем разобраться, то генератор Markdown документации

В самом простом виде выглядит как
undatum ai doc data.csv

выводит на экран итоговый Markdown текст

Более продвинутый
undatum ai doc —blocks general,schema,quality,examples,codebook —format json —language Russian data.csv

Создает документацию в формате JSON с Markdown блоками перечисленными списком и на русском языке.

Загрузка данных в NoSQL/SQL базы данных

Команда ingest изначально делалась для продвинутого импорта данных в MongoDB и Elasticsearch и идея в том чтобы на вход получить файл и строку подключения в базе данных после чего загрузить содержимое в выбранную таблицу/коллекцию/индекс

Пример команды
undatum ingest data.jsonl https://elasticsearch:9200 myindex myindex --dbtype elasticsearch --api-key YOUR_API_KEY --doc-id id

В чем важная особенность undatum от специализированных инструментов которые умеют это же? В поддержке любых сжатых файлов .xz, .gz, .zst, .lz4, .bz2 и так далее. Потому что хранить данные в чистом NDJSON или CSV - это прямо таки очень неэффективно. Особенно когда это много слепков коллекции из MongoDB или индекса Elasticsearch.

#opensource #datatools #data
👍122🔥2
Еще один взгляд на открытые данные в виде доклада The Value of Open Data on Global Entities от Linux Foundation и компании BrightQuery с упором на доступность данных о компаниях, людях и локациях (связанных с компаниями). BrightQuery делают продукт графа по адресу OpenData.org где можно скачать большой датасет на 24GB со всеми этими данными, это одних только организаций более 86 миллионов 690 тысяч.

Доклад связывает эти данные еще и с Overture Maps.

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

#opendata #datasets #readings
👍4
OmniRoute локальный маршрутизатор запросов к ИИ провайдерам умеющий работать с большим их количеством, сейчас это 231 провайдер в том числе с теми которые дают бесплатные квоты. Позиционируется как инструмент сильной оптимизации потребления токенов, позволяет сократить их благодаря сжатию RTK + Caveman.

Что характерно даже поддерживают одного из российских провайдеров - gigachat (можно увидеть в общем списке), но собственно и только. Того же Яндекс'а к примеру тут нет почему-то.

Плюс обещают прозрачную интеграцию с 1proxy и возможность обхода блокировок из стран которым некоторые AI провайдеры не дают доступа (Россия, Иран, Куба, Китай и тд.).

На чем зарабатывают непонятно, думаю что монетизацию включат позже и привяжут как раз к сервисам прокси или экономии токенов.

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

#opensource #ai #tools
5👍32
Хороший обзор проектов с экспериментальной статистикой в США, с примерами компаний которые создают публичные дата продукты и их начинают использовать официально.

Все это про мир alternative data, актуальный для биржевого и корпоративного мира и все еще медленно проникающий в официальную статистику.

В обзоре из интересных примеров - это оценка масштабов строительства через анализ спутниковых снимков.

#opendata #statistics
👍42🔥2
В качестве регулярных напоминаний коллекция библиотек и инструментов с открытым кодом к которым я приложил свою руку и которые могут быть полезны многим работающим с данными:
- qddate библиотека для Python быстрого парсинга дат написанных на множестве языков и во множестве форматов. Не такой широкий охват форматов как у dateutil, но гораздо более высокая скорость парсинга.
- newsworker библиотека и инструмент на Python для извлечения новостей из веб страниц. Например, когда надо подписаться на сайт через RSS, а RSS ленты нет. Понимает множество форматов дат используя qddate и динамически идентифицирует новостные блоки.
- russiannames база данных и парсер Python для разного рода написания ФИО принятых в российской практике. В базе десятки тысяч имен и отчеств и сотни тысяч фамилий
- undatum утилита командной строки для работы с датасетами в форматах CSV, JSONl, Parquet и сотне других форматах. Умеет преобразовывать данные и проводить с ними различные операции. Эдакий швейцарский нож для работы с данными с командной строки
- metawarc утилита по извлечению метаданных из файлов веб-архивов (WARC). Умеет извлекать метаданные из офисных файлов, PDF, изображений и тд.
- plainrussian сервис проверки простоты текстов на русском языке используя формулы читабельности адаптированные под русский язык. Код самого сервиса и формул для расчета
- iterabledata библиотека для Python для чтения и записи практически всех существующих форматов файлов с данными. Используется в утилите undatum
- internacia-db дата продукт в виде датасета по всем странам и макрорегионам во множестве форматов и покрытием всего мира и многими метаданными по каждой территории

#opensource #datatools #tools
👍13🔥643
Пишут что качество новой версии Fable 5 существенно упало, например, отладка кода упала на 70%, рефакторинг на 48% и галлюцинации стали хуже (изменения на 19%).

Все потому что теперь при обращении к этой модели она часто перенаправляет на Opus 4.8 из-за мер безопасности которые предприняли Anthropic.

Как это трактовать? Я бы сказал что в первую очередь как то что пр-ва теперь могут устанавливать требования к понижению качества ИИ моделей и это только начало. Чем дальше тем ограничения могут быть серьезнее, для тех кому надо будут полноценные версии фронтирных моделей, а для остальных с существенными ограничениями.

Интересно начнут ли в эту игру играть и власти Китая когда флагманские модели их стартапов начнут давать сравнимое качество?

#ai #thoughts
🤔6🔥21💯1🤨1
Я тут задумался не вернуться ли к чтению новостей через RSS читалки, потому что читать многое в компактном виде становится всё сложнее. Да, есть хорошие тематические рассылки, но их не так много и они портятся тем что постепенно рекламного контента там становится больше. Но с RSS читалками есть одна беда, они все [не] немного устарели и не учитывают реальных сложностей потребления новостей.

Какой могла бы быть идеальная RSS читалка?
1. Уметь фильтровать новости. Как простыми способами - ключевые слова, так и через простую интеграцию с LLM, тут подойдут и легкие недорогие или даже бесплатные модели. Уметь фильтровать по принципу - выбрал новость и отметил "хочу меньше видеть подобных новостей" и наоборот "Это важно, делай это приоритетнее". Технически это можно делать множеством способов. Сюда же идет автопростановка тегов и простая навигация по ним.

2. Уметь делать дайджесты для часто обновляемых источников. Есть источники новостей генерирующие до сотни сообщений в день. Их, тоже, надо фильтровать, но даже если их останется десяток их надо уметь объединять в дайджесты. Благо это несложно.

3. Давать возможность подписываться на сайты без RSS/ATOM. Для этого я когда-то и создавал библиотеку newsworker и она вполне интегрируема куда угодно и позволяет это делать без особых сложностей.

4. Интерфейсно уметь отображать новости по разделам "Важно", "Обычно", "Менее важно" по критериям заданным пользователем и по его действиям, см. пункт 1

5. Минимализировать HTML рендеринг, потребление памяти и CPU. Преобразовывать полученный контент в Markdown и отображать его максимально облегченным образом и настраиваемым конечно.

6. Кроме интерфейса чтения отдельных новостей уметь отображать все единым ежесуточным дайджестом, на время просмотра конечно, обновляя его по необходимости.

7. Не пытаться построить новостной агрегатор а ля канал в Slack или Discord или телеграм канал или любой другой режим мессенжера. Для уведомлений это еще более-менее, а для чтения новостей очень неудобно.

8. Уметь извлекать полный текст новости из первоисточника без перехода. Не всегда может работать, но если такое возможно, то нужно. Готовые инструменты для этого давно существуют.

Лично мне не попадались до сих RSS читалки способные делать хотя бы половину из перечисленного. Но может я что-то пропустил?

#thoughts
11👍10💯64🔥1🤩1
newsworker-missing-features-audit.pdf
286.1 KB
Помните я писал подход к разработке через режим
set the goal → analyze + analyze + analyze → review → design → plan → execute → (repeat tests till conditions met) → verify

где прежде чем приступаешь к изменениям в коде запускаешь неоднократный анализ имеющегося.

Я регулярно тестирую новые LLM модели и агентские сервисы на разных репозиториях запросами именно на их полноты и подготовки роадмапов. Эдакий внешний ревью архитектуры, кода и перспектив продукта.

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

В этом примере я запросил у агента Z.ai и модель GLM-5.2 провести аудит репозитория и составить перечень нехватающих функций и роадмап по их внедрению.

Результат более чем удовлетворительный. Не идеальный, но таким он и не может быть, но экономящий время и через несколько корректировочных вводных позволяющий превратить этот открытый продукт в более удобный инструмент.

Причем разные инструменты и LLM дают разные результаты. Хороший итоговый анализ является сводным и дополненным личными архитектурными комментариями видения продукта.

Ну и конечно не могу не добавить что все что касается открытых репозиториев - это отличный полигон для тестирования применения кодирующих ИИ.

#opensource #ai #coding
👍7421💊1
В продолжение моих размышлений про чтение новостей и инструменты для этого, я на этих выходных чуть потратил времени и сделал в библиотеке newsworker очень давнюю идею шаблонов извлечения новостей.

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

Идея была в том чтобы по итогам анализа страницы создавать псевдокод/конфиг и потом уже по нему извлекать контент. В общем-то ничего сверх сложного, но и. не настолько просто чтобы можно было сделать быстро. Сейчас, с помощью ИИ агентов для разработки все сильно ускорилось.

Так что в последней версии newsworker появилось две команды analyze и extract где первая создает спецификацию, а вторая по спецификации извлекает новости.

Второе важное изменение - это команда serve запускающая инструмент в серверном режиме, можно по эндпоинту передавать ссылку на веб страницу и получать RSS/Atom ленту на выходе. Тем самым можно интегрировать с любой RSS читалкой и развернуть этот сервер у себя локально или где-то в сети. Сервер по умолчанию работает через спецификации поэтому потребление CPU и памяти в нем минимизировано.

Все это не делает пока что инструмент для конечных пользователей, нужны технические навыки чтобы его развернуть. Но в целом я чувствую некую завершенность того что хотелось сделать еще лет 15 назад, и сейчас удалось доделать за пару дней и применять с пользой. Как минимум мне лично это облегчит чтение новостей из многих источников.

#opensource
👍85🔥31