Taitoja työelämään – Practical AI

Ohjelmistokehityksessä osaamisen kehittäminen on tärkeää ja siihen löytyy Internetistä paljon hyviä materiaaleja ja ilmaisia kursseja, sekä avoimen yliopiston tai ammattikorkeakoulujen kursseja, joista voi kerätä opintopisteitä. Yksi tällainen kokonaisuus on Microsoft Skills for Jobs, joka tarjoaa opintopolkuja kaikille osaamisensa kehittämisestä kiinnostuneille. Kävin ”Practical AI” -kurssin, joka opettaa mitä jokaisen tulisi tietää tekoälystä.

Practical AI -kurssi: perusteet tuottavasta tekoälystä

Practical AI -kurssi perehtyy (tuottavaan) tekoälyyn yleistasolla ja käytännönläheisesti. Kurssi käy läpi tärkeimmät käsitteet, tutustuu tuottavaan tekoälyyn ja opettaa käyttämään kieli- ja kuvamalleja. Kurssi on tarkoitettu kaikille aiheesta kiinnostuneille, eikä sen suorittaminen edellytä teknistä osaamista, tutkintoa tai sanakirjaa.

Kurssin laajuus on kaksi opintopistettä (2 op / ECTS) ja arviointi perustuu hyväksytty/hylätty-asteikkoon. Edetä voi omaan tahtiin. Itsellä kurssin läpikäymiseen taisi mennä pari iltaa, eli aika paljon vähemmän kuin tuo opintoviikkojen 2 * 27 tuntia.

Kurssin on kehittänyt Microsoft Skills for Jobs, Kajaanin ammattikorkeakoulu ja yrityskumppanit. Oppimisalustana toimii Edukamu, joka on Kajaanin ammattikorkeakoulun käsialaa.

Materiaali on jaettu kuuteen osa-alueesen:

  • Tekoälyn tausta ja määritelmä
  • Johdatus tuottavaan tekoälyyn
  • Tekoäly arjen apurina
  • Kieltä tuottava tekoäly
  • Kuvia tuottava tekoäly
  • Eettiset kysymykset

Osa-alueet kattavat pääpiirteittäin sen, mitä asiasta tarvitsee ylätasolla tietää ja helpon lähestymisen tekoälyn konkreettiseen käyttöön kielimallien kautta.

Kurssin kehittäjän panos näkyi materiaalissa, sillä tuottavissa tehtävissä ja esimerkeissä käytettiin ”Copilot with Bing -hakukonetta (OpenAI ChatGPT 4) ja ”Copilot Designer” -kuvanluontia (OpenAI DALL-E 3). Palveluiden nimet olivat ehtineet muuttumaan siitä, kun kurssimateriaali oli julkaistu 2023 keväällä, joka kuvastaa hyvin aihealueen ja palveluiden kehitystahtia. Palveluiden käyttöön ei tarvinnut Edge-selainta, vaikka materiaalissa niin kerrottiin. Positiivisena puolena muitakin tunnettuja tuottavia tekoälypalveluita esiteltiin. Microsoftin palveluiden etuna on, että ne ovat ilmaisia käyttää ja tarjoavat uusinta kielimallia.

Kokonaisuutena Practial AI -kurssi antaa yleiskäsityksen tekoälystä ja sen eri tyypeistä, menemättä kuitenkaan liikaa niiden yksityiskohtiin. Toisaalta asiaa olisi voinut käydä tarkemminkin läpi tekoälyn kehityksen osalta ja etenkin eettisten kysymysten puolesta. Tehtävät jokaisen osion lopussa olivat helppoja, joten kurssin läpikäyminen ei vaadi suurta panostusta. Lopuksi saa kivan sertifikaatin ja 2 opintopistettä Opintopolkuun.

Artikkelin kuvaa varten käytin Copilot Designeria sekä suomeksi että englanniksi, ja lopputulosta joutui hieman hakemaan. Kielimallien käyttö on oma taiteenlajinsa, että saa mitä ajattelee haluavansa. Tai sitten saa jotain parempaa, ainakin ideoita jatkokehittää.

Vihreää ohjelmistoa harjoittajille eli LFC131-sertifikaatti

Vihreä koodi, vastuullisuus, Green ICT ja kestävä kehitys ovat nyt alkuvuoden aikana nousseet esille yhä useammin ja useammassa kontekstissa ohjelmistokehitykseen liittyen. Viime vuoden keväällä kirjoitin Vihreää koodia -webinaarista ja sen esittämistä hyvistä ohjelmistokäytännöistä kohti vihreämpää koodia ja nyt on vuorossa kohti vihreämpää tulevaisuutta sovelluskehityksessä on Linux Foundationin Green Software for Practioners LFC131 -sertifikaatti.

