Information
- Rating
- 2,749-th
- Location
- Москва, Москва и Московская обл., Россия
- Registered
- Activity
Specialization
Фулстек разработчик, Системный инженер
Ведущий
From 400,000 ₽
C#
Vulkan API
Компьютерная графика
C++
Математическое моделирование
Высоконагруженные системы
Параллельное программирование
AvaloniaUI
Геоинформационные системы
Алгоритмы и структуры данных
Да это и есть выхлоп от нейронки, смысл статьи нулевой.
Плюс ко всему, автор как будто бы в состоянии потока находится. И ему бы обеспокоиться.
Вон выше уже и наставления от Иисуса. Либо клиника, либо толстота.
Это ложная аналогия. И она разваливается даже с позиции для которой была приведена.
Если я на ткацком станке получил хрень (так как новичок), то могу итеративно почесать затылок, потыкать палочкой (если совсем умный то почитать мануал), и получить/приблизиться к желаемому результату через обозримое количество шагов.
При хорошем раскладе я со временем получаю полную ментальную модель станка, становлюсь виртуозом, ну вы поняли. И могу делать на нем то, для чего он даже не был предназначен.
Но вы не сможете стать мастером LLM. Не сможете предсказуемо получать вменяемые результаты для сложных задач, выписывая пляски с бубном вокруг огромной трясущейся функции аппроксимации.
Ну конечно только если не стоит задача генерировать дженерик хрючево на основе интернета, перемешивая с галлюцинациями. А такой задачи стоять не должно.
Луддиты тут ни причем. Станок ни кого не лишает работы, равно как и LLM. Только станок, в отличии от — это инструмент, которым вы можете овладеть.
Ловко вы станок, у которого детерминирован выход от входа (как и у любой техники для производства) приравняли к LLM.
Но вам не станок продают. В обе стороны этим аргументом нельзя.
Покажите, если опен. Или опишите, что за бинды и к чему, интересно.
Я пока что из своего опыта вижу, что недетерминированная LLM никак в таких задачах помочь не может. И все нормальные бинды автоматом могут быть сгенерены только генератором (зачастую самописным) переваривая спеку или синтаксическое дерево.
И все равно при этом многие места будут руками написаны. Потому что всю семантику и задуманное поведение не переведешь через генератор.
Если у вас на руках либа на Cи, состоящая из чистых функций, то проблем сгенерить бинды не будет даже у самого дотнета - LibraryImportAttribute и вперед.
Проблемки начинаются сразу после порога в виде набора чистых функций (и не Си).
LLM смысла написанного не выкупает и закономерно генерит бредик.
Ещё хуже то, что этот рак бьёт и будет бить дальше ещё сильнее по опенсорсу.
Из относительно недавнего личного примера — попытки (не особого шарящего судя по всему) сгенерировать бинды на C# к
Vello(2D-либа на Rust для векторной графики построенная на компьют шейдерах) через LLM породили вкусный слоп, а заодно и брейн демедж с потерей времени у меня и тиммейта.В лице оригинальной работы мы нашли качественную замену гугловской
Skia, которая на объеме наших данных показывает себя уже не так хорошо.Но вот то, что должно стремиться к нулевой цене (бинды), оказалось бредом, разваливающимся под нагрузкой. Ознакомиться можно здесь.
Есть ещё более вкусный пример (заслуживает расследования и статьи на самом деле). Прямо в реальном времени дамаг.
Открываете, например, репозиторий meshoptimizer — титаническая работа талантливого инженера. И замечаете интересную особенность, ведь глаз часто падает на
Used by, всегда интересно покапаться, вдруг найдешь какой-нибудь скрытый гем. А тут почти 200k юзеров. Да ну?В графе зависимых занятная картина — куча мусора, никакого отношения к 3D-графике не имеющая. С конкретных профилей (а их там много таких) идет бесконечный спам каким-то бредом. А в зависимостях этого бреда навалено всё, что можно и нельзя.
Да-да, прямо в концентрированный банк знаний, на котором этим самые бредогенераторы и были обучены (сожрав килотонны денег, электричества и далее по списку) в реальном времени льется куча бессмысленного шума.
Такие дела. А выводов нет.
Ассемблер на 53.3% - JavaScript и 46.7% - TypeScript? Гений.
А гении не редко бывают отвергнуты обществом.
Так решается тем, что nuget.org держится в nuget.config наряду с адресами на гитлаб. Рабочие машины и раннеры чувствуют себя нормально.
Заодно лента гитлаба и как нормальный источник отладочных символов выступает - VS и Rider дружат.
Я может проблематику не понимаю.
Моё мнение, при развернутом self-hosted GitLab'е (у вас наверняка он?) - не нужно. Гитлабовский Package Registry закрывает все потребности и позволяет нормально работать со своими внутренними пакетами.
Один раз завели крупные группы, в которых делаете репы с системными либами и держите
nuget.configв конечных проектах с адресами на Package Registry.Опознает, ведь зрительный аппарат нормальный и распознаёт длины волн также, как и ваш. Но вот "видит" человек при этом то, что вы видите, когда смотрите на серо-буро-фуксиевый.
Собственно концепцию квалиа можно растянуть ещё дальше, и вообразить, что этот человек вообще ничего не видит. Его "картинка" это что-то, что конкретно вы посчитали бы просто чёрно-белый шумом.
При этом с человеком все нормально, он здоров. Вы оба посмотрите на кружку и согласитесь, что это кружка. Потому, что это просто слова, которые мы неявно согласились использовать для разных паттернов.
Что же такое человек видит (и в общем смысле чувствует) вы не сможете понять никогда, даже если разберёте его на элементарные части и тщательно проанализируете. Максимум - сможете сформулировать законы "чувствования".
А там уже и философский зомби за углом поджидает.
Поэтому лучше философию не трогать, трогайте зелёную траву на улице в летнюю погоду :)
Шершавый кабан снова выходит на связь.
Мне, как человеку, у которого есть опыт только с сишным синтаксисом (C++ и преимущественно C#), Раст бьёт по глазам очень сильно.
Но это далеко не так больно, как факт того, что в Расте до сих пор нет стабильного ABI. Ладно стабильного, компилятор Раста даже не способен выдать после компиляции инфу в адекватном виде по макетам типов, что решило бы множество проблем взаимодействия. 25 год подходит к концу, на секундочку.
Хорошо сделанную либу, написанную на Расте, просто невозможно вызвать из, например Шарпа, не написав кучу клея с оверхедом.
То есть язык, с которым невозможно общаться без С ABI (повышая цену вызова), позиционируется как замена С.
Подобного мусора будет все больше с каждым днём. Зря выпустили нейроджина, ох, зря.
Разбирать модификатор из версии языка 7.2 в 25 году это сильно.
Там, где нужна передача жирной структуры по ссылке и мутации нет, на замену
inдавно пришелref readonly- ругается на передачу по значению в компайл тайме.Ого, копипаста от гпт. Спасибо!
Это не IL-код.
Это не почти тоже самое, это диаметрально противоположные вещи.
Классы - тип ссылочный, структуры - значимый. Разница фундаментальна в контексте шарпа и принципиальна при написании кода. Вы точно программист?
Классом является только строка. Возможно, все же стоит забивать голову.
Очередной пересказ документации Microsoft от GPT.
Ни слова про LibraryImport вместо DLLImport.
Ни слова про то, что в шарпе давно есть указатели на функции.