Temat C1. Wstęp do zagadnień sztucznej inteligencji

przez | 2 października 2023

Wszystkie treści na stronie ir.migra.pl chronione są prawami autorskimi. Więcej informacji znajdziesz tutaj.

I. Rozumienie, analizowanie i rozwiązywanie problemów.
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
4) ilustruje i wyjaśnia rolę pojęć, obiektów i operacji matematycznych w projektowaniu rozwiązań problemów informatycznych i z innych dziedzin, posługuje się pojęciem logarytmu;
8) dyskutuje na temat roli myślenia komputacyjnego i jego metod, takich jak: abstrakcja, reprezentacja danych, dekompozycja problemu, redukcja, myślenie rekurencyjne, podejście heurystyczne w rozwiązywaniu problemów z różnych dziedzin.
IV. Rozwijanie kompetencji społecznych.
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
2) analizuje i charakteryzuje wpływ trendów w historycznym rozwoju pojęć, metod informatyki oraz technologii na możliwości rozwiązywania problemów teoretycznych i praktycznych;

Spis treści

  1. Obszary zastosowań sztucznej inteligencji
  2. Proste systemy SI
  3. Sieci neuronowe i uczenie maszynowe
  4. GPT i ChatGPT
  5. Systemy GAN i ich wykorzystanie do generowania obrazów
  6. Generowanie utworów z innych dziedzin

1. Obszary zastosowań sztucznej inteligencji

Sztuczna inteligencja, w skrócie SI (ang. artificial intelligenceAI), to w informatyce dziedzina badań naukowych oraz zbiorcza nazwa technologii służących modelowaniu i symulowaniu działania naturalnej (zwierzęcej lub ludzkiej) inteligencji.

W ramach sztucznej inteligencji tworzy się systemy (urządzenia lub programy), w których tradycyjne, algorytmiczne podejście się nie sprawdza. Do typowych zagadnień w ramach szeroko rozumianej SI zaliczyć można:

  • podejmowanie decyzji w sytuacji posiadania tylko częściowych danych lub w oparciu o bardzo złożone kryteria,
  • analizę i syntezę języków naturalnych,
  • wnioskowanie logiczne, w tym automatyczne dowodzenie twierdzeń,
  • analizę złożonych zbiorów danych,
  • tworzenie strategii gier logicznych (np. szachy, warcaby, go),
  • tworzenie systemów eksperckich i diagnostycznych,
  • tworzenie inteligentnych urządzeń i robotów.

Do realizacji podanych celów wykorzystuje się takie technologie, jak: uczenie maszynowe, logika rozmyta, analiza obrazów, obliczenia ewolucyjne, sieci neuronowe, symulacje.

Obecnie zastosowania SI obejmują:

  • systemy eksperckie – wykorzystujące do rozwiązywania problemów wprowadzoną przez człowieka bazę wiedzy i mechanizmy wnioskowania. W zależności od użytej bazy wiedzy systemy te mogą być wykorzystywane do diagnozowania chorób na podstawie objawów i wyników badań, poszukiwań złóż surowców, identyfikacji molekuł;
  • diagnozowanie problemów, dokonywanie wycen i kalkulacji, prognozowanie pogody itp.;
  • maszynowe tłumaczenie tekstów – np. Translator Google;
  • sieci neuronowe – symulujące pracę biologicznego mózgu, najczęściej wykorzystywane w połączeniu z innymi zastosowaniami (opisane w punkcie 3.);
  • uczenie maszynowe – zautomatyzowane pozyskiwanie wiedzy przez systemy SI.
  • analizę rozległych zbiorów danych (ang. big data) – wyciąganie wniosków na podstawie dużej liczby często niepowiązanych ze sobą danych. Technika stosowana np. przez Facebook i Google do wyświetlania spersonalizowanych reklam, przygotowanych na podstawie zainteresowań użytkownika, określonych poprzez analizę historii odwiedzanych stron internetowych i innych aktywności w sieci;
  • rozpoznawanie obrazów, w tym tekstu i wideo – np. systemy rozpoznawania pisma OCR (ang. Optical Character Recognition), systemy rozpoznawania twarzy, rozpoznawania obiektów na ilustracjach;
  • rozpoznawanie mowy i osób mówiących – wykorzystywane w wirtualnych asystentach w smartfonach (Siri, Asystent Google) lub urządzeniach domowych (Amazon Echo) oraz systemach obsługi samochodów;
  • generowanie tekstu, obrazu, dźwięku (opisane w dalszej części tematu);
  • pojazdy autonomiczne – samochody, samoloty, łodzie i statki  mogące się poruszać bez udziału operatora (kierowcy, pilota, sternika).

