Vibecoding Haven (BotfatherDEV) – Telegram
Vibecoding Haven (BotfatherDEV)
2.6K subscribers
700 photos
109 videos
11 files
476 links
Ділюсь про те як стати продуктивнішим використовуючи AI в програмуванні.
Download Telegram
🎄 Advent of Code День 3: AI vs парсинг

Сьогодні мали цікаве завдання:

Частина 1:
• Знайти в зіпсованій пам'яті коректні інструкції множення mul(X,Y)
• Проігнорувати всі некоректні варіанти (наприклад, mul(4* або mul[3,7])
• Просумувати результати всіх коректних множень

Частина 2:
• Додалися інструкції do() та don't(), які вмикають/вимикають наступні множення
• Враховувати лише множення, які "активні" на момент їх знаходження, і так само — просумувати

🤖 Результати 3-го дня

Сьогодні моделі показали різні результати:
• GPT-4o-Mini впорався з частиною 1, але не зміг з частиною 2
• Claude 3.5 Haiku несподівано не впорався з парсингом у частині 1, але блискуче розв'язав частину 2

💡 Цікаві спостереження

Здається, що цей день виявився набагато складнішою для AI, ніж попередні дні. Основна складність — правильний парсинг та обробка умов. Але нагадую, що зараз ми тестуємо найменші модельки з найрозумніших. В більш складних задачах ми будемо використовувати топові модельки.

⚡️ Матеріали

📹 Запис стріму
🧑‍💻 Код на GitHub

⏱️ Таймкоди стріму:
- 0:47 — Читаємо умову частини 1
- 3:54 — GPT-4o-Mini успішно розв'язує ч.1
- 6:18 — Claude 3.5 Haiku не впорався з ч.1
- 9:37 — Розбираємо умову частини 2
- 11:20 — GPT-4o-Mini не впорався з ч.2
- 13:10 — Claude 3.5 Haiku успішно вирішує ч.2
- 15:26 — Claude 3.5 Sonnet (теж успішно, але рішення інше)
🔥10🥰2💊1
🎄 Advent of Code День 4: AI vs пошук патернів

Сьогодні мали дуже цікаве завдання:

Частина 1:
• Знайти слово XMAS у матриці літер
• Слово може бути написано в будь-якому напрямку (горизонтально, вертикально, діагонально)
• Потрібно знайти всі можливі входження слова

Частина 2:
• Шукаємо патерн X-MAS: два MAS у формі літери X
MAS можна читати як вперед, так і назад
• Задача виявилася несподівано складною для AI!

🤖 Результати 4-го дня

Несподівані результати:
• GPT-4o-Mini спочатку дав неповне рішення для ч.1, але після уточнення впорався
• Claude 3.5 Haiku успішно розв'язав частину 1
• Частину 2 не змогли розв'язати ні GPT-4o-mini, ні Haiku, ні Sonnet
• Тільки o1-mini зміг знайти правильне рішення для частини 2!

⚡️ Матеріали

📹 Запис стріму
🧑‍💻 Код на GitHub

⏱️ Таймкоди стріму:
- 0:41 — Читаємо умову частини 1
- 4:33 — GPT-4o-Mini розв'язує ч.1
- 8:49 — Claude 3.5 Haiku розв'язує ч.1
- 17:12 — Читаємо умову частини 2
- 18:34 — GPT-4o-Mini не впорався з ч.2
- 20:27 — Claude 3.5 Haiku не впорався
- 23:13 — Claude 3.5 Sonnet спроба 1 (невдало)
- 26:05 — Claude 3.5 Sonnet спроба 2 (невдало)
- 29:48 — o1-mini успішно розв'язує ч.2!
- 39:50 — Аналіз коду o1-mini
👍6❤‍🔥3🔥2💋1
Forwarded from BotNews
This media is not supported in your browser
VIEW IN TELEGRAM
Affiliate Programs and Bot API 8.1

Starting today, Bot and Mini App developers can launch their own Affiliate Programs, and specify how much of their future ⭐️ Star revenue from referred users they are willing to share with those who invited them.

It only takes a few taps to set up an Affiliate Program — you can find out more in our dedicated guide.

With Bot API 8.1, all bots can also detect commissions and affiliate transactions out of the box, see the full changelog for details.

⚠️ Warning: As of December 1 2024, messages with video posted in big communities can be delayed by the server until the respective video is reencoded. Read more here.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🎄 Advent of Code День 5: Теорія графів на практиці

День почався з цікавої задачі про впорядкування сторінок.

Суть завдання:
В першій частині треба перевірити, чи правильно розташовані сторінки за правилами виду "X|Y" (сторінка X має бути надрукована раніше за Y).

В другій частині вже треба не просто знайти неправильні послідовності, а й виправити їх. Тут знадобився потужний інструмент з теорії графів — топологічне сортування.


🎯 Результати моделей
• Частина 1: обидві (gpt-4o-mini, claude 3.5 haiku) моделі впоралися
• Частина 2: тільки Claude 3.5 Sonnet та GPT-4o змогли застосувати правильний алгоритм.

💻 Як працює топологічне сортування

# Створюємо граф залежностей між сторінками
graph = {}
for before, after in rules:
graph.setdefault(before, set()).add(after)
graph.setdefault(after, set())

# Рахуємо кількість "залежностей" для кожної сторінки
in_degree = {node: 0 for node in graph}
for node in graph:
for neighbor in graph[node]:
in_degree[neighbor] += 1

# Сортуємо: беремо сторінки без залежностей і йдемо далі
queue = [node for node in graph if in_degree[node] == 0]
result = []

while queue:
node = queue.pop(0)
result.append(node)
for neighbor in graph[node]:
in_degree[neighbor] -= 1
if in_degree[neighbor] == 0:
queue.append(neighbor)


Детальний розбір алгоритму з прикладами є у записі стріму (38:45), де ми вчимося розуміти як це працює на практиці.

⚡️ Матеріали
📹 Запис стріму
🧑‍💻 Код на GitHub

⏱️ Таймкоди:
- 1:50 — Розбираємо умову частини 1
- 9:33 — GPT-4o-Mini розв'язує ч.1
- 15:33 — Claude 3.5 Haiku розв'язує ч.1
- 19:16 — Читаємо умову частини 2
- 21:08 — GPT-4o-Mini не впорався з ч.2
- 25:59 — Claude 3.5 Haiku не впорався
- 30:07 — Claude 3.5 Sonnet успішно розв'язує ч.2
- 34:28 — GPT-4o успішно розв'язує ч.2
- 38:45 — Розбираємося з топологічним сортуванням
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍7
🎄 Advent of Code День 6: Стежимо за охоронцем

Суть завдання:
В першій частині треба симулювати рух охоронця за простими правилами: якщо попереду перешкода (#)— поворот праворуч, якщо ні — крок вперед. Потрібно порахувати всі унікальні позиції до того, як охоронець покине карту.

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


🤖 Цікаві результати

Частина 1:
• Більшість моделей застрягли у безкінечних циклах через різні причини. Вони чомусь порахували, що якщо кінець мапи - охоронець має повертати, хоча в завданні чітко сказано що він може покинути мапу.
• Claude 3.5 Sonnet написав робочий код з першої спроби
• O1 впорався лише з 4-ї спроби, але код вийшов заплутаним

Частина 2:
• Тільки Claude 3.5 Sonnet та O1 змогли розв'язати
• O1 показав значно швидше рішення (22 секунди проти 99)

⚡️ Матеріали
📹 Запис стріму
🧑‍💻 Код на GitHub

⏱️ Таймкоди:
- 2:26 — Розбір першої частини
- 8:09 — GPT-4o-Mini застряг у циклі
- 13:30 — Claude Haiku: код вже кращий, але не працює), також спроби інших моделей
- 37:35 — Claude Sonnet: успіх з першої спроби!
- 39:42 — Розбір умов частини 2
- 54:50 — Claude Sonnet розв'язує за 99 секунд
- 1:04:20 — O1 знаходить швидше рішення
Please open Telegram to view this post
VIEW IN TELEGRAM
💋4🥰11
Сьогодні стрім буде ввечері, готуйте півгодинки свого часу 🙏
👍2
🎄 Advent of Code День 7: Калібрування мосту

Суть завдання:
В першій частині маємо рівняння з числами, між якими треба розставити оператори + та *. Важливо: обчислення йде зліва направо, без пріоритету операцій.

В другій додався оператор конкатенації || (наприклад, 12 || 345 = 12345). Треба знайти всі можливі комбінації операторів для кожного рівняння.


🎯 Несподівані результати
• GPT-4o-Mini забув імпорт в першій частині
• Claude 3.5 Haiku відмінно впорався з частиною 1
• GPT-4o-Mini несподівано добре розв'язав частину 2
• O1, незважаючи на потужність, не зміг повністю розв'язати частину 2
• Claude 3.5 Sonnet дав правильне, хоч і не оптимізоване рішення (якщо це взагалі можливо оптимізувати)

⚡️ Матеріали
📹 Запис стріму
🧑‍💻 Код на GitHub

⏱️ Таймкоди:
- 1:10 — Розбір першої частини
- 6:30 — GPT-4o-Mini: майже правильно
- 8:49 — Claude Haiku: успішне рішення
- 12:45 — Розбір умови частини 2
- 16:58 — GPT-4o-Mini справляється
- 22:37 — Claude 3.5 Sonnet: правильно, але не оптимально
- 27:03 — о1: невдала спроба (з оптимізацією)
- 31:11 — о1: друга спроба, теж невдало
Please open Telegram to view this post
VIEW IN TELEGRAM
😍6🗿21
Чесно кажучи, дуже здивований результатами від о1. Навіть більше — дуже розчарований, бо вона фейлить вже не перше завдання, хоча мала б бути найрозумнішою моделькою.

Claude 3.5 Sonnet - поки що найкраща для програмування, всім раджу.
😁4💯21
🎄 Advent of Code День 8: Антени та антивузли

Суть завдання:
В першій частині маємо карту з антенами різних частот (позначені літерами/цифрами). Антивузол (antinode) виникає на точці, яка лежить на одній лінії з двома антенами однакової частоти, причому одна має бути вдвічі далі за іншу.

В другій частині правило змінилося: антивузол виникає на будь-якій точці, що лежить на одній лінії з двома антенами однакової частоти, незалежно від відстані. Тобто антивузли починають повторюватися з однаковими дистанціями.


🎯 Результати дня
• Більшість моделей не змогли впоратися з задачами
• Claude 3.5 Sonnet несподівано не зміг розв'язати
• o1-mini єдиний впорався з обома частинами
• В кінці спробували візуалізувати рішення

⚡️ Матеріали
📹 Запис стріму
🧑‍💻 Код на GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71👎1
🎄 Advent of Code День 9: Дефрагментація диску

Суть завдання:
В першій частині маємо карту диску у вигляді послідовності чисел, де чергуються розмір файлу та розмір вільного місця. Треба перемістити блоки файлів зліва направо (звідси і назва — фрагментація диску)

В другій частині треба переміщувати цілі файли, а не окремі блоки, починаючи з файлу з найбільшим ID. Файл можна перемістити тільки якщо є достатньо вільного місця зліва.


🎯 Результати дня

• GPT-4o-Mini та GPT-4o дали неправильні відповіді
• Claude 3.5 Sonnet відмінно впорався з частиною 1
• Claude 3.5 Haiku зміг доповнити рішення частини 1, для вирішення частини 2.
• o1-mini дав правильне, але повільніше рішення

⚡️ Матеріали
📹 Запис стріму
🧑‍💻 Код на GitHub

⏱️ Таймкоди:
- 0:43 — Розбір першої частини
- 10:37 — GPT-4o-Mini: помилка
- 12:00 — Claude 3.5 Haiku: неправильна відповідь
- 13:42 — GPT-4o не впорався
- 17:46 — Claude 3.5 Sonnet: успішне рішення!
- 18:33 — Розбір рішення
- 21:52 — Читаємо частину 2
- 26:15 — GPT-4o-Mini знову невдача
- 28:33 — Claude 3.5 Haiku несподівано впорався
- 32:00 — Підсумки
- 34:54 — o1-mini: правильно, але повільніше
🔥7
Підбив результативність моделей (успішні vs неуспішні спроби)

Це поки що лише 9/25 днів, тому статистика пізніше буде більш репрезентативна.

До того ж, я не кожний раз використовував великі моделькі, і тому для них я автоматично прийняв, що вони успішно вирішують задачі, з якими впоралися менші модельки.
👍3😁2
От ще, якщо взяти в % (щоб нехтувати абсолютною кількістю спроб)
👍3
Vibecoding Haven (BotfatherDEV)
От ще, якщо взяти в % (щоб нехтувати абсолютною кількістю спроб)
Пізніше можна навіть це автоматизувати, прогнати ВСІ модельки по API по всіх задачах. Не уявляю скільки це буде коштувати, але дуже цікаво))
2
Для чистоти експерименту, прогнав ще:

- o1 де було присутнє рішення від o1-mini, і навпаки
- GPT-4o по тим ж задачам, де був Claude 3.5 sonnet

Ось поки що виходить подібна картина.
👍6
Ось доповнив відповідей від всіх моделек до речі) (оновив)

окрім о1
2
Я крайнє не раджу юзати GPT-4o для коду. Просто не треба, або помилки в синтаксисі, або в логіці. Claude РЕАЛЬНО набагато краще, якщо порівнювати великі модельки.

Але навіть в маленьких модельках:
Claude 3.5 Haiku: 50/50
GPT-4o-mini: 30/45 (більше фейлу)


Це я назву 🎄 Advent of Code Benchmark

Але треба буде написати ще код для того щоб це все повністю автоматично протестити і дати кожній модельці хочаб кілька спроб
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥32👏2
🎄 Advent of Code День 10: Пошук стежок

Суть завдання:
В першій частині маємо топографічну карту висот (0-9). Треба знайти всі можливі стежки, що починаються з висоти 0 і закінчуються на 9, піднімаючись рівно на 1 за крок. Для кожної початкової точки рахуємо, до скількох "дев'яток" можна дійти.

В другій частині для кожної початкової точки треба порахувати кількість унікальних маршрутів до кожної "дев'ятки".


