Microsoft Fabric ja OpenAI: Mitä jos yhdistämme Microsoft Fabricin kyvyn hakea, käsitellä ja varastoida dataa OpenAI:n kielimalleihin?
Microsoft Fabric on Microsoftin toukokuussa 2023 julkaisema data-/analysointialusta. Alustan ajatuksena on tarjota yksi kattava työkalu datan käsittelyä, raportointia ja analysointia varten. Fabric yhdistää monia jo pitkään olemassa olleita Microsoftin datapalveluita yhdeksi uudeksi tuotteeksi. Fabric ei ole kuitenkaan pelkkä sateenvarjo vanhoille Azuren palveluille, vaan tarjoaa uusia ominaisuuksia kuten esimerkiksi yhtenäisen OneLake -ratkaisun tietojenvarastointia varten.
Fabric on vasta siirtynyt Preview -vaiheesta yleisesti saataville. Tämä näkyy mm. siinä, että kaikki Fabricissa olevat tuotteet eivät vielä juttele toistensa kanssa sujuvasti. Tilanne on odotettavasti parantumassa, kunhan tuotteen maturiteetti kehittyy.
OpenAI on tunnettu tekoälyyn erikoistunut yritys. Yritys tuli kuuluisaksi DALL-E ohjelmistostaan, joka pystyy luomaan kuvia perustuen tekstikuvauksiin. Varsinainen suosio ja laaja julkisuus alkoi kuitenkin vuonna 2022, kun OpenAI julkaisi GPT-3.5-kielimalliin (GPT =Generative Pre-trained Transformer) perustuvan ChatGPT -työkalun.
Tammikuussa 2023 Microsoft teki merkittävän sijoituksen OpenAI:hin. Myöhemmin tänä vuonna Microsoft alkoi tarjoamaan OpenAI:n ohjelmistoja suoraan Azure pilvipalvelustaan. Azuren OpenAI kyvykkyydet ovat vielä alkuvaiheessa koko tarjoamaa ajatellen, mutta niiden avulla on jo nyt mahdollista tehdä toimivia prototyyppejä ja testata mihin palvelut pystyvät. Prototyypit ja PoC tyyppiset harjoitteet tarjoavat arvokasta tietoa siitä, että mihin tuotteet pystyvät jo nyt ja mitä niillä on mahdollista tehdä lähitulevaisuudessa.
Tästä pääsemmekin varsinaiseen aiheeseen. Mitä jos yhdistämme Fabricin kyvykkyydet hakea, käsitellä ja varastoida dataa OpenAI:n GPT kielimalleihin? Miten Fabricia hyödyntäen voisimme rakentaa esimerkiksi yrityksen sisäistä teksti- tai dokumenttipohjaista dataa hyödyntävän avustajachatin? Kokosin tähän blogiartikkeliin tiiviisti eri vaiheet tietojen hakemisesta ja tallentamisesta Fabriciin, lähettämiseen Open AI:lle ja syöttämiseen GPT-mallille.
Tietojen noutaminen ja tallentaminen Microsoft Fabriciin
Tietojen hakeminen on mahdollista tehdä Fabricissa usealla eri tavalla. Fabric tarjoaa low-/nocode ratkaisuna Pipeline Copy aktiviteettia ja Dataflow Gen 2 ominaisuutta, joiden avulla tietojen haku onnistuu ilman koodin kirjoittamista. Lisäksi työkalupakista löytyy Spark pohjaiset Notebookit, mikäli low-/nocode työkalut eivät riitä. Low- ja nocode ratkaisut tarjoavat valmiita ratkaisuja kytkeytyä esimerkiksi yrityksen SQL Server tietokantaan tai Salesforce järjestelmään. Valmiit ratkaisut nopeuttavat kehitystä ja näin ollen laskevat kehityskustannuksia.
Tallennuspuolella Fabric tarjoaa myöskin useita eri vaihtoehtoja. Löytyy tietokantatyylistä Datawarehousea, abstraktimpaa Lakehousea ja jopa PowerBI:n oma Datamart on löytänyt tiensä Fabricin puolelle. Sopivan tallennusratkaisun valintaan voi käyttää Microsoftin tarjoamaa opasta. Itse suosittelen kuitenkin pysymään Lakehousen puolella, koska se tarjoaa kattavimmat ominaisuudet datan käsittelyyn. Mikäli SQL on ydinosaamistasi, niin silloin myös Datewarehouse voi olla käyttökelpoinen vaihtoehto.
Tietojen lähettäminen OpenAI:lle
Tämän artikkelin kirjoitushetkellä marraskuussa 2023 Azure OpenAI Studio ei vielä pysty käyttämään suoraan Fabricin tarjoamia tietovarastoja datalähteenä, vaan data pitää kuljettaa johonkin OpenAI:n ulottuville. Mielestäni helpoin tapa tehdä tämä on lähettää tiedot esimerkiksi Notebookin avulla Fabricista Azure Blob Storageen. Blob Storage on halpa ja helppokäyttöinen tietovarasto datalle ja se on mahdollista kytkeä suoraan OpenAI Studioon.
Tietojen syöttäminen GPT-mallille
Azure OpenAI Studion avulla pystymme syöttämään teksti-, pdf-, Powerpoint- ja Word -tiedostoja GPT-kielimallille. Tiedostot eivät saa olla liian isoja (pitkiä) ja niissä olevan tekstin tulee sisältää riittävästi kontekstia. Esimerkiksi luettelomainen teksti ei sovellu kielimallille, koska malli ei ymmärrä mistä luettelossa on kysymys. Kuvaavat tekstit, kuten käyttöohjeet ja määrittelydokumentit ovat parempaa dataa kielimallille. Fabricin puolella kannattaa lisätä kontekstia tekstidatan ympärille riittävästi, jotta datasta saadaan kielimallille soveltuvaa.
Otetaan yksinkertainen esimerkki konevalmistajan teksti- tai dokumenttipohjaisesta datasta. Mikäli data sisältää luetteloina varaosia ja varaosien numeroita:
- Telalaakeri, 1234, hylly 3 taso 2
- Hihnakiristin 5678, hylly 9 taso 1
Kannattaa aineistoon lisätä lisätietoja datasta:
- Varaosan nimi: Telalaakeri, Varaston hyllysijainti: hylly 3, Varaston hyllysijainnin taso: 2, Varaosan sarjanumero: 1234
- Varaosan nimi: Hihnakiristin, Varaston hyllysijainti: hylly 9, Varaston hyllysijainnin taso: 1, Varaosan sarjanumero: 5678
Lisätietojen avulla kielimallin on helpompi tulkita dataa ja löytää siitä hakijaa kiinnostavia kohteita. Tässä esimerkissä käyttäjä voisi kysyä chatissa: “Mikä varaosa on sarjanumerolla 1234?” GPT-malli pystyisi hakemaan tiedon ja vastaamaan chatissa käyttäjälle: “Varaosanumero 1234 on Telalaakerilla, joka sijaitsee varaston hyllyllä numero 3, tasolla 2.”
Organisaation omaa dataa hyödyntävä "avustajachat".
Tietomallin opettamisen jälkeen Azure OpenAI Studio tarjoaa valmiin työkalun ratkaisun julkaisemiseksi chat sivuna (www-sovellus). Lopputulosta on myös mahdollista testata suoraan Azure OpenAI Studion sisällä ennen julkaisua ja mallia pystyy tarvittaessa hienosäätämään esimerkiksi GPT parametrien osalta.
Tämä on yksi tapa rakentaa erilaisia organisaation sisäisiä “avustaja chateja” tai apupilotteja / copiloteja. Microsoft on Copilotin eli AI-avustajan tuomassa läpileikkaavasti kaikkiin tuotteisiinsa. Nähtäväksi jää, tuleeko copilot -termi asettumaan sanavarastoomme yhtä sujuvasti kuin excel tai teams.
Rohkeasti kokeilemaan
Fabricin kytkeminen Azure OpenAI Studioon ei ole vielä täysin mutkatonta. Tiedot eivät liiku Azure OpenAI:n ja Fabricin välillä, tai edes Fabricin sisällä täysin kitkattomasti. Nocode-työkalujen lisäksi apuun joutuu melko nopeasti ottamaan jonkin ohjelmointikielen (Python, Scala tai R). Fabricin työkalut kehittyvät kuitenkin huimaa vauhtia, joten odotettavissa on, että myös näiden järjestelmien välinen integraatio tulee jatkossa helpottumaan.
Tämän kokoluokan sovelluksen tekeminen ei ole kuitenkaan enää viikkojen asia nykyisilläkään työkaluilla, vaan puhutaan enemmänkin päivien työstä. Tästä syystä rohkaisenkin nyt pohtimaan, millaisia kokeiluja voisi lähteä tekemään ja oppimaan miten omaa dataa voisi vielä paremmin hyödyntää. Yhä parempia teknologiaratkaisuja tähän on nyt saatavilla.
Lisätietoja
Tagit
Liiketoimintaprosessi
BI ja raportointi | |
Tuotekehitys ja suunnittelu |
Erikoisosaaminen
Analytiikka | |
Big Data | |
Ohjelmistokehitys | |
Tekoäly (AI) ja koneoppiminen |
Teknologia
Azure | |
Microsoft |
Tarjonnan tyyppi
Konsultointi | |
Toteutustyö |
Adafy - Asiantuntijat ja yhteyshenkilöt
Adafy - Muita referenssejä
Adafy - Muita bloggauksia
It- ja ohjelmistoalan työpaikat
- Nordea - Senior Backend Developer, Nordea Finance
- Laura - Palveluvastaava, tietohallinto
- Laura - Fullstack kehittäjä
- Digia Oyj - Kafka Integration Developer
- Laura - Senior Full Stack Developer
- Laura - Full Stack Developer
- Laura - Kesätyöpaikat, Toiminnanohjausjärjestelmän kehitys, Millog Oy Tampere
Premium-asiakkaiden viimeisimmät referenssit
- Into-Digital Oy - S-Ryhmän rengasliiketoiminnan digitaalinen kauppapaikka
- Into-Digital Oy - Burger Kingin Whopperit, ravintolat, aukioloajat ja kampanjat verkossa
- Into-Digital Oy - Uusi Worldvision.fi viemään järjestön varainhankinta uudelle tasolle
- Netum Group Oyj - Radio- ja tv-museo Mastolassa opastaa kohta tekoälypohjainen asiakaspalvelija
- Netum Group Oyj - Peppi-järjestelmän ylläpito turvaa opiskelijoiden ja opettajien arjen sujuvuuden Lapin korkeakouluissa
- Into-Digital Oy - Suomalaisen työn uusi verkkopalvelu edistämään jäsenpalvelua ja -hankintaa
- Into-Digital Oy - LämpöYkkösen verkkopalvelu edistämään tuote-, ratkaisu- ja palvelumyyntiä
Tapahtumat & webinaarit
- 23.01.2025 - Generatiivisen tekoälyn hyödyt liiketoimintajohtajalle
- 29.01.2025 - Modern toolchain and AI breakfast seminar with Eficode, AWS and HashiCorp
- 30.01.2025 - 30.1.2025 | Webinaari: Tehokkaampaa tuotantoa teollisuusyritykselle Fellowmindin Manufacturing Template -ratkaisulla
- 30.01.2025 - Suuri Rahoitusilta
- 30.01.2025 - Open Future
- 29.01.2025 - SecD-Day event
- 05.02.2025 - Smart Commerce Nordic 2025
Premium-asiakkaiden viimeisimmät bloggaukset
- Into-Digital Oy - Onnistunut verkkopalvelu – millainen se on ja miten niitä tehdään?
- Into-Digital Oy - Miksi verkkosivusto kannattaa uudistaa nyt, eikä sitten joskus?
- Netum Group Oyj - ”Jatkuva release-show ei tunnu kovin upealta” – tietojärjestelmäprojektin julkaisuprosessin kehittäminen
- Netum Group Oyj - Jälkitunnelmia ja -ajatuksia Kuntamarkkinoilta
- Into-Digital Oy - Oletko tekemässä B2B-verkkosivua? Huomioi ainakin nämä asiat
- Netum Group Oyj - Ihmiskuntakeskeinen suunnittelu toimii kompassina digipalvelukehityksessä
- Netum Group Oyj - Vaikuttavaa vastuullisuutta
Digitalisaatio & innovaatiot blogimediaBlogimediamme käsittelee tulevaisuuden liiketoimintaa, digitaalisia innovaatioita ja internet-ajan ilmiöitä |