Ćwiczenie 1. Opisujemy wybrane zastosowanie SI

Wybierz jedno z podanych wyżej zastosowań SI i przygotuj na ten temat prezentację. Szczegółowo omów wybrane zastosowanie, w tym przykładowe systemy, które są z nim związane.

2. Proste systemy SI

Proste systemy algorytmiczne pozwalają na zaprogramowanie strategii grania w gry takie, jak warcaby lub szachy. Programista próbujący zaprogramować strategię metodą brute force (przewidywania wszystkich możliwych posunięć i wybierania spośród nich tych prowadzących do wygranej) bardzo szybko napotka jednak barierę mocy obliczeniowej komputera.

Liczbę możliwych gier w szachach określa tzw. liczba Shannona. Pierwszy gracz może wykonać 1 z 20 posunięć. Drugi gracz może odpowiedzieć również 1 z 20 posunięć, co daje już 400 możliwości. Przy dziesięciu ruchach (po pięciu każdego z graczy) daje to już ponad 69 bilionów możliwych posunięć. Prosty program analizujący wszystkie możliwe warianty, nawet pracując na najszybszym komputerze, byłby w stanie przeanalizować tylko kilka możliwych ruchów, tym samym przegrywając z profesjonalnymi graczami potrafiącymi tworzyć strategie sięgające wielu ruchów naprzód.

Aby poprawić jakość programów szachowych, sięga się po algorytmy heurystyczne. Algorytmy heurystyczne znajdują rozwiązania nieoptymalne, ale wystarczająco dobre, biorąc pod uwagę dostępność zasobów komputera (w szczególności czasu procesora). W tym celu algorytmy te często bazują na ludzkiej wiedzy. Np. w przypadku szachów algorytm heurystyczny wyeliminuje te posunięcia, które (według zasad zaczerpniętych z wiedzy doświadczonych graczy) dają znikome szanse wygranej. W efekcie liczba ruchów, które musiałby przeanalizować program, zmniejsza się o wiele rzędów wielkości. Połączenie mocy obliczeniowej komputera i zaawansowanej heurystyki pozwoliło firmie IBM na stworzenie komputera Deep Blue, który w 1997 roku pokonał mistrza szachowego Garriego Kasparowa.

Do stworzenia prostego systemu SI naśladującego twórczość człowieka wystarczy arkusz kalkulacyjny.

Ćwiczenie 2. Analizujemy prosty system SI w arkuszu kalkulacyjnym

Otwórz plik TC1_c2_Absurd.xls. Naciśnij klawisz F9, by wygenerować nowe zdanie „przemówienia”, które pojawia się w komórce A21. Przeanalizuj wykorzystane w arkuszu formuły. Ile możliwych zdań można w ten sposób wygenerować?

W przypadku generatora tekstów system heurystyczny będzie wykorzystywać np. wiedzę na temat tego, jak w danym języku odmieniają się wyrazy, jak łączą się gramatycznie w zdania  i jakie mają znaczenia.

Ćwiczenie 3. Poznajemy generator wierszy

Wejdź na stronę http://poetycko.eu/. Zapoznaj się z możliwościami umieszczonego na stronie generatora wierszy. Oceń poprawność językową „utworów” tworzonych przez system.
Uwaga: Kod źródłowy generatora (w języku Ruby) dostępny jest na stronie https://github.com/Derbeth/poeta.

3. Sieci neuronowe i uczenie maszynowe

Neuron, komórka nerwowa – rodzaj komórki zdolnej do przetwarzania i przewodzenia informacji w postaci sygnału elektrycznego.

Mózgi zwierząt, w tym człowieka, składają się z komórek nerwowych – neuronów. Szacuje się, że w mózgu człowieka znajduje się 100 miliardów neuronów. Neurony  kontaktują się między sobą poprzez synapsy, tworząc sieci neuronowe. Informacje od innych neuronów są odbierane (jako sygnały elektryczne) przez synapsy położone na dendrytach, przewodzone wzdłuż neuronu i przekazywane dalej do synaps na zakończeniach aksonu.

W informatyce reprezentacją neuronu jest pewna funkcja matematyczna, której wartość zależy od wartości parametrów wejściowych. Pojedyncze „neurony” są ze sobą połączone, tworząc sieć neuronową, zdolną do symulowania pracy mózgu (lub przynajmniej jego części) – rys. 1.

Rys. 1. Schemat sieci neuronowej

Symulacja sieci neuronowej jest złożona obliczeniowo, ponieważ wymaga wykorzystania milionów „neuronów”, których wartości muszą być przeliczane równolegle. Dopiero pojawienie się zaawansowanych akceleratorów graficznych, zdolnych do prowadzenia obliczeń w kilku tysiącach jednostek obliczeniowych jednocześnie, oraz rozpowszechnienie się chmur obliczeniowych, pozwalających na łączenie pojedynczych akceleratorów w całe układy obliczeniowe, pozwoliło na realizację takich symulacji.

Sama sieć nie wystarcza jednak do stworzenia symulacji pracy mózgu. Sieć taką trzeba nauczyć: przekazać jej zbiór danych wejściowych i oczekiwany rezultat przetwarzania. Proces ten nazywamy uczeniem maszynowym.

Przykład 1. Przykład uczenia maszynowego

Parametrami sieci neuronowej są obrazy. Każdy obraz jest etykietowany przez człowieka, który opisuje znajdujące się na obrazie obiekty, tym samym określając efekt przetwarzania danych przez sieć neuronową.

Po nauczeniu sieci przez pokazanie jej określonej liczby zaetykietowanych obrazów sieć dokona połączenia elementu obrazu (zbioru pikseli) z przypisaną mu etykietą i tym samym nauczy się rozpoznawać obiekty na obrazach.

4. GPT i ChatGPT

Rok 2022 można uznać za przełomowy w rozwoju SI, ponieważ pojawiły się pierwsze systemy SI ogólnego przeznaczenia, dorównujące człowiekowi. Najbardziej znanym z nich jest ChatGPT, stworzony przez firmę OpenAI i wykorzystujący technologię GPT.

GPT (ang. Generative Pre-trained Transformers, pol. generatywne, wstępnie wytrenowane transformatory) to zbiór modeli językowych powstałych poprzez uczenie maszynowe na bazie zbiorów tekstów pochodzących z książek, artykułów, stron internetowych itp., w celu tworzenia tekstów przypominających ludzkie wypowiedzi.

ChatGPT (ang. chat – rozmawiać, gawędzić) pozwala na konwersację z systemem w języku naturalnym (w tym w języku polskim). Rozmawiamy z ChatGPT tak, jak rozmawialibyśmy z inną osobą. ChatGPT przetwarza nasze pytania i prośby i dostarcza żądanych informacji lub tworzy wypowiedzi na zadany temat. Ponieważ ChatGPT był uczony na bardzo obszernych zbiorach danych, jego zasób wiedzy jest ogromny, co pozwala na generowanie tekstów na dowolny temat i daje poczucie obcowania z inteligentnym bytem.

ChatGPT dostępny jest poprzez przeglądarkę internetową pod adresem https://chat.openai.com/. Wymagana jest rejestracja lub zalogowanie kontem Google bądź Microsoft.

W przykładzie 2. przestawiamy kilka przykładów konwersacji z ChatGPT.

Przykład 2. Korzystanie z systemu ChatGPT

Użytkownik Czym jesteś?

ChatGPT
Jestem ChatGPT, dużym modelem językowym sztucznej inteligencji stworzonym przez OpenAI, którego celem jest pomaganie ludziom w różnych zadaniach związanych z językiem naturalnym, takich jak odpowiadanie na pytania, generowanie tekstu czy tłumaczenie.
Użytkownik Do czego służy komputer?

ChatGPT
Komputer to narzędzie, które służy do przetwarzania informacji i wykonywania różnych zadań. Komputer jest w stanie przetwarzać duże ilości danych w krótkim czasie, wykonywać skomplikowane obliczenia, przechowywać informacje, łączyć się z innymi urządzeniami, a także umożliwiać interakcję z użytkownikiem za pomocą różnych interfejsów, takich jak klawiatura, myszka czy ekran dotykowy.

Komputery są wykorzystywane w wielu dziedzinach, w tym w naukach przyrodniczych, medycynie, przemyśle, finansach, rozrywce czy edukacji. Dzięki nim możliwe jest szybsze i bardziej efektywne przetwarzanie informacji oraz prowadzenie badań i symulacji, co ma duże znaczenie dla postępu technologicznego i rozwoju społecznego. Komputery są także niezbędne w codziennym życiu, np. do komunikacji, korzystania z internetu, pracy biurowej, zabawy czy nauki.
Użytkownik Opisz genezę i fabułę „Pana Tadeusza” Adama Mickiewicza

ChatGPT
„Pan Tadeusz” to epicki poemat Adama Mickiewicza, uważany za jedno z najważniejszych dzieł w polskiej literaturze.

Geneza poematu jest związana z wydarzeniami politycznymi i kulturowymi z przełomu XVIII i XIX wieku, kiedy Polska była podzielona między trzy zaborcze państwa: Rosję, Austrię i Prusy. Mickiewicz, jako poeta romantyczny, zwracał uwagę na polską historię i tradycję narodową oraz na walkę o wolność i niepodległość Polski.

Fabuła poematu rozgrywa się w czasie tzw. „Soplicowszczyzny”, czyli fikcyjnego okresu w historii Polski, którego akcja toczy się w latach 1811-1812. Głównym bohaterem jest Pan Tadeusz, młody szlachcic, który wraca na swoje rodzinne ziemie na Litwie. Akcja dzieje się wokół dwóch sąsiadujących ze sobą dworów: Horeszków i Sopliców, którzy toczą ze sobą spory i nieporozumienia.

W tle akcji dzieją się także wydarzenia związane z narodowym powstaniem przeciwko Rosji, w którym udział biorą mieszkańcy wsi i dworów. Wszystko kończy się pojednaniem dwóch rodów i zawarciem małżeństwa pomiędzy Panem Tadeuszem a Zosią, córką Soplicy.

Poemat Mickiewicza jest napisany wierszem dziesięciozgłoskowym i oparty na polskiej tradycji narodowej, kulturze szlacheckiej i romantycznej estetyce. W „Panu Tadeuszu” autor przedstawił idealizowaną wizję Polski, jako kraju wolnego, demokratycznego i spragnionego wolności.
W tym miejscu należy zwrócić uwagę, że wypowiedzi generowane przez ChatGPT mogą zawierać błędy – ortograficzne, gramatyczne lub merytoryczne. W powyższej wypowiedzi ChatGPT:
* wymyślił pojęcie „soplicowszczyzny”
* błędnie stwierdził, że poemat jest napisany wierszem dziesięciozgłoskowym – w rzeczywistości jest to trzynastozgłoskowy aleksandryn polski.
Użytkownik Stwórz tabelę porównawczą dysków SSD M.2 o pojemności 1GB

