Як вивчати Python без доступу до інтернету й за допомогою ШІ
Усі статті, обговорення, новини про AI — в одному місці. Підписуйтеся на DOU | AI!
Привіт DOU, мене звати Сергій Труш, і я інженер комп’ютерних систем, захоплююсь вивченням Python, Data Science та темою штучного інтелекту.
Сьогодні я хочу поділитися з вами чудовою можливістю — навчатись з допомогою штучного інтелекту. Для прикладу, буду показувати як вивчати мову програмування Python, при цьому без доступу до Інтернету, за допомогою ШІ, який буде встановлений на Вашому ПК.
Де може бути корисно?
- Це розкриває низку можливостей, наприклад конфіденційність — тут лише Ви та ШІ, без третіх сторін. Якщо Ви володар бізнесу, і Ваші проєкти вимагають, щоб дані не покидали компанію — welcome;
- Можливість будь де і будь коли навчатись (навіть під час блекаутів), або просто спілкуватись з штучним інтелектом, прямо як у серіалі з
80-х років — «Лицар Доріг» (який я вибрав як обкладинку для цієї статті).
Це стає можливим завдяки поєднанні ШІ та open source.
Потрібно три ключові компоненти:
У цій статті я розповім про три проєкти, які в сумі роблять офлайн-навчання можливим, вони доступні для різних операційних систем(у тому числі і для Windows), окрім того — належать до open source спільноти, тобто безкоштовні та доступні всім:
1. Ollama:
Ollama — це проєкт, який є своєрідним інтерфейсом для вводу і виводу інформації у велику мовну модель, тобто це ПЗ слугує для обміну словами(токенами ) між людиною та ШІ.
2. LLAMA3:
LLAMA3 — це велика мовна модель від компанії META, яка була навчена на величезному наборі даних (тексту та коду). Її можна використовувати для генерування тексту, перекладу мов, написання різних видів творчого контенту та, звичайно ж, і для відповіді на ваші запитання про Python. LLAMA3 публікується під особливою ліцензією(рекомендую ознайомитись перед використанням).
3. ChatBox:
ChatBox — цей проєкт є зручним користувацьким інтерфейсом, який дозволяє Вам «спілкуватися» з пз Ollama, яка, в свою чергу, використовує LLAMA3 для розуміння Ваших запитів та генерування відповідей.
Налаштування офлайн чат боту:
1. Завантаження та встановлення:
- Завантажте та встановіть Ollama для своєї операційної системи з офіційного сайту ollama.com . Після встановлення у треї системи ви побачите ламу — сервіс Ollama(у випадку з Windows).
- Встановіть LLM, для прикладу я буду використовувати LLAMA3 8b(вона ж «latest»), на сайті ollama це робиться дуже легко — вибираєте із списку потрібну, та копіюєте команду для командного рядка(на скріні справа):
Для прикладу — я встановлю собі 8b(LLM на 8 мільярдів параметрів), є ще версія мовної моделі 70b, тобто 70 мільярдів параметрів, але моїх 32 гігабайти DDR4 оперативки та RTX3050 на 4 гігабайти не вистачає — дуже довго генерує повідомлення, по
Відкриваєте командний рядок(Win+R -> cmd) та вставляєте команду з сайту:
ollama run llama3
І почне відбуватись скачування файлів LLM:
Після завантаження у Вас з’явиться змога спілкуватись з ШІ у командному рядку, правда без можливості зберегти чат, тобто одноразово. Щоб вийти використовуйте команду «/bye».
- Завантажте та встановіть ChatBox з офіційного сайту chatboxai.app — це розширить можливості для чатування з LLM. У програмі можна створювати нові чати, вміст і контекст бесід зберігається навіть після повторного запуску, спілкуватись можна з ШІ утримуючи контекст до
10-12 останніх повідомлень(вивів для себе таке число експериментальним шляхом). Запускаємо і бачимо щось типу цього:
2. Підключення ChatBox до LLAMA3:
- Після встановлення ChatBox заходимо в налаштування програми(тобто «Settings»), змінюємо «AI Model Provider» на «Ollama», потім «API Host» повинен підтягнутись автоматом, якщо Ви все зробили вірно на попередніх кроках. Моделей може бути кілька, я поки працюю з llama3, також є codellama — набір із різних LLM, які навчені саме під програмування, тому коли треба генерувати код, можна змінювати LLM у налаштуваннях окремого чату.
Є ще параметри «контексту» і «температури» діалогу. Хоч я виставив контекст без обмежень, все одно є обмеження самої LLM, тому просто виставив щоб потішитись. Температура, це те, у якому стилі генерується відповідь, або точно або креативно.
- Створюємо нову бесіду, називаємо її темою, про яку говоритимемо(поле «Name»), щоб задати ШІ тему розмови задаємо системні підказки(System Prompt):
Так як тема статті про навчання програмуванню Python, то я написав наступну підказку:
Вказівка «Використовуй Markdown» зробила гарне кольорове форматування коду:
А підказка як мене звати персоналізувала чат бота таким чином, що він періодично і всюди згадує моє ім’я — цікаве відчуття.
3. Загальні рекомендації що до чату з ШІ :
- На початку бесіди рекомендую попросити створити план теми, яку хочете вивчати, чим детальніше тим краще, це потрібно для того, щоб не втрачати контекст після ліміту в 10 повідомлень, після досягнення ліміту ШІ «забуде» про що говорили раніше, тоді можна натиснути кнопку «Quote», тобто цитата, тим самим «освіжаємо» пам’ять нашому «вчителю» і продовжуємо спілкуватись.
- Інша особливість LLAMA3 це те, що вона навчена в пріоритеті на англійську мову, тому, часом може цілком вас розуміти українською, але відповідати англійською, ніхто не забороняє попросити перекласти використовуючи кнопку цитування.
Переваги офлайн-навчання:
- Доступність: Ви можете навчатися Python де завгодно, навіть без доступу до Інтернету. Все що треба — сучасний ноутбук з зарядкою від Type C, сонячна панелька на
20-50 Вт та powerbank сумісний для зарядки Вашого ноута; - Конфіденційність: так як абсолютно все працює локально, на Вашій машині, то немає ніякої третьої сторони, тут тільки Ви та ШІ. Дуже корисно для бізнесу, якщо важливо щоб дані не покидали компанію;
- Практичний досвід: Ви можете використовувати Ollama для створення власних навчальних середовищ;
- Інтерактивність: ChatBox дозволяє вам вести доволі змістовні розмови з LLA на цікаві Вам теми;
Висновок:
Під час мого невеликого дослідження, якому присвятив цю статтю, я для себе виявив, що ШІ вже поступово інтегрується в наше побутове життя, стає більш доступнішим та простішим у використанні. Тема використання ШІ у сфері навчання вже давно приваблювало мене саме за інтерактивність цього процесу і дякуючи Open Source я став до цього на крок ближче.
32 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів