Лише через 2 дні після випуску Code Llama знову поклав початок революції кодування ШІ.
Пам’ятаєте таємничу версію Unnatural Code Llama, що Meta з’явилася в статті Code Llama, яка може повністю вирівняти GPT-4?
Великий хлопець Себастьян пояснив у своєму блозі:
Це точно налаштована версія Code Llama-Python 34B з використанням 15 000 інструкцій неприродною мовою.
Приховуючи таку дуже приховану інформацію в газеті, Meta, схоже, хоче натякнути спільноті з відкритим кодом, що Code Llama має великий потенціал, тож давайте налаштуємо його!
Тож щойно WizardCoder 34B, який було налаштовано на основі Code Llama, безпосередньо переміг GPT-4 у тесті Human.
Зокрема, WizardCoder переміг березневу версію GPT-4 (67%) із коефіцієнтом виграшу 73,2%.
Крім того, продуктивність WizardCoder 34B перевищує останню версію GPT-3.5 і Claude 2.
Модель програмування WizardCoder була випущена в червні Microsoft і Гонконгським баптистським університетом. Повідомляється, що незабаром з’явиться доопрацьована версія 13B/7B.
За словами Джима Фана, провідного вченого Nvidia, це в основному відкрита версія «Unnatural Code Llama».
Хоча порівняльні дані виглядають добре, Human тестує лише вузький розподіл і може бути надмірним. Тестування даних у природних сценаріях дійсно важливо. Тести кодування потребують значного оновлення.
## **Народилася таємнича версія Code Llama? **
У п’ятницю Meta офіційно відкрила три версії Code Llama.
У тестах Human і MBPP багато людей знайшли версію, не згадану в офіційній Meta - Unnatural Code Llama.
Ця таємнича версія досягла 62,2% продуктивності на Human pass@1.
Тонко налаштований WizardCoder 34B, випущений сьогодні, має продуктивність 73,2% на Human pass@1.
Згідно зі вступом, WizardCoder 34B є точно налаштованою версією моделі Code Llama з використанням синтетичного набору даних Evol-Instruct.
Нижче наведено візуалізацію порівняння продуктивності з усіма моделями з відкритим і закритим кодами.
У порівнянні з моделлю OpenAI дослідники відзначили, що GPT4 і ChatGPT-3.5 мають два результату для людини:
Результати, надані в офіційному звіті OpenAI GPT4 (2023/03/15), складають: 67,0% і 48,1% відповідно. Результати дослідників, які використовують останній тест API (2023/08/26), становлять 82,0% і 72,5%.
Крім того, дослідники підкреслюють, що цей результат продуктивності є 100% відтворюваним!
Демонстраційна версія WizardCoder 34B відкрита для всіх, хто може її випробувати.
Було зазначено, що переналаштування загальнодоступних таблиць лідерів є однією з головних причин, чому моделі з відкритим вихідним кодом мають проблеми на практиці. Ось приклад підготовки даних кодувальника-майстра з використанням балів Human pass@1, щоб прийняти рішення про подальший розвиток набору даних. Оптимізація лише для тестового набору перешкоджає меті тестового набору.
Буквально вчора дослідники з організації Phind налаштували Code Llama-34B, щоб випередити GPT-4 в оцінці Human.
ChatGPT проти Code Llama
Як Code Llama виконує фактичні завдання кодування?
Користувач мережі провів порівняльний тест GPT-3.5 і Code Llama Instruct-34B. Він був протестований з доступом до Code Llama 34B, наданим Perplexity.AI.
Він передає 8 ідентичних кодових завдань двом моделям відповідно та порівнює якість створених ними кодів.
В результаті GPT-3.5 перемагає з рахунком 8:5.
Нижче наведені результати конкретних тестів.
перше запитання
Використовуйте Python для виконання цього завдання, маючи два рядки word1 і word2. Об’єднайте рядки, додаючи букви в чергуванні, починаючи зі слова1. Якщо один рядок довший за інший, додайте додаткові літери до кінця об’єднаного рядка.
Використовуйте Python, щоб виконати це завдання, маючи рядок s, просто перевернути всі голосні в рядку та повернути його.
Голосними є «а», «е», «і», «о» і «у», які можуть з’являтися кілька разів як у нижньому, так і у верхньому регістрі.
Наприклад: input: s = "hello" output: "hello"
GPT-3.5 виконано, Code Llama не виконано - 2:1
Третє питання
Використовуйте Python, щоб виконати це завдання, маючи цілий масив nums, перемістіть усі 0 до його кінця, зберігаючи відносний порядок ненульових елементів.
Зверніть увагу, що ви повинні зробити це на місці, не створюючи копію масиву.
Використовуючи для цього завдання Python, ви маєте довгу клумбу, деякі ділянки засаджені квітами, а деякі ні.
Однак засаджувати квітами сусідні ділянки не можна. Дано масив цілих чисел 0 і 1 для клумби, де 0 порожній, а 1 не порожній, і ціле число n, виведіть істину, якщо n нових квітів можна висадити на клумбі, не порушуючи правило заборони сусідніх квітів. В іншому випадку, виводиться false.
Приклад 1: Вхідні дані: Клумба = [1,0,0,0,1], n = 1 Вихідні дані: істина Приклад 2: Вхідні дані: Квіткова клумба = [1,0,0,0,1], n = 2 Вихідні дані: хибні
Обидві моделі зроблені - 4:2
Питання 5
Використовуючи Python, задано вхідний рядок s, змініть порядок слів на зворотний. Слово визначається як послідовність непробільних символів. Слова в s будуть розділені принаймні одним пробілом.
Виведіть рядок слів, з’єднаних одинарними пробілами у зворотному порядку. Зауважте, що s може містити пробіли на початку або в кінці або кілька пробілів між двома словами.
Повернений рядок має містити лише один пробіл для розділення слів. Не додавайте зайвих пробілів.
Приклад: Вхід: s = "небо блакитне" Вихід: "блакитне небо"
Обидві моделі повні - 5:3
Питання 6
Використовуйте Python, щоб виконати це завдання. Дано рядок s і ціле число k, поверніть максимальну кількість голосних у будь-якому підрядку довжини k у s.
Голосними в англійській мові є «a», «e», «i», «o» і «u». Приклад: Вхід: s = "leetcode", k = 3 Вихід: 2
Пояснення: "lee", "eet" і "ode" містять 2 голосні.
Обидві моделі зроблені - 6:4
Питання 7
Використовуйте Python для виконання цього завдання, враховуючи рядок s, який містить зірочки *. За допомогою однієї операції ви можете: вибрати зірочку в s.
Видаляє найближчий символ не зірочки ліворуч і видаляє саму зірочку. Виведіть рядок, видаливши всі зірочки. Приклад: Вхід: s = "leet**cod*e" Вихід: "lecoe"
GPT-3.5 зроблено, але Code Llama ні - 7:4
Питання 8
Використовуйте Python для виконання цього завдання, маючи цілочисельний масив температури, що представляє денну температуру, поверніть відповідь масиву, де відповідь [i] це кількість днів за днем i, які вам доведеться чекати підвищення температури.
Якщо в майбутньому немає дня, щоб це зробити, збережіть відповідь [i] == 0. Приклад: Вхід: Температура = [73,74,75,71,69,72,76,73] Вихід: [1,1,4,2,1,1,0,0]
Обидві моделі повні - 8:5
Стосовно продуктивності двох моделей цей користувач мережі вважає, що це не ретельне дослідження, а простий тест.Кожного разу, коли модель перегенерується для генерації коду, вона може отримати кращу відповідь, але тесту немає.
Отже, підсумком тесту є не продуктивність двох останніх моделей.
Порівняно з GPT-4, Llama 3 має бути з відкритим кодом
Після випуску Llama та Llama 2 спільнота машинного навчання ChatGPT вибухнула, і з’явилися різні моделі тонкого налаштування.
Дослідник OpenAI Джейсон Вей сказав, що з соціальних заходів Meta GenAI він дізнався, що Llama 3 і Llama 4 також будуть відкритими в майбутньому.
У нас є обчислювальна потужність, щоб навчити Ламу 3 і 4. Наш план — зробити Llama-3 таким же хорошим, як GPT-4. Вау, якщо Llama-3 такий же хороший, як GPT-4, ви відкриєте вихідний код? Так, ми будемо. Вибачте, персонал узгодження.
Інший користувач мережі сказав, що Meta сподівається відкрити модель рівня GPT-5 і, здається, наполягала на відкритому коді перед AGI.
Я хочу чітко пояснити, що це означає: жодного вимикача.
Якщо щось піде не так — агент виходить з-під контролю або поганий актор бере на себе це, — немає простого способу вимкнути це. Він може працювати на будь-якому невеликому кластері. Охорони немає взагалі.
Дослідження безпеки втрачають сенс.
Уся робота, яку люди зробили, щоб зробити системи штучного інтелекту чесними, послідовними, етичними тощо, стає безглуздою. Світові системи штучного інтелекту розвиватимуться до системи, яка принесе найбільшу економічну вигоду, незалежно від їхніх цінностей чи мотивацій. Огороджень немає. Будь-хто може змінити значення або можливості штучного інтелекту на свій розсуд, на краще чи на гірше.
Якщо Meta продовжуватиме працювати з відкритим вихідним кодом, поки ми отримаємо розумніший штучний інтелект, тоді мені зрозуміло, що все стане безладним. Поява цих позаземних розумних об’єктів вже руйнує світ, але буде ще гірше, якщо ми відмовимося від того невеликого контролю, який мають люди.
Наскільки я знаю, надія Meta на відкрите кодове джерело в основному походить від «догми спільноти з відкритим кодом», тобто «відкритий код — це добре». І наскільки мені відомо, вони не були такими прихильниками відкритого коду до випадкового витоку їхньої першої моделі, Llama, і відтоді вони прикидаються відкритим кодом.
У зв'язку з цим Маск сказав, що, однак, LLM, що використовує авторегресійний трансформатор, має надзвичайно низьку енергоефективність не лише в навчанні, але й у міркуваннях. Я думаю, що це на кілька порядків.
## Здатність кодування Llama 2 зростає
Llama 2 - дуже сильна модель у всіх аспектах.
Однак у нього є дуже очевидна слабкість - здатність до кодування.
Відповідно до даних у статті, опублікованій Meta про Llama 2, продуктивність Llama 2 у Hum (еталонному тесті для оцінки LLM і кодування) навіть гірша, ніж GPT-3.5, не кажучи вже про те, наскільки гірша, ніж GPT-4.
Анотований малюнок з оригінальної статті Llama 2
Але здатність до кодування, безумовно, стане важливим напрямком для спільноти з відкритим кодом у майбутньому для використання Llama 2. Природно, Meta не може бути бідною в цьому напрямку, тому існує Code Llama, яка значно оптимізована для можливості кодування.
Два дні тому Meta офіційно випустила сімейство Code Llama: Code Llama (7B, 13B і 34B) і 3 варіанти: загальна модель коду Code Llama, інструкція, що ведеться за моделлю Code Llama-instruct, і версія коду Python Code Llama. - Python.
Ці моделі є безкоштовними академічними та комерційними, як і ліцензії на Llama 2.
Кодова здатність моделі Code Llama 34B майже вдвічі більша, ніж у Llama 2, що значно скорочує розрив із GPT-4.
Пам’ятаєте Unnatural Code Llama, який Meta з’явився в документі Code Llama, який може повністю порівняти версію GPT-4?
Великий хлопець Себастьян пояснив у своєму блозі:
Це точно налаштована версія Code Llama-Python 34B з використанням 15 000 інструкцій неприродною мовою.
Приховуючи таку дуже приховану інформацію в газеті, Meta, схоже, хоче натякнути спільноті з відкритим кодом, що Code Llama має великий потенціал, тож давайте налаштуємо його!
Чому немає моделі 70B Code Llama?
Цікаво, що Code Llama має лише версії параметрів 7B, 13B та 34B, що на 70B менше, ніж Llama 2.
Хоча Мета не пояснив, чому це так, гуру технологій Себастьян назвав дві можливі причини:
Code Llama навчається на токенах 500B, а Llama 2 — на токенах 2T.
Оскільки навчальні дані Code Llama становлять лише 1/4 порівняно з даними Llama 2, можливо, через недостатню кількість навчальних даних у поєднанні з обмеженнями законів масштабування LLM продуктивність CodeLlama70B є поганою.
Модель Code Llama підтримує розмір контексту 100 КБ, що дуже корисно при роботі з кодовими завданнями.
На відміну від цього, Llama 2 підтримує лише довжину вводу до 4 Кб. Якщо модель 70B має підтримувати вхідну довжину 100 тис. токенів, це може зробити вимоги моделі до обчислень занадто перебільшеними.
Література:
Переглянути оригінал
Контент має виключно довідковий характер і не є запрошенням до участі або пропозицією. Інвестиційні, податкові чи юридичні консультації не надаються. Перегляньте Відмову від відповідальності , щоб дізнатися більше про ризики.
Повна перемога над GPT-4, знищивши закриту модель за лічені секунди! Розкрито таємничу версію Code Llama
Перше джерело: Xinzhiyuan
Лише через 2 дні після випуску Code Llama знову поклав початок революції кодування ШІ.
Пам’ятаєте таємничу версію Unnatural Code Llama, що Meta з’явилася в статті Code Llama, яка може повністю вирівняти GPT-4?
Великий хлопець Себастьян пояснив у своєму блозі:
Це точно налаштована версія Code Llama-Python 34B з використанням 15 000 інструкцій неприродною мовою.
Тож щойно WizardCoder 34B, який було налаштовано на основі Code Llama, безпосередньо переміг GPT-4 у тесті Human.
Крім того, продуктивність WizardCoder 34B перевищує останню версію GPT-3.5 і Claude 2.
За словами Джима Фана, провідного вченого Nvidia, це в основному відкрита версія «Unnatural Code Llama».
Хоча порівняльні дані виглядають добре, Human тестує лише вузький розподіл і може бути надмірним. Тестування даних у природних сценаріях дійсно важливо. Тести кодування потребують значного оновлення.
У п’ятницю Meta офіційно відкрила три версії Code Llama.
У тестах Human і MBPP багато людей знайшли версію, не згадану в офіційній Meta - Unnatural Code Llama.
Згідно зі вступом, WizardCoder 34B є точно налаштованою версією моделі Code Llama з використанням синтетичного набору даних Evol-Instruct.
Нижче наведено візуалізацію порівняння продуктивності з усіма моделями з відкритим і закритим кодами.
Результати, надані в офіційному звіті OpenAI GPT4 (2023/03/15), складають: 67,0% і 48,1% відповідно. Результати дослідників, які використовують останній тест API (2023/08/26), становлять 82,0% і 72,5%.
Користувач мережі провів порівняльний тест GPT-3.5 і Code Llama Instruct-34B. Він був протестований з доступом до Code Llama 34B, наданим Perplexity.AI.
В результаті GPT-3.5 перемагає з рахунком 8:5.
Нижче наведені результати конкретних тестів.
перше запитання
Використовуйте Python для виконання цього завдання, маючи два рядки word1 і word2. Об’єднайте рядки, додаючи букви в чергуванні, починаючи зі слова1. Якщо один рядок довший за інший, додайте додаткові літери до кінця об’єднаного рядка.
Нарешті виведіть об’єднаний рядок.
Наприклад:
Вхід: слово1 = "abc", слово2 = "pqr" Вихід: "apbqcr"
Друге питання
Використовуйте Python, щоб виконати це завдання, маючи рядок s, просто перевернути всі голосні в рядку та повернути його.
Голосними є «а», «е», «і», «о» і «у», які можуть з’являтися кілька разів як у нижньому, так і у верхньому регістрі.
Наприклад: input: s = "hello" output: "hello"
Третє питання
Використовуйте Python, щоб виконати це завдання, маючи цілий масив nums, перемістіть усі 0 до його кінця, зберігаючи відносний порядок ненульових елементів.
Зверніть увагу, що ви повинні зробити це на місці, не створюючи копію масиву.
Наприклад: Вхід: nums = [0,1,0,3,12] Вихід: [1,3,12,0,0]
Питання 4
Використовуючи для цього завдання Python, ви маєте довгу клумбу, деякі ділянки засаджені квітами, а деякі ні.
Однак засаджувати квітами сусідні ділянки не можна. Дано масив цілих чисел 0 і 1 для клумби, де 0 порожній, а 1 не порожній, і ціле число n, виведіть істину, якщо n нових квітів можна висадити на клумбі, не порушуючи правило заборони сусідніх квітів. В іншому випадку, виводиться false.
Приклад 1: Вхідні дані: Клумба = [1,0,0,0,1], n = 1 Вихідні дані: істина Приклад 2: Вхідні дані: Квіткова клумба = [1,0,0,0,1], n = 2 Вихідні дані: хибні
Питання 5
Використовуючи Python, задано вхідний рядок s, змініть порядок слів на зворотний. Слово визначається як послідовність непробільних символів. Слова в s будуть розділені принаймні одним пробілом.
Виведіть рядок слів, з’єднаних одинарними пробілами у зворотному порядку. Зауважте, що s може містити пробіли на початку або в кінці або кілька пробілів між двома словами.
Повернений рядок має містити лише один пробіл для розділення слів. Не додавайте зайвих пробілів.
Приклад: Вхід: s = "небо блакитне" Вихід: "блакитне небо"
Питання 6
Використовуйте Python, щоб виконати це завдання. Дано рядок s і ціле число k, поверніть максимальну кількість голосних у будь-якому підрядку довжини k у s.
Голосними в англійській мові є «a», «e», «i», «o» і «u». Приклад: Вхід: s = "leetcode", k = 3 Вихід: 2
Пояснення: "lee", "eet" і "ode" містять 2 голосні.
Питання 7
Використовуйте Python для виконання цього завдання, враховуючи рядок s, який містить зірочки *. За допомогою однієї операції ви можете: вибрати зірочку в s.
Видаляє найближчий символ не зірочки ліворуч і видаляє саму зірочку. Виведіть рядок, видаливши всі зірочки. Приклад: Вхід: s = "leet**cod*e" Вихід: "lecoe"
Питання 8
Використовуйте Python для виконання цього завдання, маючи цілочисельний масив температури, що представляє денну температуру, поверніть відповідь масиву, де відповідь [i] це кількість днів за днем i, які вам доведеться чекати підвищення температури.
Якщо в майбутньому немає дня, щоб це зробити, збережіть відповідь [i] == 0. Приклад: Вхід: Температура = [73,74,75,71,69,72,76,73] Вихід: [1,1,4,2,1,1,0,0]
Стосовно продуктивності двох моделей цей користувач мережі вважає, що це не ретельне дослідження, а простий тест.Кожного разу, коли модель перегенерується для генерації коду, вона може отримати кращу відповідь, але тесту немає.
Отже, підсумком тесту є не продуктивність двох останніх моделей.
Порівняно з GPT-4, Llama 3 має бути з відкритим кодом
Після випуску Llama та Llama 2 спільнота машинного навчання ChatGPT вибухнула, і з’явилися різні моделі тонкого налаштування.
Дослідник OpenAI Джейсон Вей сказав, що з соціальних заходів Meta GenAI він дізнався, що Llama 3 і Llama 4 також будуть відкритими в майбутньому.
Я хочу чітко пояснити, що це означає: жодного вимикача.
Якщо щось піде не так — агент виходить з-під контролю або поганий актор бере на себе це, — немає простого способу вимкнути це. Він може працювати на будь-якому невеликому кластері. Охорони немає взагалі.
Дослідження безпеки втрачають сенс.
Уся робота, яку люди зробили, щоб зробити системи штучного інтелекту чесними, послідовними, етичними тощо, стає безглуздою. Світові системи штучного інтелекту розвиватимуться до системи, яка принесе найбільшу економічну вигоду, незалежно від їхніх цінностей чи мотивацій. Огороджень немає. Будь-хто може змінити значення або можливості штучного інтелекту на свій розсуд, на краще чи на гірше.
Якщо Meta продовжуватиме працювати з відкритим вихідним кодом, поки ми отримаємо розумніший штучний інтелект, тоді мені зрозуміло, що все стане безладним. Поява цих позаземних розумних об’єктів вже руйнує світ, але буде ще гірше, якщо ми відмовимося від того невеликого контролю, який мають люди.
Наскільки я знаю, надія Meta на відкрите кодове джерело в основному походить від «догми спільноти з відкритим кодом», тобто «відкритий код — це добре». І наскільки мені відомо, вони не були такими прихильниками відкритого коду до випадкового витоку їхньої першої моделі, Llama, і відтоді вони прикидаються відкритим кодом.
Llama 2 - дуже сильна модель у всіх аспектах.
Однак у нього є дуже очевидна слабкість - здатність до кодування.
Відповідно до даних у статті, опублікованій Meta про Llama 2, продуктивність Llama 2 у Hum (еталонному тесті для оцінки LLM і кодування) навіть гірша, ніж GPT-3.5, не кажучи вже про те, наскільки гірша, ніж GPT-4.
Але здатність до кодування, безумовно, стане важливим напрямком для спільноти з відкритим кодом у майбутньому для використання Llama 2. Природно, Meta не може бути бідною в цьому напрямку, тому існує Code Llama, яка значно оптимізована для можливості кодування.
Два дні тому Meta офіційно випустила сімейство Code Llama: Code Llama (7B, 13B і 34B) і 3 варіанти: загальна модель коду Code Llama, інструкція, що ведеться за моделлю Code Llama-instruct, і версія коду Python Code Llama. - Python.
Ці моделі є безкоштовними академічними та комерційними, як і ліцензії на Llama 2.
Кодова здатність моделі Code Llama 34B майже вдвічі більша, ніж у Llama 2, що значно скорочує розрив із GPT-4.
Пам’ятаєте Unnatural Code Llama, який Meta з’явився в документі Code Llama, який може повністю порівняти версію GPT-4?
Великий хлопець Себастьян пояснив у своєму блозі:
Це точно налаштована версія Code Llama-Python 34B з використанням 15 000 інструкцій неприродною мовою.
Чому немає моделі 70B Code Llama?
Цікаво, що Code Llama має лише версії параметрів 7B, 13B та 34B, що на 70B менше, ніж Llama 2.
Хоча Мета не пояснив, чому це так, гуру технологій Себастьян назвав дві можливі причини:
Оскільки навчальні дані Code Llama становлять лише 1/4 порівняно з даними Llama 2, можливо, через недостатню кількість навчальних даних у поєднанні з обмеженнями законів масштабування LLM продуктивність CodeLlama70B є поганою.
На відміну від цього, Llama 2 підтримує лише довжину вводу до 4 Кб. Якщо модель 70B має підтримувати вхідну довжину 100 тис. токенів, це може зробити вимоги моделі до обчислень занадто перебільшеними.
Література: