Kuinka hyödyntää tekoälyä työhakemuksen kirjottamisessa?

Ilman pitkällistä hienosäätöä paraskaan chatbotti tai tekoälyagentti ei suoraan kirjoita timanttisia hakemuskirjeitä. Näitä vinkkejä noudattamalla saat kuitenkin luotua hakemustekstille pohjan, jota voit itse viilata paremmaksi.

Jokaiseen hakemukseen kannattaa ihan omin käsin kirjoittaa, miksi olet kiinnostunut yrityksestä ja miksi haet juuri kyseistä paikkaa. Myös kaikki hakemuksen faktat kannattaa tarkistaa kahteen kertaan ennen lähettämistä.

Prosessi toimii parhaiten englanniksi, mutta englannin ja suomen sekoittaminen onnistuu myös. Lopullinen suomenkielinen hakemusteksti vaatii astetta tarkempaa kieliopillista viillaamista.

Aineistoin kerääminen

  1. Valitse helppokäyttöinen ja tarkoitukseen soveltuva AI-chatbotti. Yksinkertaisin valinta on halvin kuukausimaksullinen versio ChatGPT:stä. Sen kautta tarjolla olevat ominaisuudet ja kielimalli (GPT 4o tai 5) riittävät tähän jumppaan vallan mainiosti.

  2. Luo tiivis lista kaikesta osaamisesta. Oma listani on erillinen tiedosto nimeltään [Skills] Siinä on listattuna kaikki mahdolliset taidot, jotka tavalla tai toisella voi näyttää todeksi. Listan voi halutessaan kirjoittaa itse. Sitä varten voi myös syöttää tekoälylle vanhoja työhakemuksia, ja pyytää poimimaan teksteistä tunnistetut taidot.

  3. Luo lista saavutuksista. Oma listani on erillinen tiedosto nimeltään [Achievements], johon olen kuvannut kolme merkittävää saavutusta ammatillisella urallani. Saavutukset kannattaa lähtökohtaisesti kuvailla itse. Jos kärsit perisuomalaisesta vaatimattomuudesta, voit kirjoittaa saavutuksistasi jotain, ja pyytää tekoälyä muotoilemaan tekstistä napakampaa tai astetta kunnianhimoisempaa.

  4. Kopioi alkuperäinen työpaikkailmoituksen teksti. Itse jäsennän ilmoituksen aina uudelleen, niin että teksti alkaa työtehtävän kuvauksella, ja vasta myöhemmin kerrotaan lisätietoja yrityksestä. Uudelleen jäsennetyn tiedoston voi tallentaa nimellä [Job Description X].

Onnittelut! Olet nyt kasannut kaiken hakemuskirjeiden luomiseen tarvittavan aineiston.

Chatbotin käyttö varsinaisen hakemustekstin muotoiluun

Seuraavassa vaiheessa tarvitaan kehote eli prompti, joka antaa chatbotille tarkempia ohjeita sen roolista ja kerätyn aineiston käyttämisestä. Oheiset promptit ovat yksinkertaistettuja versioita, voit kehittää niitä itse paremmaksi ja omaan käyttötarpeeseesi sopivaksi.

Kehote eli prompti

Using this [Job Description X], my [Skills] and [Achievements], write a personalized cover letter that shows why I’m a strong fit for the role.

Muuttujat [Job Descripition X], [Skills] ja [Achievements] voi ChatGPT:ssä liittää mukaan tiedostoina. Itse olen päätynyt lisäämään harvemmin muokattavat Skills- ja Achievements-tiedostot chatbotin Knowledge-osioon, jota sitten kutsutaan chatbotin käyttöliittymästä riippuen hieman eri tavoin.

Jos ensimmäinen yritys ei tuota toivottua tulosta, voit täsmentää ohjeita, pyytää chatbottia kokeilemaan uudelleen tai aloittaa kokonaan uuden keskustelun.

Jatka tekstin muotoilua käsin, jotta se ei jäisi geneeriseksi tuotokseksi. Muista tarkistaa faktat ja lisää tekstiin omin käsin, miksi olet kiinnostunut yrityksestä ja miksi haet juuri kyseistä paikkaa. Onnea työnhakuun!

