Mikrokurs: Wstęp do Pythona i SI 0000-MIKRO-WDPIS-UP
Moduł 1 – Wprowadzenie: środowisko pracy i podstawy Pythona
Środowisko pracy: UV, Google Colab, Visual Studio Code
● Instalacja i konfiguracja narzędzia uv do pracy lokalnej
● Korzystanie z menedżera bibliotek uv/pip
● Wirtualne środowisko pracy (venv)
● Uruchomienie skryptów Pythona
● Jupyter Notebook
● Wprowadzenie do Google Colab jako alternatywy w chmurze, praca grupowa, możliwość wykorzystania zasobów serwerowych Googla
● Visual Studio Code, czyli programujesz jak profesjonalista
Python jako sprytniejszy kalkulator
● Podstawowe operacje arytmetyczne
● wypisywanie wyników
Liczby, tekst i operacje logiczne
● Zmienne, liczby, proste operacje, komentarze, int, float, string, boolean
● Operatory arytmetyczne i logiczne
Napisy i przetwarzanie tekstu
● Obsługa nazw klientów, kategorii produktów, opinii
● Formatowanie stringów (f-strings)
Warsztat: uruchomienie modelu nanoGPT, testowanie działania modelu LLM na własnych danych. Poznawanie elementów składni Pythona, które są wykorzystywane przez nanoGPT.
Moduł 2 – Listy, pętle. Funkcje. Czytanie plików.
Funkcje i logika wielokrotnego użytku
● Tworzenie funkcji
● Podział kodu na reużywalne części - dobre praktyki - filozofia rób jedną rzecz, ale dobrze
Pętle
● Pętla for i while
● Funkcja range, iterowanie przez listy
Czytanie i zapisywanie plików tekstowych.
Listy, iterowanie list.
Warsztat: Podstawy NLP. Tokenizacja tekstu.
Moduł 3 – Praca z kolekcjami danych, instrukcje warunkowe, obsługa błędów.
Instrukcje warunkowe i logika biznesowa
● Instrukcje if/else i reguły decyzyjne
Struktury danych - tablice, listy, krotki
● Listy - tworzenie, modyfikowanie, podstawowe operacje
● append(), remove(), len(), indexowanie
● Iterowanie przez listy
Obsługa błędów - wyjątki
Słowniki i krotki
● Podstawy słowników
● Tworzenie, dostęp do wartości, metody keys(), values(), items()
● Krotki
Warsztat: Budowa modelu językowego n-gram (łańcuch Markowa)
Moduł 4 – Generowanie tekstu z modelu n-gram, zapisywanie modelu. Format JSON
● Generowanie liczb losowych
● Format JSON
● Zapisywanie plików
● Testowanie kodu - pytest
Warsztat: generowanie tekstu przez model n-gram
Moduł 5. Praca z danymi wielowymiarowymi. W stronę generatywnej SI, wady modelu n-gram, budowa elementów modelu LLM.
● Analiza przypadków, gdzie model n-gram nie działa
● Wprowadzenie wektorów słów
● Mechanizm uwagi (ang. attention)
● Funkcja softmax
Warsztat: Zamiana modelu n-gram na wykorzystujący mechanizm uwagi (ang. attention). Dlaczego mechanizm uwagi działa tak dobrze?
Moduł 6. Word2Vec, wykrywanie znaczenia semantycznego, mechanizm uczenia modelu
● Mechanizm backpropagation, funkcja straty
● Programowanie uczenia się modelu językowego
● Korzystanie z istniejących modeli do własnej pracy
Certyfikat mikropoświadczenia
Koordynatorzy przedmiotu
Tryb prowadzenia
Założenia (opisowo)
Efekty uczenia się
Student po zaliczeniu kursu zdobył wiedzę w zakresie:
- podstaw programowania w języku Python
- pracy z formatem JSON z wykorzystaniem języka Python
- wykorzystania biblioteki pytest
- pracy w ekosystemie narzędzi potrzebnych programiście Pythona – uv, VS Code, Jupyter Notebook, pip, Google Colab
- podstaw NLP (ang. Natural Language Processing)
- podstaw tworzenia i pracy z modelami generatywnymi sztucznej inteligencji
Student zdobył następujące umiejętności w zakresie:
- pisania prostych programów i skryptów z wykorzystaniem języka Python
- dobrych praktyk programistycznych – modularyzacji kodu, testowania kodu
- uczenia i wykorzystywania prostych modeli typu n-gram w Pythonie
- uruchamiania prostych modeli generatywnej inteligencji (np. nano-GPT) w trybie uczenia i inferencji
- ogólnej wiedzy jak są budowane modele generatywnej inteligencji typu LLM (ang. Large Language Models) – tokenizacja, mechanizm uwagi, uczenie sieci neuronowej przy pomocy propagacji wstecznej (wstęp).
Kryteria oceniania
Efekty uczenia się będą weryfikowane na bieżąco za pomocą zadań warsztatowych, wykonywanych przez uczestników podczas zajęć.
Praktyki zawodowe
Praktyki zawodowe nie są wymagane dla realizacji przedmiotu
Literatura
Materiały przygotowane przez prowadzącego