ChatGPT
Oto tabela porównawcza dysków SSD M.2 o pojemności 1GB:
Nazwa dysku Producent Interfejs Prędkość odczytu Prędkość zapisu Cena
Samsung 970 EVO Samsung NVMe 3,500 MB/s 2,500 MB/s $139.99
Western Digital Blue SN550 Western Digital NVMe 2,400 MB/s 1,750 MB/s $89.99
Crucial P5 Crucial NVMe 3,400 MB/s 3,000 MB/s $119.99
Kingston KC2500 Kingston NVMe 3,500 MB/s 2,900 MB/s $129.99
Adata XPG SX8200 Pro Adata NVMe 3,500 MB/s 3,000 MB/s $129.99
W tabeli przedstawiono nazwę dysku, producenta, interfejs, prędkość odczytu i zapisu danych oraz cenę. Dyski te wykorzystują interfejs NVMe i mają pojemność 1GB. Prędkości odczytu i zapisu danych są wyższe w porównaniu do dysków SSD z interfejsem SATA III. W tabeli uwzględniono również cenę detaliczną, która może się różnić w zależności od kraju i sklepu, w którym produkt jest oferowany.
Użytkownik Napisz balladę o królu Janie III Sobieskim

ChatGPT
Król Jan na tronie zasiadł,
Za chwałę swoją i ojczyznę walczył,
Każdego dnia z odwagą rządził,
Za swoje czyny wielką miłość zdobył.

Okrutne wojny, klęski i zdrady,
Król Jan nie poddał się nigdy,
Jego miłość do kraju była wielka,
Dla niej stawiał wszystko, walczył do końca.

Korona Polska, jego jedyna miłość,
Do niej oddał całe swoje życie,
Walczył o nią na każdym polu bitwy,
Wszystko po to, by Polska była wolna i silna.

Miał przyjaciół, ale i wrogów,
Tych ostatnich pokonywał zawsze mocno,
Zwyciężał dzięki swojemu męstwu,
Stając się symbolem walki o wolność.

Jego imię zawsze będzie żywe,
Jako symbol wolności i odwagi,
Król Jan, w sercach Polaków zawsze żywy,
Jego czyny staną się legendą na wieki.
Użytkownik Napisz w języku C++ program generujący liczby tworzące ciąg Fibonacciego

ChatGPT
#include <iostream>

int fibonacci(int n) {
    if (n <= 1) {
        return n;
    } else {
        return fibonacci(n - 1) + fibonacci(n - 2);
    }
}

int main() {
    int n;

    std::cout << "Podaj liczbę elementów ciągu Fibonacciego do wygenerowania: ";
    std::cin >> n;

    std::cout << "Ciąg Fibonacciego dla " << n << " elementów:" << std::endl;

    for (int i = 0; i < n; i++) {
        std::cout << fibonacci(i) << " ";
    }

    std::cout << std::endl;

    return 0;
}

Ten program pobiera od użytkownika liczbę elementów do wygenerowania w ciągu Fibonacciego, a następnie używa rekurencyjnej funkcji fibonacci() do obliczenia każdego elementu i wyświetla wynik na ekranie.

Pamiętaj, że ten program używa rekurencyjnej metody do obliczenia wartości ciągu Fibonacciego, co może prowadzić do dużego zużycia pamięci i długiego czasu działania dla dużych wartości n. Można zoptymalizować ten program, używając technik programowania dynamicznego lub iteracyjnych, aby uniknąć problemów z wydajnością w przypadku dużych wartości n.
Użytkownik Napisz po angielsku e-mail do pracodawcy z prośbą o przydzielenie nowego zadania

ChatGPT
Subject: Request for a New Task
Dear [Employer’s Name],
I hope this email finds you well. I am writing to request a new task or project as I have completed my previous assignments and I am eager to take on new challenges.
I have thoroughly enjoyed working with the team and contributing to the success of the company. I am confident that I can apply my skills and experience to any new task you assign me.
Please let me know if there is any upcoming project or task that you think would be suitable for my skills and expertise. I would be happy to discuss this further with you.
Thank you for your consideration.
Best regards, [Your Name]

