Код без тайн
391 subscribers
33 photos
18 videos
1 file
84 links
Пишу о веб-разработке, информатике и технологиях, которые меня вдохновляют

Связаться со мной: @MajorLettuce
Download Telegram
Что такое интеллект и почему он искусственный

#ai #ml #artificialintelligence #machinelearning #openai #chatgpt

Сегодня 1 октября, а это значит, что лучшего времени написать про ChatGPT o1 придумать сложно. Однако, чтобы понять, почему очередной релиз от OpenAI действительно важен, я бы хотел сделать краткий экскурс в историю и в текущее положение дел в области искусственного интеллекта (AI / artificiial intelligence).

Человеческий интеллект

Но что такое интеллект в целом?
Этот вопрос тоже не такой однозначный, но можно взять определение из психологии, которое помимо прочего определяет интеллект как:

1. Адаптация к новым ситуациям
2. Способность к обучению на основе опыта
3. Использование знаний для управления средой

Encyclopedia Britannica

Получается, что если есть компьютер или программа, которая может адаптироваться к новым ситуациям, обучаться на них и использовать эти данные в будущем, то это уже можно назвать:

Искусственный интеллект

Примерно так и описал искусственный интеллект в своей работе «Вычислительные машины и разум» Алан Тьюринг в 1950 году. В ней он заменяет слово «думать» применительно к компьютеру на способность компьютера совершать те же действия, что может совершать человек (например, писать текст или управлять чем-либо).

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

У данного теста есть всего лишь один недостаток: он четко не формализован, поэтому его невозможно «пройти» с научной точки зрения. Однако, совершенно ясно, что с момента появления ChatGPT данный тест в его изначальной формулировке потерял актуальность.

Причем здесь ChatGPT

ChatGPT использует в своей основе большую языковую модель (LLM / large language model), которая на вход и выход получает текст.

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

Пока OpenAI работали над новой версией модели, исследователи изучали поведение уже доступной. На удивление оказалось, что модель может вести себя «более умно» без дополнительного обучения. Достаточно напомнить модели о том, что она может порассуждать.

Так появился подход цепочки мыслей (CoT / chain of thought)

Идея данного подхода в том, что при подаче на вход запроса, вместе с ним добавляется предложение вроде «Давай подумаем над этим шаг за шагом». В результате это заставляет модель генерировать более длинный текст, в котором она сама получает для себя ответ.

Например:

Запрос:
Я пошел на рынок и купил 10 яблок. Я отдал 2 яблока соседу и 2 ремонтнику. Затем я пошел и купил еще 5 яблок и съел 1. Сколько яблок у меня осталось?

Ответ:
11 яблок


С применением CoT:

Запрос:
Я пошел на рынок и купил 10 яблок. Я отдал 2 яблока соседу и 2 ремонтнику. Затем я пошел и купил еще 5 яблок и съел 1. Сколько яблок у меня осталось? Давай подумаем шаг за шагом.

Ответ:
Сначала у вас было 10 яблок.
Вы отдали 2 яблока соседу и 2 ремонтнику, так что у вас осталось 6 яблок.
Затем вы купили еще 5 яблок, теперь у вас 11 яблок.
Наконец, вы съели 1 яблоко, так что у вас осталось 10 яблок.


Вот такие чудеса. Здесь важно то, что данный ответ получен от одной и той же модели без каких либо модификаций или дополнительной тренировки.

В чем суть ChatGPT o1

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

Например, это очень хорошо заметно если нужен «аналитический» ум, когда задачу можно расписать по шагам, как например в программировании, математике или других науках.

Поэтому я бы рассматривал o1 как альтернативу, а не замену текущим моделям. В настоящий момент лично я использую ее только для задач, где нужен глубокий анализ и точность, такие как программирование.
🆒21
OpenAI запустила режим поиска в ChatGPT в общий доступ

#ai #chatgpt

Пока что только для платных тарифов, но обещают позже включить и для бесплатных.

По сути это Perpexity.ai, но с моделью от OpenAI по умолчанию (в Perplexity есть возможность выбирать модель).

Пока что подобные сервисы не могут полностью заменить Google. Что уж говорит, сам Google со своей моделью Gemini в поисковой выдаче не может заменить Google 😅

Основная проблема в том, что модели могут искажать факты, даже если им дать точные данные, но в формате, отличном от текста (например в виде таблицы).

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

#ai #программирование

В спорах об ИИ часто встречаются крайности: от «ИИ заменит всех программистов» до «от него нет никакой пользы». Реальность же куда интереснее — ИИ становится мощным инструментом в руках разработчика.

Недавно начал тестировать Windsurf от Codeium — редактор со встроенным ИИ-ассистентом. На практическом примере хочу показать, как он помогает в работе.

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

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

Ассистент сам за меня выбрал шаблон «стратегия», применил его и мне не пришлось придумывать каким способом реализовать это.

Это отличный пример того, как ИИ ускоряет процесс разработки, если четко понимаешь свои задачи.
Код без тайн
Как ИИ помогает в реальной разработке #ai #программирование В спорах об ИИ часто встречаются крайности: от «ИИ заменит всех программистов» до «от него нет никакой пользы». Реальность же куда интереснее — ИИ становится мощным инструментом в руках разработчика.…
Продолжение экспериментов с Windsurf и ИИ-ассистентами