Muita aiheeseen liittyviä kehotteita

Yleinen hakemuskirje työtehtävän ja kokemuksen perusteella

Write a professional cover letter for a [job title] with [X years of experience]. Highlight 3–4 transferable skills, a few key accomplishments, and keep the tone clear and confident. Make the letter easy to customize for future applications.

Lisää itsevarmuutta hakemustekstiin (alkaa myös helposti kuulostamaan kornilta)

Rewrite this cover letter to sound more confident. Use stronger action verbs and emphasize measurable results. Keep the tone clear and professional.


Paikallinen AI-chat käyttöliittymä (Docker Desktop & Docker Model Runner)

Olen jo aiemmin testannut omalla läppärillä (Apple Macbook Air M1/16GB) paikallisesta ajettavia kielimalleja ja niiden käyttöliittymiä. Tähän asti järjestelmien käyttöönotto ja ylläpito on ollut monimutkaista (Docker + Ollama -yhdistelmä).

Ollamalla mallit saa käyttöön helposti, mutta sen tarjoama chat-käyttöliittymä jättää toivomisen varaa. Kehittyneemmän käyttöliittymän (OpenWebUI) pyörittäminen taas vaatii rinnalle Dockerin. Dockerin & Ollaman yhteiselo ei ole aina täysin mutkatonta, ja molemmat vaativat myös jatkuvaa päivitystä ja ylläpitoa.

Docker Desktopiin on kesän aikana ilmestynyt Models-valikko, jonka avulla paikallisia malleja voi ladata suoraan Dockerin Hubista. Model Runnerin avulla malleja on mahdollista myös ajaa suoraan Dockerista ilman Ollamaa.

Latasin Docker Hubista Gemma3n-mallin ja loin Docker-kontin tällä docker-compose.yml :llä. (korvaa esimerkin llama-mallia juuri lataamasi mallin tunnisteella)

Kun Docker-kontti on asennettu ja käynnissä, verkkoselaimella osoitteesta localhost:3000 löytyy OpenWebUI:n käyttöliittymä, johon luodaan admin-käyttäjä. Tämän jälkeen käyttöliittymä on valmis, ja se käyttää paikallisesti Docker Hubista ladattua Gemma3n-mallia.

OpenWebUI-käyttöliittymään voi liittää API:lla myös muita kielimalleja verkon yli. Niistä lisää myöhemmin.

Docker ModelsOpenWebUI -käyttöliittymä & Gemma3n


Visuaalista p5.js -koodausta ChatGPT:n avulla (pt.2)

Oheista kuvaa varten pyysin (ilmaista) ChatGPT:tä hakemaan yksityiskohtaisia tietoa Suomenlahden majakoista, koostamaan tiedot taulukoksi ja kirjoittamaan sen jälkeen p5.js -koodia taulukon tietojen pohjalta.

Kokeilin samaa jo aiemmin koodieditorilla Google Geminin avustuksella, tässä pelkästään ChatGPT:llä toteutettu versio. Majakoita löytyi Googlen työkaluilla helpommin ja enemmän, mutta olin kyllä rehellisesti yllättynyt miten tiedonhaku ja koodaus onnistuivat yhdessä ja samassa ChatGPT-keskustelussa.

Annoin kaikki pyynnöt ja komennot luonnollisella kielellä, ChatGPT kirjoitti koodin ja muokkasi sitä pyyntöjeni perusteella.

Huom! En ole tarkistanut, ovatko kuvassa esitetyt majakat tarkasti oikeilla paikoilla, onko niiden valo oikeasti tuon väristä ja vilkkuvatko ne animaatiossa esitetyllä tavalla. Kokeilun ideana oli lähinnä testata ChatGPT:n kykyä hakea tietoa ja tuottaa sen pohjalta p5.js-koodia pelkästään luonnollista kieltä käyttämällä.

Aiemmassa blogijulkaisussa kerron tarkemmin, kuinka lähestyin aihetta Geminin ja koodieditorin avulla, ennen kuin kokeilin ChatGPT:tä. tommiska.com/2025/05/0…