Green Software for Practioners LFC131 -kurssi ja sertifikaatti

Linux Foundationin ilmainen Green Software for Practioners LFC131 -kurssi kertoo miten määritellään, rakennetaan ja ajetaan vihreitä sovellusohjelmistoja. Kurssi kertoo suuntaviivat, jotka auttavat luomaan ymmärrystä mitä tarkoittaa vihreiden sovellusten harjoittaja riippumatta sovellusalueesta, organisaation koosta, ajoympäristöstä tai ohjelmistokielestä ja -kehyksestä. Eli tarjoaa korkean tason käsitteet ja ajatusmallit vihreämpään sovelluskehitykseen.

Vihreä ohjelmisto tarkoittaa kurssin määrityksen mukaan hiilitehokasta ohjelmistoa, joka tuottaa mahdollisimman vähän hiiltä. Vain kolme toimea vähentää ohjelmiston hiilipäästöjä: energiatehokkuus, hiilitietoisuus ja laitteistotehokkuus.

Vihreän ohjelmiston pääperiaatteet (kuva: Green Software Foundation)

Kurssi on jaettu kuuteen osaan:

  1. Hiilitehokkuus: Tuota mahdollisimman vähän hiilipäästöjä.
  2. Energiatehokkuus: Käytä mahdollisimman vähän energiaa.
  3. Hiilitietoisuus: Tee enemmän kun sähkö on puhtaampaa, tee vähemmän kun sähkö on likaisempaa.
  4. Laitteistotehokkuus: Käytä mahdollisimman vähän (laitteistoon) sitoutunutta hiiltä.
  5. Mittaus: Mitä et voi mitata, et voi parantaa.
  6. Ilmastositoumukset: Ymmärrä hiilipäästöjen vähentämisen mekanismit.

Jokaisen osion päätteeksi on lyhyt monivalintakysely, jota ei pisteytetä. Kurssin päätteeksi on lopputentti, josta pitää saada 85% oikein. Testin voi suorittaa niin monta kertaa kuin tarvitsee. Tentin läpäistyä saa sertifikaatin todisteeksi.

Yksi mielenkiintoinen asia sovelluskehittäjälle on esitelty Software Carbon Intensity (SCI), joka sisältää toiminnalliset päästöt (hiilipäästöt sovellusta ajettaessa) ja laitteistopäästöt (hiilipäästöt fyysisistä resursseista, joita tarvitaan sovelluksen ajoon). Kun teet sovelluksestasi energiatehokkaamman, laitteistotehokkaamman tai hiilitietoisen, SCI tuloksesi pienenee. SCI jäi hieman korkealle tasolle, kun esimerkkejä, lukuja tai konkreatiaa ei sinänsä esitelty.

SCI:n laskukaava (kuva: Green Software Foundation)

Toinen hyvä osio oli hiilitietoisuus, jossa esitettiin muutamia konkreettisia menetelmiä vihreämpään sovellukseen muun muassa siirtämällä laskentaa sellaiseen ajankohtaan tai toiselle mantereelle, jossa on vihreää sähköä (hiili-intensiivisyys alhaisempi) saatavilla.

Kurssia ja sertifikaattia on käsitelty myös Koodihuoneilmiö podcastin jaksossa, joka käy hyvin läpi aihetta ja kurssin sisältöä.

Yhteenveto

Green Software for Practioners LFC131 -kurssi tarjoaa korkean tason käsityksen vihreydestä energian kulutuksen ja tuotannon osalta ja miten sitä voi pohtia sovelluskehityksen näkökulmasta. Kurssi lupaa opettaa miten soveltaa vihreän ohjelmistokehityksen periaatteita softan suunnittelussa ja kehittämisessä. Korkealla tasolla tavoite täyttyy ja sekä aihepiiristä että vihreästä ohjelmistokehityksestä saa käsityksen pääpiirteittäin. Konkretiaa ei tarjota, eikä kovin uusia ajatuksia, jos vihreät asiat ovat jo tuttuja. Osa asioista oli myös kurssin aihepiirin (sovelluskehitus) näkökulmasta epäolennaisia, keskittyen yleiseen ilmastosopimuksiin ynnä muihin. Teknologistanäkökulmaa olisi toivonut olla enemmän, sekä menemistä sovellustasolle (esimerkiksi vihreä koodi).

Kurssi on lyhyt, kuvaus taisi kertoa parin tunnin kestosta ja itsellä taisi mennä varmaan tunnin luokkaa. Kurssin pystyi käymään hyvin läpi kännykällä lukemalla, joka helpotti kurssin läpikäymistä pienissä paloissa.