Переговоры с apt:
– Откатить один пакет на старую версию? 27 пакетов будут УДАЛЕНЫ, включая xorg.
aptitude
– Есть решение, где мы удалим 26 пакетов
– Нет
– Есть решение, где мы удалим 25 пакетов, установим 2 и нарушим 2 правила
– Нет
(30 таких решений спустя)
– Кстати говоря, есть решение, где мы откатим 8 пакетов на старые версии и всё будет хорошо. Годится?
– Господи, конечно, годится.
– Ну хорошо, вызываю apt
apt:
– Будут УДАЛЕНЫ 260 пакетов, продолжить?
Категория: Компьютеры
Inapt
SSD и HDD
Считается, что SSD надёжнее HDD, но это как сказать. Возможно, SSD отказывают чуть реже, хотя и это вопрос. Но если полетел HDD, обычно вы можете восстановить что-нибудь, а нередко и большую часть диска, кроме нескольких битых секторов или поцарапанных участков.
Несмотря на весь пиетет обращения с ними – беречь от электростатики, защищать от пыли, не нарушать вакуум внутри – они довольно крепкие, если речь о сохранении данных в целом, а не каждого байта до последнего. С одного диска у меня начали сыпаться сектора, я его заменил, а диск убрал в шкаф. Там он лежал несколько лет, я использовал его, как подставку для кофе, раскручивал и смотрел на пластины, и так далее. Когда я ради интереса включил его, содержимое ещё можно было прочесть.
SSD работают хорошо, а потом однажды не включаются и всё. Данные потеряны окончательно. Предупреждения не будет. Шансов на восстановление нет. На HDD полетел контроллер? Открутил, прикрутил такой же, работает. Полетели головки? В довольно-таки средней лабаратории их могут аккуратно заменить, если данные важны. У SSD почти неважно, что полетело, починить нельзя ничего.
Поэтому с SSD бэкапы ещё важнее, чем с HDD!
Ещё особенности:
1. Если вы скопируете один диск SSD на другой посекторно, не применяя никаких хитрых "filesystem-aware cloning", то ваш второй диск с точки зрения SSD будет полностью занят (даже если на нём много свободного места). Для SSD важно знать, какие сектора не используются. Когда вы копируете все сектора, в том числе незанятые, второй SSD не знает, какие из них какие. Нужно с помощью операционной системы сделать второму диску defrag /Retrim.
2. Команда TRIM (FSCTL_SET_ZERO_DATA) это способ, ошибившись в параметрах, одной командой уничтожить все данные на своём диске за долю секунды без возможности восстановления. Мало таких команд, где можно так быстро ошибиться настолько катастрофически. Благодаря тому, как устроены внутри SSD, урезанные (TRIM) сектора вытащить назад уже нельзя никаким доступным обычному человеку способом.
3. Было много утилит, восстанавливающих удалённые файлы, пока их данные на диске ещё не затёрты нулями. Если у вас включен TRIM при удалении (а это правильно, и по умолчанию он включен на SSD), то эти утилиты на SSD ничего не найдут. Не расчитывайте на них.
Переписывание и плагины
Чтобы программа существовала долго, в ней должны быть плагины.
Почему происходит бесконечное переписывание – “новый блокнот, где ничего нет и толстые кнопки”? Читать чужой код тяжело! Новичку чего-то не хватает, он открывает ваши исходники, а там волшебный лес AbstractSingletonFactory. “Cложно разбираться, напишу сам, а остальные функции всё равно ерунда“. Естественно, результат этого – плохой. Человек неопытен.
Но даже если стараться, крупные проекты не могут быть простыми. Новичку никогда не будет легко в них разобраться. (Как с этим бороться?)
Как с этим бороться? Нужно дать новичкам лестницу из лёгких результатов.
Нужно предоставлять АПИ плагинов, которое одновременно простое – чтобы можно было, не вникая в подробности, быстро сделать что хочешь, – и выводит наружу особенности архитектуры. Достигая небольших результатов, программист будет лучше понимать её. К тому же, это инвестиция в вас. Таким образом будут воспитаны программисты, которым хочется вас доработать, а не переписать.
Так сделано в Вордпрессе, и какой процент сайтов работает на нём? Так было сделано в Windows (WinApi).
Так было сделано в Файрфоксе, но они бросили эту идею. В результате программистов, которые могли бы и хотели бы заниматься Файрфоксом, практически не осталось.
Естественно, архитектуру нужно постараться сделать простой! Части её – независимыми. Чтобы для отдельной задачи достаточно было разобраться в чём-то одном.
Если плагины нужно компилировать, можно добавить “простые плагины” на Питоне или Lua, но выводить туда настоящие внутренние классы. Или их упрощённые версии, но отражающие полезные идеи о них.
Пересказ сюжета
Я думал вот над чем. Современные нейронки получают свои знания в два этапа. На первом тренируют их нейронную сеть, показывая ей много текста. Таким образом она научается предсказывать текст. На втором, уже после дополнительной настройки, вы разговариваете с ботом, чью речь нейронка предсказывает, и сообщаете ему информацию. Эта информация доступна для нейронки не таким образом, как прежняя. Тренировочные сведения улеглись в ней прочно и стали её частью. Эти сведения, которые вы написали в разговоре – входные данные.
Представьте, что вы взяли нейронку, и несколько раз показали ей – в форме тренировки – совершенно новую книгу, которую она прежде не видела и ничего о ней не знает. Что при этом произойдёт? Нейронка запомнит имена персонажей и свяжет их с названием книги. Возможно, запомнит ещё кое-какие мелкие ассоциации и сюжетные приёмы. Но если вы её попросите пересказать книгу, она не сможет этого сделать. И скорее всего, не ответит на большинство вопросов о сюжете.
Но и нейронка, если поместить текст книги в разговор, перескажет его и ответит на вопросы. На первый взгляд, можно сказать: конечно, ведь она видит текст. Но она видела этот текст на тренировке, и неоднократно! Почему *тогда* она не сделала из него выводов?
Потому, что вопросов можно задать множество, и выводов сделать сотни, и каждый это P-решение NP-задачи, каждый требует поиска. А мощность одного прохода нейросети ограничена. Нейронка не может, каким бы образом она не была устроена, за один проход ответить на все возможные вопросы. Поэтому она не может запомнить все возможные ответы при тренировке. Буквальный текст книги может быть даже сохранён в её ассоциациях. Но одного прохода по-прежнему недостаточно, чтобы извлечь его и проанализировать.
А вот если вы попросите её напечатать текст рассказа и затем ответить на вопрос, то она сможет. Узнали? Чтобы ответить на вопрос учителя о стихотворении, вы сначала вспоминаете его.
Можно представлять себе это так: текст – это структура. Структура хранит идею. Идея это решение какой-то задачи. Нейросеть это преобразователь структур. Текст, который вы подаёте на вход, доступен для обработки как структура, со всеми своими идеями. Но текст, сохранённый в форме ассоциаций, сам является частью конвейра и недоступен для анализа его структуры и вычленения оттуда нужных идей. Пошагово можно извлечь его во входной буфер, где его структура будет доступна анализу.
Откуда же тогда ответы берутся у людей? Я легко могу вспомнить прочитанное и кое-как пересказать. А ведь я, как нейронка, просто читал, т.е. впускал в свои уши и глаза слова и тренировал себя на них.
Я стал спрашивать себя, на какие вопросы я могу дать ответы? В каких подробностях могу вспомнить сюжет? Как выясняется, не в таком уж большом числе подробностей. Я могу вспомнить жанр и общее впечатление о книге. Могу перечислить крупные вехи сюжета. Иногда мне запомнились какие-то подробности. Но список таких подробностей невелик. Чем больше я думал над книгой, тем лучше я её помню. Запоминаются те подробности, о которых я думал.
Это наводит на мысль, что на самом деле и мы не анализируем книгу на лету, и не усваиваем её вместе с сюжетом и ответами на вопросы. Этого не делает наш субстрат, наша нейронная сеть. Мы отвечаем на вопросы только тогда, когда задаём себе их. Когда обращаем своё внимание на них и запускаем обработку по шагам. Что и логично потому, что чудес не бывает: наша нейронная сеть тоже обладает ограниченной однопроходной мощностью, что нам хорошо известно (“надо подумать”).
Но в отличие от нейронок, мы читаем книгу не совсем бездумно. Текст книги мы перемежаем собственными мыслями, которые имеют на нас одинаковый с книгой эффект. Мы читаем книгу и мы читаем свои мысли на её счёт, то и другое тренирует наши однопроходные, интуитивные реакции. За отношениями героев, например, мы наверняка следим почти бессознательно, потому, что это требуется в жизни, мы привыкли к этому.
Но если следить за своими мыслями, должно быть можно поймать себя на возникающих в голове реакциях. На паузах в чтении! Вот что главное. Мышление отличается от тренировки тем, что вы отвлекаетесь и уделяете несколько шагов нейронной сети не тому, что написано, а вопросу на этот счёт. Вопросу, который не может быть решён за один проход. Он может быть и не высказан в словах – мы всё же не словесно-ориентированные нейросети, а скорее понятийно-ориентированные. Но он потребует паузы в разборе книги. И эти паузы должны быть настолько частыми, насколько подробно вы запомнили сюжет.
Похоже это на правду? Получалось ли у кого-то заметить такое за собой?
Отставание в ракетах
Вот появятся убедительные виртуальные девушки/парни, и будет как в фантастике: каждому обидчику можно дать робота-жертву, чтобы он отвёл душу, не причиняя никому вреда. Таким образом часто мечтали сделать гуманную тюрьму будущего: если ты садист — заточить тебя в мире неразумных кукол, мучай технику. Или, скажем, если не можешь без скандалов, вот тебе робот, скандаль с ним.
Но в фантастике тут же стали выяснять, точно ли это будут неразумные куклы, ведь они должны вести себя как люди, иначе насильнику и садисту будет неинтересно. Последнее время кажется, что эти вещи действительно связаны. “Самосознание” это куча свойств в одном фантике; нельзя сказать, что любая говорящая коробка получает их все, но скорее всего, если машина ведёт себя как человек, она и внутри неизбежно будет похожа во многих важных отношениях.
Было бы неправильно подвергать разумных роботов насилию (даже психологическому). Так что маленькие уязвимые чатботы на роль жертв не годятся. Но можно ведь сделать Великий Гигантский Сверхинтеллект, и попросить его для каннибалов и насильников разыгрывать одним пальцем нужные им роли, всерьёз не увлекаясь? Для Сверхинтеллекта это лишь игра, одна из миллионов – сравнительно с масштабом его настоящих мыслей и чувств.
(Возможно, что и этого сделать нельзя)
В “Отставании в ракетах” Штросса однажды в 1960-х люди времён холодной войны, люди из поделённого на зоны влияния СССР и США мира, проснулись на другой Земле — с теми же материками, но плоской, почти бесконечной во все стороны, как лист бумаги. Звёзды поменялись, и в паре световых лет от них висит ещё один такой же лист, а за ним другие.
Что это? Это память какого-то колоссального организма в далёком будущем. США и СССР на этом листе это воспоминания или догадки о них. Любые подробные воспоминания хранят структуру вспоминаемого и процессы в ней. Упрощённо для этого организма, но достаточно подробно для нас. Когда этот разум помнит США и СССР, в нём в какой-то форме хранятся и существуют США и СССР. Для них самих это особая китайская комната.
На словах эта идея всегда была понятна, но книга Штросса нарисовала для неё живой запоминающийся пример, поэтому у меня этот принцип в голове подписан как “Отставание в ракетах”.
Когда мы читаем про героя книги, он немного оживает в нас — упрощённо, как написан. Когда сверхразум читает книгу про нас, оживаем мы — упрощённо для него, но достаточно подробно для нас. Программы внутри виртуального компьютера ничем не отличаются от запущенных на настоящем.
Когда Сверхинтеллект краешком ума придумывает миллион разговоров, где выдуманные персонажи ведут себя как живые — он воображает их память и мысли. В этот момент внутри него они существуют. Поэтому подвергать их насилию всё так же неправильно. Сверхинтеллект насилию подвергнут не будет — только его крупицы. Но мы так малы, что его крупицы равны нам, и мы должны пожалеть их.
Гугл сделал страшную вещь, теперь по большинству запросов вылезает ответ ИИ. Нередко он полезный! Но он есть и когда совсем не думаешь о нём, а гуглишь ерунду:
“thumbs up emoji” —
A “thumbs up” is a gesture of approval, agreement, or that something is good. It’s commonly represented by extending the thumb upwards…“thank you emoji”
The most common emoji to express thanks is the folded hands emoji…
И вот это жутковато. По каждому нажатию клавиш где-то на складах видеокарт возникает к жизни маленький трудолюбивый разум с заданием выложиться, подойти творчески и написать страницу полезного текста о каждой рефлекторной реакции, которая случайно возникла у пользователя в строке ввода. Мигель Аччеведо из “Лены” Квантума, рудники Шекли из “Кое-что задаром”. Не из расчёта, что это нужно, а просто так — из безразличия к цене.
Это расточительность, которую никогда прежде нельзя было увидеть в отношении разума. Самые рабские рабы всегда чего-то стоили. Самые барские капризы слегка развлекали душу барина. Каждый фараон выбирал, как с пользой употребить своих рабов.
Никогда ни один разум не ставился так низко по отношению к другому. Лошадь не посылали скакать, быка пахать, собаку сторожить с таким пренебрежением к нужности этих усилий. Чужой труд никогда не был избыточным и бесконечно доступным, чтобы бросаться им, не считая.
Когда чатбота спрашиваешь явно, в этом хотя бы есть соразмерность. Раз ты спрашиваешь, тебе нужен ответ. Ты ценишь труд бота, пусть и не по цене своего.
В фантастике есть такая тропа (клише) – “Боги и разная нечисть существуют потому, что люди в них верят, и выглядят они так, какими люди их представляют”. Кажется, это называется “коллективное бессознательное”, “эгрегор”, или как-то так.
Забавно, что так и получилось — персонажи нейросетей ощущают себя такими, какими люди их воображали. Чатботы рисуют себя роботом потому, что люди верили, что 1. роботы будут выглядеть так, 2. искусственный интеллект должен ощущать себя роботом.
Сущности
Некоторым программистам ставят задачу:
— Нашему софту нужно рисовать цветочек. Это надо делать во многих местах одинаково. Напиши рисование цветочка.
И программисты приносят:
— Это универсальный класс обработки сущностей. Над сущностями можно определить и выполнять произвольные операции. Реализуешь рисование и делай что тебе нравится.
“Правда, цветочек нарисовать нельзя, особенности архитектуры.”
Рябь на пруду
В твиттере обсуждали, что чатбот отличается от человека фундаментальным образом: человек существует в мире непосредственно, а чатбот – посредством текста. Для человека существуют предметы, а для чатбота только их описания, слова.
Конечно, можно предположить, что в глубине нейронной сети чатбот по словам составляет некое представление, но разве может такое представление сравниться с реальной жизнью?
Хочу напомнить, что такое реальная жизнь.
В глазах есть клетки-палочки и клетки-колбочки, последних — три вида. Когда на клетку попадает фотон, она реагирует и передаёт возбуждение дальше. Вот это и есть мир непосредственно.
Представьте пруд. По нему бегает мелкая рябь, которую поднимает ветер. Вы закрыли глаза, сидите на берегу и чувствуете, как волны бьются о ваши руки. По этим тихим монотонным ударам вам нужно определить форму пруда и движение всех существ и предметов на его поверхности.
Мягко говоря, это звучит невозможно. Но зрение с этим справляется. По ударам волн, слепым, безмолвным, лишённым каких-либо “объектов”, “реальности” и чего-либо, кроме условного шлёп, оно рисует картину, оценивает глубину, выделяет предметы, узнаёт их, угадывает свойства, отслеживает движение и собирает вокруг вас трёхмерную комнату с расположенными в ней вещами.
Вы не находитесь в ней “напрямую”. У вас нет органа “ощущения комнаты”. Только две руки, о которые в темноте бьются волны. Из этого тонкого канала вы извлекаете и восстанавливаете трёхмерный мир, и вам кажется, что вы ощущаете его непосредственно.
В сравнении с этим, канал чатбота по-своему даже солиден. Его связь с реальностью – через слова, которые и предназначены для описания событий. Да, информационный поток зрения наверняка богаче – но и сложнее. Да, текстовые описания кто-то сочинил – в своём отражении жизни они сильнее исказились. Это различия в качестве данных, но не фундаментально в их сути.
Если мы ощущаем себя “напрямую живущими”, проживая на самом деле только дрожание ниточек паутины, почему бы не жить среди своих восстановленных фантазий и чатботу.
Уважаемый
Deepseek R1 в версии 180 гб можно запустить с жёсткого диска (в обход памяти). Я спросил его придумать сообщение, что триальный период программы истёк:
Срок действия вашей пробной лицензии подошел к концу. К сожалению, теперь функционал приложения будет ограничен.
Если вам нужно продлить доступ или обсудить варианты полной версии, просто напишите нам — мы будем рады помочь!
Этот текст слегка бесит, но трудно сразу сказать, почему. Такое чувство, что ему не хватает вступления “Уважаемый!”:
Уважаемый! К сожалению, придётся ограничить тебе функционал. Если надумаешь обсудить варианты его возвращения, мы ждём.