#ai #программирование

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

Сейчас писал программу, которая должна получать данные из Google Таблиц по достаточно сложной логике: выборка осуществляется по столбцу и по подмножеству строк, при том некоторые строки ниже зависят от строк выше.

Оказывается в Windsurf при использовании Claude 3.5 Sonnet помимо отправки текстовых инструкций также можно и отправлять изображения.

В результате я написал запрос: описал предметную область и желаемый результат и вместе с текстом отправил скриншот таблицы.

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

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

В итоге я «написал» прототип фичи за ~10 минут вместо получаса или даже больше. Думаю именно это имеется в виду, когда говорят, что ИИ не заменит, но увеличит продуктивность программистов.

Важно было четко сформулировать задачу и проконтролировать результат работы, но не нужно было вникать в детали реализации.
Media is too big
VIEW IN TELEGRAM
Сделай за меня: Claude Computer Use

#ai #ml #anthropic #claude

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

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

Компания Anthropic, конкурент OpenAI (создатель ChatGPT), недавно выпустила обновление для своей модели Claude — Computer Use (использование компьютера).

Суть в том, что теперь Claude может более точно координировать действия, выполняемые за компьютером: нажатия клавиш и перемещение курсора — он делает это по скриншотам экрана.

В 2024 году уже стали появляться сервисы, которые используют агентов ИИ и я думаю, что в следующем году подобная тенденция только продолжит набирать обороты.
3
Благодарю за отклик!

#ai #разработка #продакт

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

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

Теперь я знаю, чем заняться ближайшее время 🦄

В скором времени я начну разработку MVP (minimum viable product), а пока хочу поинтересоваться у вас: в каких сферах вы чаще всего используете ИИ-чаты?

Я постараюсь учесть ваше мнение при разработке и попробую создать экспертов для этих тематик

Буду делиться своим прогрессом здесь в канале, здесь же сообщу о раннем доступе
👍1
Недавно в интервью с руководителем продукта OpenAI промелькнула мысль: чтобы по-настоящему оценить риски искусственного интеллекта, нужно не только читать про него в новостях, но и пользоваться им.

Многие боятся, что с приходом общего искусственного интеллекта (AGI) у людей «отберут работу». Однако, текущие модели далеки от совершенства.

Но чтобы оценить это, нужно «прочувствовать» эти модели на себе — нужно попробовать все современные модели

Для такого хорошо подходит арена чат-ботов Chatbot Arena (LMSYS), где показываются результаты двух языковых моделей и предлагается выбрать лучший вариант по мнению пользователя вслепую.

На мой взгляд это лучший способ оценки моделей на текущий момент и как можно заметить, как правило там лидируют OpenAI и Anthropic с моделями ChatGPT и Claude, соответственно. Поэтому справедливо называть данные модели лучшими на текущий момент или по другому: state of the art.

В России также развиваются собственные модели: GigaChat от Сбера и YandexGPT от Яндекса, но они все ещё уступают передовым решениям. Это, конечно, только мое мнение, потому что нет даже бенчмарков для корректного сравнения их производительности — на LMSYS эти модели не представлены, а в лидерборде a-ai.ru нет YandexGPT.

Поэтому считаю, что каждому, кто интересуется ИИ, нужно самостоятельно попробовать state of the art модели — ChatGPT, Claude, Gemini, а с недавнего времени теперь ещё и DeepSeek. По этой же причине я планирую использовать эти модели в своем проекте для AI-мастермайнда.

А какими моделями вы чаще всего пользуетесь?


#ai #технологии #мысли
Только что размышлял над фрагментом интервью Бреди (Computerphile) с главой Nvidia Дженсеном Хуангом, в котором он упомянул вскользь о своих первых языках программирования — Fortran, Pascal и awk 🤔

Фрагмент про языки программирования навел меня на мысль: у каждого человека часто свой первый язык, с которого он начинал — это понятно

Но языков ограниченное количество

Как правило люди из одного поколения или среды (школа/университет) начинают с одного языка программирования

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

Все, кроме, пожалуй, "Hello, World!" — это уникальное выражение мыслей и опыта человека

Имена переменных, функций, текст, выводимый в консоль — все это не повторяется

Это подвело меня к другой мысли:

Получается, что подходы к проектированию и разработке программ — это попытка «укротить» подобного рода уникальность

И ведь действительно в сфере разработки софта есть разделение:

• Одни пытаются привести область и строгой стандартизации и регламентам, как любую другую инженерную специальность

• Другие говорят, что разработка — это творчество, что каждый делает как художник, который так видит

Есть еще такой термин: craftsmanship, который периодически пытаются применить к процессу разработки

Лично мне иногда не хватает стандартизации в процессах, чтобы не приходилось выбирать в очередной раз из 5 разных библиотек, которые делают одно и то же

А вы как думаете?

Было бы лучше, если разработка была бы больше похоже на инженерную дисциплину?

#разработка
🔥2👍1