# Munkáink: amit építettünk

A Mesterséges Intelligencia Központ Kft. budapesti szoftverfejlesztő cég. Amit építettünk: vállalatirányítási rendszert számlázással és CRM-mel, jogi iratokat álnevesítő programot, adatszinkronizálót, iskolai laptopflotta-kezelőt és 3D-s játékot élő AI-kommentátorral.

Minden itt leírt rendszer létezik és működik; ahol még üzembe állítjuk, azt jelezzük. Az ügyfeleink és a termékek nevét nem közöljük. Ha olyan rendszerre van szüksége, amilyen itt nem szerepel, az oldal végén azt is felsoroljuk, mit építünk még.

## Vállalatirányítási rendszer számlázással és CRM-mel

**Kihívás.** Egy magyar kis- és középvállalat napi munkája jellemzően szétszórt eszközökben él: táblázatokban, levelezésben, külön számlázóban és banki felületen. A cél egyetlen rendszer volt, amely a cég saját folyamataira épül, és amelyet több szervezet is használhat úgy, hogy egymás adatait nem látják.

**Megoldás.** Moduláris, több ügyfélszervezetet kiszolgáló vállalatirányítási rendszert (ERP) fejlesztünk:

- naptár, feladatok és jóváhagyások, háttérben futó munkák;
- körlevél és beépített postafiók a meglévő levelezőfiókokhoz;
- értékesítés és CRM, beszerzés, oktatásszervezés, és HR az önéletrajzok mesterséges intelligenciával segített elemzésével;
- pénzügy: kimenő és bejövő számlák, bank, utalási csomagok, bérszámfejtés és főkönyv;
- kimutatás és grafikon minden táblázatból, és egy oldalt dokkolt, hanggal is vezérelhető AI-asszisztens.

A számlázás a NAV-nak jelentett számlát a számlázóprogramon keresztül állítja ki, PDF-előnézettel és sztornóval. A banki egyeztetés a befizetést a közlemény, a számlaszám vagy a fizető bankszámlaszáma alapján párosítja a számlához, és a befizetést visszaírja; a NAV-tól érkező bejövő számlák jóváhagyás után utalási csomagba kerülnek.

A CRM-modulban a partnerek láncba szervezhetők, a kapcsolattartóknak döntési szerepük van, az értékesítési folyamatok kanbantáblán haladnak, a szakaszváltások visszakereshetők, a teendőkhöz emlékeztető tartozik, a partner idővonalát mesterséges intelligencia foglalja össze, és a levelezés meg a naptár a partnerhez szinkronizálódik.

Egy belépéssel minden modul elérhető: a központi azonosítás jelszóval, Google-, Microsoft-, Apple- és GitHub-fiókkal, kétlépcsős belépéssel működik, szervezetekkel, meghívókkal és jogosultságokkal.