Laajat kielimallit ja agenttipohjaiset tekoälyjärjestelmät (toukokuu 2025)

Yleisluontoinen katsaus aiheeseen toukokuussa 2025.

Laajat kielimallit (LLM:t) toimivat pohjimmiltaan tilastollisen päättelyn avulla. Ne analysoivat käyttäjän syötteen ja tuottavat vastauksen arvioimalla, mikä olisi todennäköisin ja tarkoituksenmukaisin jatko annetulle tekstille. Vaikka prosessi on teknisesti monimutkainen, se tapahtuu lähes välittömästi. Tämä nopea ja sujuva toiminta luo vaikutelman aidosta keskustelusta ja luonnollisesta kielenkäytöstä.

Tunnetut tekoälypalvelut kuten ChatGPT, Claude, Copilot ja Gemini ovat kehittyneitä chatbot-pohjaisia käyttöliittymiä. Ne eroavat merkittävästi yksinkertaisemmista, esimerkiksi yritysten asiakaspalvelussa käytettävistä chatboteista. Edistyneempien chatbot-pohjaisten käyttöliittymien erityispiirre on niiden kyky hyödyntää myös muita tekoälysovelluksia (esim. kuvien generointi ja konenäkö) sekä erikoistuneita työkaluja (esim. tiedonhaku) tehtävien suorittamisessa.

Käyttäjän kehotteet & kehotteiden suunnittelu Hyvän kehotteen voi muotoilla esim. seuraavasti

  • Suorat käskyt:”Tiivistä tämä muistio viidellä lauseella”.
  • Roolipohjaiset ohjeet: ”Toimi kokeneena alan x asiantuntijana. Hahmottele ohessa kuvatun projektin tärkeimmät vaiheet”
  • Askel-askeleelta ohjeet: ”Tiivistä ensin muistiinpanot yhteen kappaleeseen, listaa sitten kolme pääasiallista toimenpidettä”. Tehtävät voi usein jakaa myös peräkkäisiin prompteihin.

Rakenteelliset kehotepohjat (esim. CO-STAR)

  • Context Oleelliset taustatiedot (esimerkit ja tausta-aineistot)
  • Objective Tavoite tai tehtävä (esim. esseekirjoitus, mainosteksti tai raportti)
  • Style Tekstin tyylilaji (esim. humoristinen, juridinen tai virkakieli)
  • Tone Tekstin sävy (esim. lämmin, neutraali tai suoraviivainen)
  • Audience Tavoiteltu kohderyhmä
  • Response Vastauksen muotoilu (esim. viisi lausetta tai bullet pointit)

Voit lukea lisää promptien eli kehotteiden muotoilusta esimerkiksi:

Hyvän promptauksen periaatteet tietotyön tekijälle

MS Copilot -ohjeet

Google Gemini -ohjeet

ChatGPT -ohjeet

Anthropic Claude -ohjeet

Kielimallien keskeiset rajoitteet ja ratkaisuja niistä aiheutuviin ongelmiin

Kielimallien tunnettuja rajoitteita ovat mm.

  • virheellisen tiedon tuottaminen (hallusinaatiot)
  • tietopohjan vanheneminen koulutusajankohdan jälkeen
  • puutteellinen kyky viitata käytettyihin lähteisiin
  • tietosuojaan liittyvät kysymykset
  • rajallinen kyky käsitellä laajoja aineistoja kerrallaan

Rajoitteista seuraavia ongelmia voidaan kuitenkin hallita erilaisin keinoin. Tietosuojariskejä minimoidaan systemaattisella tiedonhallinnalla ja selkeillä tietoturvakäytännöillä. Kielimallien toimintaa voidaan tehostaa hyödyntämällä hakupohjaista generointia (RAG, Retrieval-Augmented Generation) sekä erilaisia tukityökaluja, jotka laajentavat mallien käyttömahdollisuuksia ja parantavat niiden luotettavuutta.

Agenttipohjaiset tekoälyjärjestelmät