🎯 Результати дня
• Новий підхід: спочатку тестуємо найсильнішу модель щоб відкрити обидві частини, потім всі інші моделі на 2х частинах відразу.
• o1-preview відмінно впорався з обома частинами
• Claude Haiku заплутався в частинах завдання
• GPT-4o, Claude Sonnet, o1-mini та Gemini-exp-1206 також впоралися з обома частинами
• GPT-4o-mini розв'язав тільки першу частину

⚡️ Матеріали
📹 Запис стріму
🧑‍💻 Код на GitHub
7👍1😁1
🎄 Advent of Code День 11: Плутонські камінці

Сьогоднішня задача здалася дуже простою — треба було просто застосувати правила трансформації чисел багато разів. Але в цьому і була пастка!

В першій частині треба зробити 25 ітерацій — і це працює швидко. Але в другій частині вже 75 ітерацій, і якщо використовувати той самий підхід — комп'ютер рахував би 12 днів!


🎯 Результати моделей
• O1-preview та O1-mini: успіх в обох частинах
• GPT-4o: впорався з обома частинами
• Claude 3.5 Sonnet: тільки перша частина
• Gemini 1206: тільки перша частина
• Claude Haiku та GPT-4o-mini: не впоралися

💡 В чому фішка?
Замість того, щоб постійно перераховувати одні й ті ж комбінації, можна їх запам'ятовувати (memoization):

def stone_count(k, n, memo):
if n == 0:
return 1

key = (k, n)
# Якщо вже рахували цю комбінацію — беремо готовий результат
if key in memo:
return memo[key]

# Інакше рахуємо і зберігаємо результат
stones = calculate_new_stones(k) # застосовуємо правила
total = sum(stone_count(s, n-1, memo) for s in stones)
memo[key] = total
return total


І тепер замість 12 днів задача розв'язується за кілька секунд! 🚀

⚡️ Матеріали
📹 Запис стріму
🧑‍💻 Код на GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
6🔥3👍2🤡1