Ćwiczenie 4. Korzystamy z systemu ChatGPT

Wejdź na stronę ChatGPT (https://chat.openai.com/). Jeśli trzeba, utwórz odpowiednie konto umożliwiające korzystanie z systemu. Zadaj ChatGPT kilka pytań dotyczących twojego ulubionego przedmiotu szkolnego (historii, języka polskiego, matematyki, fizyki, chemii itp.). Oceń poprawność i ogólną jakość odpowiedzi udzielanych przez system.

Uwaga! Systemy takie jak ChatGPT potrafią generować informacje błędne lub całkowicie fałszywe. Mogą również tworzyć wypowiedzi zawierające elementy mowy nienawiści, obrażające lub atakujące inne osoby i zawierające kontrowersyjne poglądy.

5. Systemy GAN i ich wykorzystanie do generowania obrazów

Systemy GAN (ang. generative adversarial network, pol. generatywne sieci współzawodniczące) to systemy sztucznej inteligencji umożliwiające generowanie obrazów. W modelu GAN istnieją dwie sieci neuronowe: jedna ucząca się rozpoznawać obrazy (zwana dyskryminatorem) i druga ucząca się generować obrazy (zwana generatorem). Obie sieci toczą ze sobą „grę”, w której generator tworzy fikcyjne obrazy, a dyskryminator ocenia je pod kątem zgodności z prawdziwymi obrazami (których wzorców został nauczony). W trakcie „gry” generator tworzy coraz lepsze obrazy natomiast dyskryminator coraz lepiej rozpoznaje obrazy „dobre” i „złe”.

Proste systemy tworzenia obrazów z wykorzystaniem GAN pozwalają np. na postarzenie wizerunków osób na zdjęciach, przekształcenie zdjęć w określonym stylu malarskim, interpolację ruchu itp. Najnowsze systemy pozwalają natomiast na komputerowe tworzenie obrazów na podstawie prostego wzoru lub słownego opisu.

Przykład 3. Korzystanie z systemu tworzenia obrazów Scribble Diffusion

System Scribble Diffusion (https://scribblediffusion.com/) tworzy złożone prace graficzne na podstawie prostych rysunków wykonanych myszką i krótkiego opisu w języku angielskim:

Obraz wejściowy + opis Obraz wyjściowy

a photo of a cat


a photo of a house

a photo of a flower

Ćwiczenie 6. Tworzymy obrazy z wykorzystaniem systemu SI

Korzystając ze Scribble Diffusion, utwórz obraz przedstawiający twój ostatni obiad.

Jednym z najbardziej zaawansowanych systemów tworzących obrazy jest Midjourney (https://www.midjourney.com/). Pozwala on na tworzenie realistycznych obrazów (trudnych lub wręcz niemożliwych do odróżnienia od prawdziwych zdjęć i dzieł malarskich) na podstawie wyłącznie opisu (w języku angielskim).

Do korzystania z Midourney niezbędne jest posiadanie konta komunikatora Discord (https://discord.com/). Poprzez ten komunikator (aplikację lub stronę internetową) odbywa się również komunikacja z Midjourney. W darmowej wersji Midjourney umożliwia stworzenie 25 obrazów, generowanie kolejnych wymaga wykupienia abonamentu.

Przykład 4. Tworzenie obrazów za pomocą Midjourney poprzez Discord

Rys. 2. Przykład konwersacji z Midjourney w komunikatorze Discord. Użyto zapytania: /imagine classroom with computers (pol. pracownia komputerowa), a następnie wybrano do powiększenia obraz nr 4.

Tworzenie obrazów odbywa się na czacie z botem Midjourney (użytkownicy posiadający abonament) lub na serwerze Midjourney na kanale #newbies-xx (użytkownicy nieposiadający abonamentu). Aby narysować obraz, należy użyć komendy /imagine (z ang. wyobrażać sobie) i opisu obrazu:
/imagine opis_obrazu
Efektem działania polecenia /imagine są cztery obrazy wg Midjourney najlepiej pasujące do naszego zapytania (ang. prompt). Jeżeli któryś z obrazów podoba się nam, za pomocą przycisków U1-U4 można kazać systemowi wykonać jego powiększoną wersję (ang. upscale). Można również poprosić o stworzenie wariantów jednego z obrazów (przyciski V1-V4) lub kazać komputerowi wygenerować cztery zupełnie nowe obrazy (przycisk O). Powiększenia obrazu również można poddawać wariacjom (przycisk „Make Variations”) lub zmienić użytą metodę skalowania (przyciski „Light Upscale Redo” i „Beta Upscale Redo”)

Generowanie każdego z obrazów trwa około minuty.

Midjourney „zna” szeroki zakres tematów, nazw własnych miejsc i osób, stylów artystycznych, pojęć z dziedziny malarstwa i fotografii, co pozwala na tworzenie nieskończonej liczby wariacji obrazów na dany temat. Opisy nie muszą przedstawiać prawdziwych rzeczy, miejsc lub osób – system potrafi tworzyć obrazy przedstawiające przedmioty czy miejsca nieistniejące, wymyślone. Potrafi też modyfikować w zadany sposób prawdziwe zdjęcia.

Początkowe wersje systemu nie radziły sobie z niektórymi szczegółami, np. anatomicznymi – generowane obrazy ludzi miały niewłaściwą liczbę palców, kończyn, zębów. W kolejnych wersjach systemu większość tych błędów została wyeliminowana.

Przykład 5. Tworzenie obrazów za pomocą Midjourney

W tabeli pokazano przykłady obrazów utworzonych za pomocą Midjourney.

Zapytanie (prompt) polecenia /imagine Efekt działania
wawel castle in krakow
(Zamek na Wawelu w Krakowie)
 
wawel castle in krakow
(Zamek na Wawelu w Krakowie,
powiększenie obrazu nr 3)
wawel castle in krakow made of sand
(Zamek na Wawelu w Krakowie zrobiony  z piasku, powiększenie jednego z wariantów)
wawel castle in krakow, 3d isometric game
(Zamek na Wawelu w Krakowie, rzut izometryczny 3D jak z gry, powiększenie jednego z wariantów)
wawel castle in krakow painted by van gogh
(Zamek na Wawelu w Krakowie namalowany przez Van Gogha, powiększenie jednego z wariantów)
Uwaga! Powyższe obrazy nie przedstawiają prawdziwego zamku na Wawelu. Jak wskazuje nazwa komendy (imagine czyli wyobrażać sobie) obrazy generowane przez komputer są komputerowym wyobrażeniem danego tematu, wariacją na dany temat – choć oczywiście posiadają cechy charakterystyczne dla danej rzeczy lub miejsca.
laser printer deisgned by hieronymus bosch
(Drukarka laserowa zaprojektowana przez Hieronima Boscha, powiększenie jednego z wariantów)
laser printer designed by alphonse mucha
(Drukarka laserowa zaprojektowana przez Alfonsa Muchę, powiększenie jednego z wariantów)
 
heavy metal band made of cats, photo –-ar 3:2
(Koci zespół heavymetalowy, fotografia, proporcje 3:2, powiększenie jednego z wariantów)
pizza with toadstool growing
(Pizza z rosnącymi na niej muchomorami,
powiększenie jednego z wariantów)

Ćwiczenie 7.

Utwórz za pomocą Midjourney artystyczną wizję jednego z zabytków Polski. Sprawdź, jak opisanie stylów malarskich lub fotograficznych wpływa na wygenerowany obraz.

Parametry polecenia /imagine zmieniają jego działanie. Np. aby otrzymać obraz o proporcjach innych, niż kwadrat, należy skorzystać  z parametru --ar:
--ar 3:2    obraz poziomy
--ar 2:3    obraz pionowy
Szczegółowy opis parametrów można znaleźć w dokumentacji systemu (https://docs.midjourney.com/). Dokumentacja jest w języku angielskim.

Przykład 6. Tworzenie obrazów za pomocą Midjourney

W tabeli pokazano ten sam obraz wygenerowany w różnych proporcjach szerokości i wysokości.

Polecenie Efekt działania
/imagine town square in wroclaw
(Rynek we Wrocławiu, proporcje obrazu kwadratowe)
/imagine town square in wroclaw –-ar 2:3
(Rynek we Wrocławiu, obraz w pionie – proporcje 2:3)
/imagine town square in wroclaw --ar 3:2
(Rynek we Wrocławiu, obraz w poziomie – proporcje 3:2)
/imagine town square in wroclaw –ar 16:9
(Rynek we Wrocławiu, obraz w poziomie – proporcje 16:9)

Inne systemy SI umożliwiające tworzenie obrazów na podstawie opisów to: DALL-E (https://openai.com/product/dall-e-2), Stable Diffusion (https://stablediffusionweb.com/), jedna ze składowych aplikacji Canva (https://www.canva.com/) oraz inne.

6. Generowanie utworów innych niż grafika komputerowa

Istnieją również systemy pozwalające na algorytmiczne komponowanie muzyki. Systemy te biorą pod uwagę parametry takie, jak: gatunek muzyczny, nastrój, rodzaj aktywności, której muzyka ma towarzyszyć, tempo, dominujące instrumenty i na ich podstawie tworzą utwór muzyczny. Przykładami takich systemów są: Soundraw (https://soundraw.io/), Mubert (https://mubert.com/), Riffusion (https://www.riffusion.com/).

Trwają prace nad systemami SI pozwalającymi na tworzenie filmów wideo, na podstawie opisu lub statycznych obrazów. Pojawiają się również programy radiowe (radio internetowe) i „telewizyjne” (na platformie Twitch) w całości emitujące audycje stworzone przez komputer, z tekstem generowanym przez ChatGPT i czytanym przez syntezator mowy.

Zadania

1. Znajdź w Internecie informacje na temat testu Turinga. Przeprowadź test z koleżanką lub kolegą: pierwsza osoba zadaje pytania, druga odpowiada samodzielnie lub tekstami generowanymi przez ChatGPT. Zadaniem pierwszej osoby jest stwierdzenie, czy odpowiedzi są dziełem człowieka czy maszyny.

2. Projekt grupowy: stworzenie ilustrowanego opowiadania na wymyślony temat:

  • jedna osoba tworzy tekst opowiadania za pomocą ChatGPT,
  • druga osoba tworzy ilustracje za pomocą Midjourney lub innego systemu generowania obrazów,
  • trzecia osoba łączy tekst i ilustracje w całość, dbając o estetykę publikacji i zawarcie w niej niezbędnych elementów (okładka, strona redakcyjna itd.).

Efektem powinien być plik PDF zawierający ilustrowane opowiadanie.

3. Przeprowadźcie dyskusję na temat zagrożeń wynikających z rozwoju SI. Oceńcie prawdopodobieństwa zaistnienia sytuacji takich jak:

  • odebranie pracy ludziom przez systemy SI,
  • rozpoznawanie prawdy i fałszu w sytuacji, gdy komputer potrafi napisać tekst na dowolny temat lub wykonać „fotografię” nieistniejącej osoby lub nieistniejącego miejsca,
  • niebezpieczne zachowania autonomicznych systemów SI (generowanie celowo nieprawdziwych informacji, systemy wojskowe atakujące ludzi itp.),
  • przejęcie władzy nad światem przez zbuntowaną SI,
  • kradzież własności intelektualnej i praw twórców, których utwory zostały użyte do uczenia SI.

4. Porozmawiaj z nauczycielami innych przedmiotów, jak warto, a jak nie wolno wykorzystywać narzędzia SI w ramach ich przedmiotów. Podziel się wnioskami w ramach dyskusji w klasie.