Чтение онлайн

на главную

Жанры

Bash.org.ru IT Happens Истории ## 1201 – 1300
Шрифт:

— ИННАХ!

 

 

 

#1238: Элиза по-русски

13:00 10.09.2009, IT happens

 

Случилось это в то время, когда я только-только научился писать более-менее компилящиеся программы. Начитавшись различных околокомпьютерных изданий довольно низкого качества и геймерских форумов, я твёрдо решил, что напишу свой искусственный интеллект, с которым можно будет... ну, по крайней мере общаться в чате (хотя воображение, разумеется, шло гораздо дальше). Никакой специализированной литературы под руку мне тогда не попало, да и некогда было её читать — руки страшно чесались,

и мне очень хотелось почувствовать себя «большим программистом».

 

На глаза мне попалось описание «электронного поэта» Леонида Каганова, и в голове тотчас же родился алгоритм. Программа содержала базу слов, причём для каждого слова были заданы вероятности того, что оно начнёт или закончит фразу. Для каждой пары слов также присутствовало две числовых характеристики: вероятность того, что первое слово присутствует во фразе, отвечающей на содержащую второе слово, и вероятность того, что первое слово идёт в предложении после второго. В итоге ответ бота начинался с наиболее вероятного слова по сумме баллов «начало фразы» и «ответ на каждое из содержащихся в вопросе слов». Слова добавлялись в конец фразы до тех пор, пока вероятность конца фразы не превышала сумму баллов для следующего «хорошего» слова. О знаках препинания на этом этапе мечтать не приходилось.

 

Результаты были не слишком впечатляющими: загнав руками несколько десятков слов и неделю промучившись с коэффициентами в формулах, я смог добиться лишь адекватных ответов на фразы «привет» и «как дела». Поняв, что самому мне с этой задачей не совладать, я обратился к хорошему знакомому, который не брезговал отвечать на мои околопрограммистские вопросы. Знакомый заинтересовался моим проектом, в первую очередь из-за его простоты, и принялся за дело.

 

Отныне программа общалась с базой данных, содержавшей все необходимые таблицы. Поиск «наиболее вероятных» слов был переложен на движок базы; кроме того, в формулу добавилось слагаемое, экспоненциально уменьшающее вероятность появления нового слова с ростом длины фразы. Когда переписанная программа заработала на уже подобранных мною примерах, возник вопрос: чем заполнить базу? Очевидно, что лучшим кандидатом на базу для чат-бота является... правильно, база настоящего чата. У моего знакомого как раз оказался дамп одного такого ресурса, где сидели преимущественно старшеклассники. Отличительной особенностью этого чата, которой мы легкомысленно не придали должного значения, было полное отсутствие модерации. Мой знакомый занялся делом, и вот уже наскоро составленная «словокосилка» принялась переваривать дамп чата, нещадно запихивая новые данные в MySQL-таблицы.

 

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

 

> Привет

 

Новоявленный бот, задумавшись на пару секунд, выдал:

 

< пошел нах@й

 

Отсмеявшись, на следующий день скрипту мы скормили базу более «взрослого» чата, после чего от дурного воспитания бота не осталось и следа. Некоторое время мы продолжали совершенствовать бота, а затем, разумеется, забросили — как обычно и случается с подобными программами.

 

А мораль истории проста: за вводимыми данными надо тщательно следить — тем более, если эти данные вводишь не ты.

 

 

 

#1239: Официант, шампанского!

00:30 11.09.2009, IT happens

 

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

 

Так вот, в одном из цехов шли работы, и управляющий компьютер надо было отнести подальше от опасности в целях сохранности железа. Вышло так, что компьютерный стол поставили между двух производственных агрегатов с повышенной теплоотдачей. Один умелец снял боковую крышку с системника, чтобы тот не перегрелся. На мой суровый вопрос «какого хрена?» умница-операторша с уверенностью ответила: «Мы крышку сняли, потому что монитор потеет!» Выйдя из ступора, я взглянул на дисплей. На матрице высыхали брызги то ли от воды, то ли ещё от какой жидкости...

 

 

 

#1240: Не съем, так понадкусываю

13:00 11.09.2009, IT happens

 