Agenttipohjainen tekoäly edustaa merkittävää kehitysaskelta perinteisiin tekoälymalleihin verrattuna. Siinä missä tavanomaiset tekoälyt keskittyvät lähinnä vastausten tuottamiseen, agenttipohjainen tekoäly kykenee itsenäiseen toimintaan, päätöksentekoon ja ongelmanratkaisuun. Uusimman sukupolven chatbot-sovellukset hyödyntävät näitä kehittyneitä ominaisuuksia. Näitä sovelluksia kutsutaan päättelymalleiksi (Reasoning Models), sillä ne pystyvät jäljittelemään ihmismäistä päättelykykyä ja soveltamaan tietoa johdonmukaisesti erilaisten ongelmien ratkaisemisessa.

Agenttipohjaisen tekoälyn soveltamismahdollisuudet ovat laaja-alaiset. Sitä voidaan hyödyntää tehokkaasti esimerkiksi ohjelmistokehityksen tukena, tieteellisessä tutkimustyössä sekä erilaisten toistuvien työtehtävien automatisoinnissa.

Agenttipohjaisten järjestelmien neljä keskeistä toimintaperiaatetta

  • Ennakoiva suunnittelu: Järjestelmä suunnittelee toimenpiteet huolellisesti ennen varsinaista toteutusvaihetta
  • Systemaattinen arviointi: Järjestelmä arvioi ja analysoi toimintaansa prosessin eri vaiheissa
  • Työkaluintegraatio: Järjestelmä hyödyntää tarkoituksenmukaisia erikoistyökaluja tehtävien suorittamisessa
  • Moniagenttitoiminta: Useat tekoälyagentit toimivat yhteistyössä joko peräkkäisinä ketjuina, keskitetysti johdettuina tai rinnakkaisina toimijoina

Vaikka et käyttäisi AI-agentteja, voit myös itse hyödyntää samoja periaatteita kielimallien avulla työskennellessäsi.


Visuaalista koodausta AI:n avustuksella

Suomenlahden majakat visualisoituna p5js-koodilla editor.p5js.org/atommi/fu…

Ethan Mollickin tuore julkaisu esitteli OpenAI O3 -kielimallin kyvykkyyksiä. Siitä inspiroituneena kokeilin muita kielimalleja ja itselle ennestään tuttuja työkaluja.

Anthropic Claude 3.7 piirsi svg-kuvan Mollickin promptilla, mutta majakoiden sijainnit olivat Clauden tarjoamassa versiossa päin honkia. Googlen Gemini ei suostunut piirtämään SVG:tä, mutta keräsi majakoiden tiedot taulukkoon ja antoi lisäksi Python-koodin, jolla sai itse generoitua SVG-kuvan. Tämän SVG-kuvan sain helposti käännettyä myös p5js-koodiksi. editor.p5js.org/atommi/fu…

Päädyin lopulta pyytämään Gemini 2.5 pro:lta yksityiskohtaisen taulukon kaikista Suomenlahden majakoista. Tallensin taulukon sellaisenaan .csv muodossa. Yhdessä Gemini 2.5 flashin kanssa sitten “vibekoodailtiin” varsin monimutkainen p5.js -koodi, joka hyödyntää suoraan .csv-taulukon dataa, mm. light characteristic lyhenteillä esitettynä [ Fl(2) W 10s ].

“Koodaamiseen” käytin VS Codea Cline -lisäosalla, sekä Gemini 2.5 Flash APIa, jota voi testata ilmaiseksi. p5js-sketchin hahmottelu ja koodimuutokset toteutin pääosin ohjaamalla prosessia luonnollisella kielellä, eli esitin siis pyyntöjä “tee näin”, “korjaa tämä”, “muuta tämä” jne.

Taulukkoon päätyneiden nimien seassa on myös pari majakkaa, jotka eivät ole aktiivisessa käytössä. Karttapohjan liittäminen skaalautuvaan p5js-sketchiin osoittautui myös haastavaksi, eli en mene takuuseen siitä että kaikki majakat olisivat oikealla sijainnilla.

Linkki Mollickin alkuperäiseen julkaisuun: www.linkedin.com/posts/emo…