**Eredmény.** A rendszer két szervezetnél élesben fut; a számlázás éles, a CRM-modul bevezetés alatt áll. A tapasztalatot az [üzleti szoftverek](https://www.mestersegesintelligenciakozpont.hu/hu/szolgaltatasok/uzleti-szoftverek) fejlesztésében kamatoztatjuk.

## Dokumentum-anonimizáló jogi iratokhoz

**Kihívás.** Egy szerződést, beadványt vagy ítéletet gyakran meg kellene osztani, vagy mesterséges intelligenciával feldolgozni, de személyes adat nem kerülhet ki. A kézi kitakarás lassú, és könnyű benne hibázni: egy név ragozva, monogramként vagy aláírásként is előfordul.

**Megoldás.** Teljesen a saját gépen futó Windows-alkalmazás, amely a magyar jogi iratokat (PDF és Word) álnevesíti:

- az érintettek nevének minden alakját megtalálja: a ragozott, a leánykori és a házassági nevet, a monogramot, a nagybetűs aláírást és az e-mail-címben szereplő nevet;
- a többi nevet, szervezetet és címet helyben futó, magyar névfelismerő modell keresi meg, amely a mérésünkben 10–13 ponttal pontosabb volt a generatív modelleknél;
- négyféle cserét kínál, köztük bírósági szerepcímkéket és sorszámozott jelölőket, mentés előtt pedig ellenőrző lapot mutat;
- a fájlt formátumtartóan írja újra, a fejléccel, a lábjegyzettel, a megjegyzésekkel és a metaadatokkal együtt.

**Eredmény.** A kész fájlt egy második programkönyvtár újra átnézi, és ha egyetlen eredeti név is megmaradt, a program nem ment. Az alkalmazás telepíthető, az adat a gépet nem hagyja el.

## Böngészős 3D-s játék élő AI-kommentátorral

**Kihívás.** Egy céges honlap általában elmondja, hogy a cég ért a mesterséges intelligenciához, mi viszont meg akartuk mutatni. A játéknak kiállítási standon és a honlapon is működnie kellett, olyan üzleti látogatóknak, akik nem játékosok: tanulás, regisztráció és startgomb nélkül. Az AI-nak pedig játék közben valóban a játékosra kellett reagálnia, nem előre megírt mondatokat sorsolnia.

**Megoldás.** Végtelen futójátékot építettünk, amelyben a játékos maga a T-rex. A jelenetet a WebGL rajzolja valós időben, three.js-szel, a böngészőben; az irányítás egyetlen gomb. A játék a fontos pillanatokat (életvesztés, rekord, szintlépés, új táj, átugrott szakadék) összefoglaló jelentésben küldi el az AI-asszisztensünknek, amely nagy nyelvi modellre épül, és ebből élőben szól a játékoshoz. Az asszisztens csak beszél: a játék állásába nem szól bele.

**Eredmény.**

- A nagy pillanatokra a kommentár nagyjából 1–2 másodperc alatt megjelenik.
- Az AI-asszisztensünk 14 nyelven beszél, mindig a játékos nyelvén, és minden nyelven magáz.
- A játékos begépelt kérdésére mindig válaszol, a futam végén pedig legalább két számmal összegzi a kört.
- Asztali gépen és telefonon ugyanaz a játék fut.
- A játék élesben működik: a [főoldalunkon](https://www.mestersegesintelligenciakozpont.hu/hu/) bárki kipróbálhatja.

Ugyanezt a tudást visszük a [játékfejlesztési](https://www.mestersegesintelligenciakozpont.hu/hu/szolgaltatasok/jatekfejlesztes) és az [AI-chatbot- és AI-ügynök-fejlesztési](https://www.mestersegesintelligenciakozpont.hu/hu/szolgaltatasok/ai-chatbot-es-ai-ugynok) munkáinkba.

## AI-alapú grafikai gyártósor a játék világához

**Kihívás.** Egy játékhoz sok, egységes stílusú grafikai elem kell: fák, bokrok, sziklák, tájak, akadályok. Mindegyiknek valódi méretarányban, átlátszó háttérrel és pontos körvonallal kell elkészülnie, mert a játék ütközésvizsgálata is erre épül. Kézzel ez lassú, egy egyszerű képgenerálás pedig nem ad egységes stílust és méretet.

**Megoldás.** Az adminfelületünkbe hatlépéses gyártósort építettünk:

1. **Megrendelés:** a téma rövid leírása.
2. **Terv:** egy nyelvi modell megírja a világ tervét (hangulat, színpaletta, időjárás, a tárgyfajták és a rajzutasítások).
3. **Stíluslapok:** kiválasztott mintaképek rögzítik a stílust és a méretarányt; a rajzoló ezeket referenciaként kapja.
4. **Rajzolás:** generatív képmodell rajzolja meg a tárgyakat, fajtánként egy lapon, több lapot párhuzamosan; a gép a lapot tárgyanként kivágja, ellenőrzi az átlátszóságot és a teljes körvonalat, a tervezett magasságra méretez, a palettára illeszti a színeket, és normáltérképet készít a játék fényeihez.
5. **Válogatás:** az elfogadásról ember dönt.
6. **Kiadás:** csak a kiadott kép kerül a játékba.

Egy ütemező a mentett megrendelést a megadott időablakban, előre beállított AI-híváskereten belül magától legyártja; a válogatás és a kiadás ilyenkor is kézi.

**Eredmény.** A játék tájai és akadályai ezen a gyártósoron készültek. Egy akadály rajza, ikonja és ütközési formája ugyanabból a gyártási adatból származik: az ütközés a kép pixelpontos körvonalát követi. Emberi jóváhagyás nélkül semmi nem kerül a játékba.

## Funkciópontos méretmérés mesterséges intelligenciával

**Kihívás.** Egy szoftverajánlat annyit ér, amennyire pontos a mögötte álló becslés. Az óraszám-becslés a becslőn és a csapaton múlik, ezért két ajánlat nehezen vethető össze, és a megrendelő nem látja, mire kér árat a fejlesztő.

**Megoldás.** A fejlesztés funkcionális méretét COSMIC funkciópontban mérjük (ISO/IEC 19761). A módszer az adatmozgásokat számolja: a bevitelt (Entry), a kivitelt (Exit), az olvasást (Read) és az írást (Write). Mindegyik egy funkciópont, így a méret független a technológiától és attól, ki fejleszt. A méréshez saját, AI-támogatott munkafolyamatot építettünk:

- a fejlesztést funkciócsoportokra bontjuk, és mindegyiket egységes sablonnal írjuk le: cél, szereplők, adatok, funkciók, AI-funkciók, és ami nem része;
- minden funkciócsoportot több nyelvi modell, többször számol meg; a futások közös szótárt építenek a szereplők és az adatok neveiből, a szórásuk pedig a bizonytalanságot mutatja;
- egy egyeztető kör gondoskodik arról, hogy minden funkcionális folyamat pontosan egyszer számítson a projektben, akkor is, ha több leírásban szerepel;
- a meglévő rendszert külön írjuk le, így a méretbe csak az új rész számít bele;
- a mérés azt is jelzi, amit a funkcionális méret nem fejez ki: egyedi felület, grafika, valós idejű működés, összetett algoritmus, adatátköltöztetés, nem funkcionális követelmény;
- a gépi összevonásokat kézzel felül lehet bírálni, a kész mérés pedig változtathatatlan változatként rögzíthető, és ez lesz a szerződés alapja.

**Eredmény.** Az ajánlat és az ütemterv a mért méretből készül, és két ajánlat ugyanazon a mércén vethető össze. A méret nem érzésre adott becslés, hanem tételesen visszakövethető lista: melyik folyamat, milyen adatmozgásokkal, hány funkciópontot ad. Az árazás módszeréről az [Árazás](https://www.mestersegesintelligenciakozpont.hu/hu/arazas) oldalon írunk.

## Adatszinkronizáló MS SQL-ből felhős PostgreSQL-be

**Kihívás.** Egy cég saját szerverén futó MS SQL adatbázisának adatait egy felhős rendszerbe kellett eljuttatni (új alkalmazáshoz és kimutatásokhoz), úgy, hogy a forrásrendszert ne terhelje, és semmit ne írjon bele.

**Megoldás.** Windows-szolgáltatásként futó program, amely csak olvasási joggal dolgozik:

- táblánként a legolcsóbb változásfigyelést választja, a törléseket pedig a kulcsok összevetésével találja meg;
- a változásra 1–3 másodpercen belül reagál, a cél adatbázis szerkezetét maga hozza létre, és követi a változásait;
- az érzékeny oszlopok kizárhatók, a sávszélesség korlátozható, éjszaka egyeztet, és sorszám-jelentést ad;
- egyetlen telepítővel áll üzembe, a hozzáférési adatokat titkosítva tárolja.

**Eredmény.** A működését automatikus tesztek és valódi MS SQL- és PostgreSQL-próbakörnyezet ellenőrzi. Ha több rendszert kell összekötni, a [folyamatautomatizálás](https://www.mestersegesintelligenciakozpont.hu/hu/szolgaltatasok/folyamatautomatizalas) is ilyen munka.

## Laptopflotta-kezelő iskoláknak

**Kihívás.** Nagyjából száz Windows-os iskolai laptop több telephelyen, tartomány és eszközkezelő rendszer nélkül: a szoftverek telepítése, a frissítés és a fiókok rendben tartása gépenként, kézzel ment.

**Megoldás.** Saját flottakezelő rendszert építettünk:

- a gépeken futó ügynök csak kifelé kapcsolódik, a központi szerver webes felületről kezelhető, és minden gépről leltárt vezet;
- a parancsok szakaszosan jutnak ki a gépekre, vészleállítóval és naplóval;
- szoftverkatalógusból telepít és távolít el, és jelzi, melyik gép tért el az előírt állapottól;
- egységes helyi fiókokat és tárolt rendszergazdai jelszavakat kezel, és önmagát is szakaszosan frissíti, hiba esetén automatikus visszaállással.

**Eredmény.** A flotta ezzel működik. A Windows 11-re váltásról is mérés alapján döntöttünk: a gépeken lefuttatott teljesítménytesztek eredménye szerint.

## AI-tesztelők webalkalmazásokhoz

**Kihívás.** Egy webalkalmazás minden változás után újratesztelendő, a kézi tesztelés pedig lassú és ismétlődő.

**Megoldás.** AI-ügynökök valódi böngészőben járják végig a megadott webalkalmazásokat, gépi és akadálymentességi ellenőrzéssel kiegészítve. A talált hibát ember hagyja jóvá, és csak ezután lesz belőle hibajegy; az ügynökök a jóváhagyási döntésekből tanulnak. A futás ütemezhető, és csak a megváltozott részeket nézi újra; a lapokat telefonos nézetben is ellenőrzi.

**Eredmény.** Belső eszközként fut, saját fejlesztéseink tesztelésére.

## Felvételi teszt az AI-val dolgozó munkatársaknak

Saját felvételinkhez félórás online tesztet építettünk, amely azt méri, hogyan dolgozik a jelentkező a mesterséges intelligenciával. Négy időzített része van: hibakeresés egy szándékosan hibás bemutató-alkalmazásban, beszélgetés egy mesterséges intelligencia által játszott ügyféllel, gondolkodási feladatok és egy kísérlet ismeretlen működésű rendszerrel. A válaszokat az AI előértékeli, a döntést ember hozza; a jelentkezők adatait megőrzési idővel, exporttal és törléssel, a GDPR szerint kezeljük.

## Kisebb saját fejlesztések

- **Diktálóprogram:** Windowson és macOS-en bármelyik alkalmazásba gépel beszédből; a beszédfelismerés a gép videokártyáján, helyben fut.
- **Plakátkampány-ellenőrzés:** a kihelyezett plakátot a munkatárs fotója és helyadata igazolja, térképes áttekintéssel.
- **Gyűjtőkártya-kezelő:** a kártyát a telefon kamerája ismeri fel képegyeztetéssel és szövegfelismeréssel, a gyűjtemény és a paklik egy helyen kezelhetők.
- **Korábbi honlapunk:** egy AI-ügynök minden látogatónak élőben átrendezte az oldal megjelenését, egy másik pedig beszélgetett vele, hangbevitellel is.
- **Ez a honlap a keresőknek és az AI-asszisztenseknek:** 14 nyelven, minden lap Markdown-változatával, gépi cégadattal és nyelvi változatokat jelölő oldaltérképpel.

## Ilyet is építünk

Az alábbiak nem elkészült munkák, hanem olyan rendszerek, amelyeket szívesen megépítünk:

- dokumentumok (számlák, szerződések, szállítólevelek) adatainak kiolvasása mesterséges intelligenciával: [AI-integráció](https://www.mestersegesintelligenciakozpont.hu/hu/szolgaltatasok/ai-integracio);
- ügyfélszolgálati chatbot vagy AI-ügynök, amely a cég saját dokumentumaiból válaszol: [AI-chatbot és AI-ügynök](https://www.mestersegesintelligenciakozpont.hu/hu/szolgaltatasok/ai-chatbot-es-ai-ugynok);
- webshop egyedi árazással és a vállalatirányítási rendszerhez kötve: [Webshop-fejlesztés](https://www.mestersegesintelligenciakozpont.hu/hu/szolgaltatasok/webshop-fejlesztes);
- iOS- és Android-alkalmazás háttérrendszerrel és adminfelülettel: [Mobilalkalmazás](https://www.mestersegesintelligenciakozpont.hu/hu/szolgaltatasok/mobilalkalmazas-fejlesztes);
- márkajáték és interaktív élmény kiállításra vagy honlapra: [Játékfejlesztés](https://www.mestersegesintelligenciakozpont.hu/hu/szolgaltatasok/jatekfejlesztes).