Скорее грустно, чем смешно. В питерском «Ашане» раздел электроники всегда славился возможностью «потыкать палочкой» в понравившийся экземпляр ноута или нетбука. Всё работало, светилось, пищало. Во время очередного визита я удивляюсь резкому повороту событий: всё железо выключено, а на ценниках появились какие-то приписки.

 

Оказалось, какой-то Данила-мастер не поленился поставить пароли на почти все портативные компьютеры. Теперь железо продают со скидкой, а на ценниках стыдливо подписано «стоит неизвестный пароль».

 

 

 

#1241: d-_-b

13:00 11.09.2009, IT happens

 

Дело было на первом курсе университета — тогда мы только-только начинали осваивать программирование на Паскале. Я зашёл к одногруппнику, который в это время бился с непростой программкой аж на 100 строк кода. В процесс отладки тут же был втянут и я — просмотрел код, сделал пару-тройку исправлений... Программа работает, компилится, но результаты выдаёт явно не те. Полчаса мы перечитывали код, подправляли, оптимизировали; абсолютно правильная «на бумаге» программа ни в какую не хотела выдавать верный результат.

 

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

 

 

 

#1242: Серовики

13:00 11.09.2009, IT happens

 

Пятница, 18:05. Когда я уже одной ногой перешагивал порог офиса, меня отловил финансовый директор, потрясая распечатанным листом, поперёк которого шла жирная серая полоса. Как водяной знак — разве что слова «образец» не хватает. Документ, говорит, нужен кровь из носу прямо сейчас, а принтер выдает такие листы из всех программ.

 

Финдир — тётушка серьезная, в компьютерных настройках не ковыряется почём зря. Иду к принтеру, прикидывая, что в крайнем случае распечатаю файл у себя, потому что дельных мыслей никаких. Лезу в настройки — ничего похожего на опцию «Print grey line». Чтобы изобразить деятельность, даю команду «Очистка» — принтер пыхтит и выдаёт помятый листок с такой же серой полосой!

 

Вместо аккуратной стопочки белоснежной бумаги в лотке обнаруживается ворох «серо-полосатых» черновиков. Вечер пятницы удался.

Поделиться:
Популярные книги

СД. Том 17

Клеванский Кирилл Сергеевич
17. Сердце дракона
Фантастика:
боевая фантастика
6.70
рейтинг книги
СД. Том 17

Идеальный мир для Лекаря 12

Сапфир Олег
12. Лекарь
Фантастика:
боевая фантастика
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 12

Шипучка для Сухого

Зайцева Мария
Любовные романы:
современные любовные романы
8.29
рейтинг книги
Шипучка для Сухого

Мимик нового Мира 3

Северный Лис
2. Мимик!
Фантастика:
юмористическая фантастика
постапокалипсис
рпг
5.00
рейтинг книги
Мимик нового Мира 3

Мимик нового Мира 6

Северный Лис
5. Мимик!
Фантастика:
юмористическая фантастика
попаданцы
рпг
5.00
рейтинг книги
Мимик нового Мира 6

Деспот

Шагаева Наталья
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Деспот

Помещица Бедная Лиза

Шах Ольга
Любовные романы:
любовно-фантастические романы
6.40
рейтинг книги
Помещица Бедная Лиза

Небо для Беса

Рам Янка
3. Самбисты
Любовные романы:
современные любовные романы
5.25
рейтинг книги
Небо для Беса

Полководец поневоле

Распопов Дмитрий Викторович
3. Фараон
Фантастика:
попаданцы
5.00
рейтинг книги
Полководец поневоле

"Дальние горизонты. Дух". Компиляция. Книги 1-25

Усманов Хайдарали
Собрание сочинений
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Дальние горизонты. Дух. Компиляция. Книги 1-25

Колючка для высшего эльфа или сиротка в академии

Жарова Анита
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Колючка для высшего эльфа или сиротка в академии

Последний попаданец 8

Зубов Константин
8. Последний попаданец
Фантастика:
юмористическая фантастика
рпг
5.00
рейтинг книги
Последний попаданец 8

Протокол "Наследник"

Лисина Александра
1. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Протокол Наследник

Огненный князь

Машуков Тимур
1. Багряный восход
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Огненный князь