Obsah · Historie vývoje

Historie vývoje

Chronologický přehled projektu AI-MODE / AI-EXPO – co se kdy implementovalo, proč, a co vzniklo při ladění dokumentace 6. 7. 2026. Technické detaily jednotlivých fází aplikace jsou v kapitole Fáze implementace.

O datech: u červencových milníků jde o záznamy z interní dokumentace, statistik API a záznamů z vývoje. Fáze 1–8 vznikaly postupně před 2. 7. 2026 (bez denního deníku) – v časové ose jsou shrnuty pod červen 2026. Přesné dny u starších kroků lze doplnit, až budou k dispozici z git historie nebo nasazení u zákazníka.

  1. Jádro aplikace – fáze 1 až 8

    Proč: postupně sestavit hlasového průvodce pro veřejný kiosk – nejdřív funkční dialog (hlas → AI → TTS), pak bohatší vizuál, odolnost při chybách, druhý provider, idle prezentaci, přehled nákladů a jednotný vzhled bez úprav kódu u každé instituce.

    • Fáze 1 – základní SVG kiosk, Gemini, admin, omluvy, diagnostika (detail)
    • Fáze 2 – Rive, vertikální layout, výběr postav (detail)
    • Fáze 3 – stavy animace, teen/klasika omluvy, D-ID video (detail)
    • Fáze 4 – OpenAI jako druhý provider + TTS (detail)
    • Fáze 5 – idle režim – prezentace webů při nečinnosti (detail)
    • Fáze 6 – statistiky API, probe klíčů, nový layout adminu (detail)
    • Fáze 7 – barevné motivy napříč variantami (detail)
    • Fáze 8 – katalog Gemini, fallback modelů (detail)

    Doplňky ve stejném období: vícejazyčný kiosk (vlajky CS/EN/DE/PL/SK), varianta Live2D, komiksová bublina s groundingem, provozní profily (Mládež, Muzeum, Firma…).

  2. První měřené využití API

    Co: v lokálních statistikách (usage-stats) se objevují první záznamy chat/TTS/idle požadavků (Gemini, OpenAI).

    Proč: ověřit reálnou zátěž před nasazením u zákazníka a ladit idle režim a TTS na živém hardware.

  3. Návrh modulu deníčku uživatele

    Co: interní dokument docs/denicek-uzivatele-navrh.html – osobní deník (nákupy, autobus, finance) jako možné budoucí rozšíření kiosku.

    Proč: oddělit „průvodce po expozici“ od domácího asistenta; zatím jen návrh k diskusi, není součástí veřejného provozu exponátu.

  4. Znalostní báze exponátů v MySQL (fáze 9)

    Co: tabulka webcollab_exposition, admin katalog, AI sloupce, náhled generování po řádcích, function calling v chatu, tisk katalogu – dokumentováno v docs/znalostni-baze-exponatu-navrh.html.

    Proč: hlasový průvodce má odpovídat z ověřených dat muzea (číslo exponátu, název, sál), ne jen z obecné znalosti modelu – pilotně pro Velký svět techniky Ostrava (VSTO).

    Fáze 9 v návodu → · Znalostní báze →

  5. Dokumentace kiosku a kontrolní seznam

    Čas: cca 6:30–7:01

    Co a proč:

    • taskkill explorer.exe v autostart .bat – skrytí plochy Windows, aby návštěvník z kiosk prohlížeče neskončil na hlavním panelu (návod)
    • Přehled parametrů --kiosk – Chrome/Edge, autoplay pro TTS, co nepoužívat (--incognito bez uložení mikrofonu)
    • Syntaktické zvýraznění .bat – čitelnější návod pro instalátora
    • Rozepis kontrolního seznamu na technicke-server.php – server, kiosk, hlas, hlasitost, barge-in, D-ID před otevřením veřejnosti
    • Aktualizace klíčových slov a llms.txt – aby vyhledávače a LLM našly nové sekce
  6. Rozšíření diagnostiky check

    Čas: cca 7:06–7:22

    Co a proč:

    • Více polí v checkexhibit_ready, warnings, stav configu bez klíčů, MySQL, HTTPS, ?probe=1 pro síť – jedna URL místo ručního testování desíti věcí
    • Zkrácení MySQL hlášení – bez hostname a názvu DB ve veřejném JSON (bezpečnost na sdíleném hostingu)
    • Odkaz na diagnostiku v administraci – instalátor nemusí hádat URL
    • Oprava HTTP 500 – doplnění načtení config-storage v check po zavedení vlastního názvu configu

    Diagnostika v návodu →

  7. Doplnění návodu – idle, obsah, config

    Čas: cca 7:29–8:19

    Co a proč:

    • Příklady idle režimu – muzeum vs. veletrh, aby provozní věděl kdy zapnout (admin → idle)
    • Odkazy v obsahu návodu na idle a nevhodný obsah AI
    • Vysvětlení read-only configu – kiosk může běžet bez zápisu; zápis jen při údržbě
    • Rozhodnutí ponechat config ve souboru (ne migrace do MySQL) – MySQL jen pro katalog exponátů, citlivé klíče zůstávají v configu
  8. Kapitola zabezpečení a vlastní název configu

    Čas: cca 8:01–9:31

    Co a proč:

    • Nová stránka Zabezpečení provozu – HTTPS, kiosk, config ne ke stažení, kontrolní seznam; veřejný návod nesmí prozrazovat skutečné cesty ani názvy skriptů
    • Vlastní název configu v administraci – uživatel zvolí název (např. vas-config-xx); aplikace přesune JSON do skryté provozní složky
    • Implementace config-storage – ukazatel aktivního souboru jen ve skryté složce (ne zápis do kořene IIS) – po nasazení na serveru přestal fungovat zápis config-path v kořeni → přechod na .active-config
    • Rollback při selhání zápisu – aby přejmenování nerozbilo běžící provoz
    • Fiktivní názvy v návodu (provoz-xx7, endpointy bez .php) – veřejná dokumentace neusnadňuje útok skenerem URL
  9. Samostatný návod, tisk a úvodní box

    Čas: cca 9:34–11:06

    Co a proč:

    • Návod běží samostatně – složka manual/ s vlastní kopií potřebných PHP modulů (manual/app/), aby šel publikovat na AI-EXPO.eu bez celé instalace exponátu
    • Tisk obsah.php na jednu A4 – čtyři sloupce, plná výška stránky
    • Tisk koncept-monitor.php – mockup monitoru se znovu zobrazuje v PDF
    • Box Zabezpečení na úvodní stránce návodu – rychlý vstup do kapitoly před provozem
    • Stránka Historie vývoje (tato) – chronologie pro obchod i techniky
  10. Plánovaná rozšíření (fáze 10)

    Proč zatím ne: vyšší náklady, zakázková integrace, nebo závislost na API bez free trial.

    • Placené TTS bez fallbacku prohlížeče
    • Vlastní Rive postava na míru instituce
    • HeyGen full-body video – pouze placený vývoj na zakázku
    • Deníček uživatele – z návrhu 3. 7. 2026

    Detail fáze 10 →

Shrnutí: Do června 2026 vzniklo jádro exponátu (hlas, avatary, admin, idle, motivy, modely). 4. 7. 2026 přibyla znalostní báze v MySQL. 6. 7. 2026 intenzivní práce na dokumentaci nasazení, diagnostika, zabezpečení configu a samostatný veřejný návod připravený pro produkční kiosk.