Komunikacja z AI: Programowanie w Python 1 2600-ZLAIz1KAIPIf
Moduł 1 – Wprowadzenie: środowisko pracy i podstawy Pythona
Informacja o zajęciach, zasady zaliczeń
Wprowadzenie do Pythona i jego zastosowań w biznesie
● Dlaczego warto uczyć się Pythona? Po co uczyć się programować, skoro nie chce się zostać programistą?
● Przykłady: automatyzacja, analiza danych, wsparcie decyzji
Środowisko pracy: Anaconda, Google Colab, Visual Studio Code
● Instalacja i konfiguracja Anacondy do pracy lokalnej
● Uruchomienie pythona w konsoli
● Jupyter Notebook - najlepszy wynalazek od czasu krojonego chleba
● Wprowadzenie do Google Colab jako alternatywy w chmurze, praca grupowa, możliwość wykorzystania zasobów serwerowych Googla
● Visual Studio Code, czyli programujesz jak profesjonalista ;)
● Różnice, zalety i ograniczenia różnych środowisk
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)
Moduł 2 – Kontrola przepływu i pętle, testowanie
Instrukcje warunkowe i logika biznesowa
● Instrukcje if/else i reguły decyzyjne
● Ćwiczenia: kalkulator rabatów, zasady przyznawania kredytó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
Instalacja zewnętrznych bibliotek Pythona
● Korzystanie z menedżera bibliotek pip
● Wirtualne środowisko pracy (Venv)
Testowanie
● Biblioteka pytest
● Dobre praktyki
Moduł 3 – Praca z kolekcjami danych, pętle
Struktury danych - tablice, listy
● Listy - tworzenie, modyfikowanie, podstawowe operacje
● append(), remove(), len(), indexowanie
● Iterowanie przez listy
● Przykłady
Pętle
● Pętla for i while
● Funkcja range, iterowanie przez listy
● Przykłady
Słowniki i krotki
● Podstawy słowników
● Tworzenie, dostęp do wartości, metody keys(), values(), items()
● Krotki
Moduł 4 – Klasy i obiekty
Programowanie obiektowe - koncepcja
● Proste wprowadzenie (pracownicy, produkty jako obiekty)
● Klasy i obiekty
● Dodawanie zachowania do obiektów - dziedziczenie i polimorfizm
Zastosowania
● Wykorzystywanie istniejących klas
● Tworzenie własnych klas i obiektów, inicjalizacja
Organizacja kodu, tworzenie własnych modułów
● Importowanie modułów wbudowanych i własnych
● Ćwiczenia: podział logiki biznesowej na pliki
● Dobre praktyki organizacji kodu w plikach/katalogach
Przydatne moduły wbudowane
● datetime, math, random, os, pathlib, statistics
Wersjonowanie kodu (temat dodatkowy)
Moduł 5 – Obsługa wejścia/wyjścia
Wczytywanie danych
● Wczytywanie danych interaktywnie
Praca z plikami
● Czytanie i zapisywanie plików
● Obsługa błędów, wyjątki
Czytanie danych z internetu
● Wczytywanie zawartości stron WWW
● Przetwarzanie danych
● Usługi Sieciowe (Web Services)
Odczyt i zapis plików (CSV, Excel) (2h)
● Import/eksport danych z arkuszy kalkulacyjnych
● Ćwiczenia: analiza raportu sprzedaży, lista obecności pracowników
Moduł 6 - Wykorzystanie sztucznej inteligencji
● Wprowadzenie do SI - Duże modele językowe (LLM)
● SI - stary znajomy (sieci neuronowe, Machine Learning)
● LLM - (r)ewolucja możliwości systemów SI
Wykorzystanie SI do generowania kodu
● Popularne modele
● Przykłady korzystania, jak pisać efektywne "prompty", kontekst, tokeny, ile to będzie mnie kosztować
Wykorzystanie bibliotek SI we własnych programach
● biblioteki do pracy z SI, konfiguracja, klucze API
● Agenci SI
● Czy androidy śnią o elektrycznych owcach? - Model Context Protocol
Moduł 7 – Powtórzenie i projekt końcowy
Powtórzenie materiału
● Powtórzenie najważniejszych informacji, omówienie projektu zaliczeniowego
Projekt zaliczeniowy
● Wykonanie projektu zaliczeniowego - wszystkie chwyty dozwolone
Rodzaj przedmiotu
Efekty uczenia się
UMIEJĘTNOŚCI: ABSOLWENT POTRAFI:
K_U 03, K_U 05, K_U 09
- przystosowywać istniejące metody i narzędzia lub proponować na ich podstawie nowe, stosując zaawansowane techniki informacyjno-komunikacyjne oraz właściwy dobór źródeł do rozpoznawania diagnozowania i rozwiązywania problemów związanych z wykorzystaniem sztucznej inteligencji (AI) w środowisku wewnętrznym i zewnętrznym organizacji;
- proponować rozwiązania zadań osadzonych w nieprzewidywalnych warunkach;
- podnosić zdobyte kwalifikacje i wspierać innych w tym zakresie oraz posiada zdolność do samokształcenia.
Kryteria oceniania
Sprawdzanie napisanych przez studentów programów w Pythonie
Literatura
Materiały przygotowane przez prowadzącego