AI nápad: hlídač veřejných zakázek pro české firmy s denním digestem do e-mailu
Veřejné zakázky jsou pro řadu českých firem stabilním zdrojem poptávky, ale jejich monitoring bývá roztříštěný, ruční a náchylný k chybám. Obchodník nebo bid manager často kontroluje několik portálů, hlídá termíny, přepisuje si klíčové informace do tabulek a až následně vyhodnocuje, zda má zakázka reálný obchodní potenciál. To je přesně typ práce, kde se AI vyplatí: ne tím, že nahradí rozhodnutí člověka, ale tím, že zkrátí čas mezi zveřejněním zakázky a interním vyhodnocením.
V tomto návodu postavíme praktický AI projekt pro českou firmu: systém, který pravidelně sbírá veřejně dostupná data o zakázkách, filtruje je podle oboru, regionu a hodnoty, pomocí jazykového modelu vytvoří stručné shrnutí a každý den odešle e-mailový digest relevantním lidem ve firmě. Nejde o akademický prototyp, ale o realistický interní nástroj, který lze nasadit během několika dnů až týdnů podle velikosti firmy a kvality vstupních dat.
Pokud si chcete srovnat, které AI nástroje dnes dávají smysl pro automatizaci a práci s textem, hodí se průběžně sledovat také rubriku AI nástroje na AIVýběr. Pro širší kontext automatizace ve firmách může být užitečná i sekce automatizace, kde najdete související postupy a scénáře využití.
Úvod

Typický problém v české firmě nevypadá tak, že by veřejné zakázky nikdo nesledoval. Spíš je sleduje několik lidí různě, každý po svém a bez jednotných pravidel. Jeden člověk hlídá profil zadavatele, druhý portál věstníku, třetí reaguje až na přeposlaný odkaz z obchodního týmu. Výsledkem je zpoždění, duplicity a nejasnost, kdo co vyhodnotil.
AI hlídač tento chaos řeší ve třech vrstvách. Za prvé centralizuje vstupy z relevantních zdrojů. Za druhé převádí nejednotné texty do jednotné struktury: kdo vypisuje, co poptává, za kolik, dokdy a proč je to pro firmu relevantní. Za třetí doručí výsledek ve formě, kterou lidé skutečně čtou, tedy jako krátký denní e-mail s prioritizovaným seznamem nových příležitostí.
Důležité je správně nastavit očekávání. Cílem není plně automatické rozhodování o tom, do které soutěže firma půjde. Cílem je zúžit informační šum a dodat obchodníkům, produktovým manažerům nebo vedení firmy kvalitní podklady ve stejnou dobu a ve stejné podobě.
Cíl projektu

Cílem projektu je vytvořit interní workflow, které každý pracovní den provede následující sekvenci:
- stáhne nové nebo změněné záznamy o veřejných zakázkách z vybraných zdrojů,
- normalizuje data do jednotné struktury,
- odfiltruje jen zakázky relevantní pro konkrétní firmu,
- pomocí AI připraví stručné a srovnatelné shrnutí,
- ohodnotí relevanci podle předem daných pravidel,
- odešle denní digest e-mailem konkrétním příjemcům.
Praktický výsledek: místo ručního procházení desítek záznamů dostane obchodní tým ráno e-mail se 3 až 10 zakázkami, které odpovídají oboru firmy, regionu, minimální hodnotě a typu plnění. U každé položky vidí termín, odhad relevance, stručné zdůvodnění a odkaz na původní zdroj.
Předpoklady

Než začnete stavět první automatizaci, ověřte si čtyři základní předpoklady.
- Máte jasně definovaný obchodní profil firmy. Nestačí říct „děláme IT“. Potřebujete seznam klíčových služeb, produktů, synonym, nežádoucích kategorií, cílových regionů a minimální hodnoty zakázky.
- Máte zvolené legální a technicky dostupné zdroje dat. Pracujte pouze s veřejně dostupnými informacemi a s oficiálními zdroji. V českém prostředí obvykle dává smysl začít od Věstníku veřejných zakázek nebo profilů zadavatelů, případně dalších otevřeně publikovaných zdrojů podle odvětví.
- Máte vybranou technickou platformu. Pro menší firmu stačí kombinace Pythonu, databáze PostgreSQL, plánovače úloh a e-mailové služby. Pro rychlý start lze část procesu automatizovat i v Make nebo Zapier, ale u většího objemu dat bývá robustnější vlastní backend.
- Máte vlastníka procesu. Ideálně obchodního garanta a technického správce. Bez toho systém časem začne posílat zbytečnosti nebo naopak opomene důležité zakázky.
Pro jazykové shrnutí a klasifikaci používejte jen reálné služby s jasnými podmínkami provozu. V praxi se nabízí například OpenAI API (https://platform.openai.com/) nebo Microsoft Azure OpenAI Service (https://azure.microsoft.com/products/ai-services/openai-service/), pokud potřebujete firemní správu a enterprise governance. Pro odesílání transakčních e-mailů dobře funguje například Resend (https://resend.com/) nebo SendGrid (https://sendgrid.com/).
Kroky realizace

Krok 1: Vymezte, co je pro firmu „relevantní zakázka“
Co a proč: Nejdřív musíte naučit systém obchodní logiku firmy. Pokud tento krok odfláknete, AI bude sice generovat pěkná shrnutí, ale nad špatně vybranými vstupy. Relevance je důležitější než samotná summarizace. Systém musí vědět, jaké kategorie zakázek chcete vidět, které naopak ignorovat, jaké regiony preferujete a kde leží minimální obchodní smysl.
Jak přesně: Vytvořte jednoduchý profil relevance v tabulce nebo YAML/JSON konfiguraci. Uveďte seznam klíčových slov, synonym, vylučujících výrazů, regionů, minimální odhadované hodnoty a preferovaných typů plnění. Přidejte i 20 až 50 historických zakázek, které firma skutečně řešila, a označte je jako „relevantní“ nebo „nerelevantní“. To později využijete pro ladění klasifikace.
Konkrétní vstup: Interní seznam služeb firmy: „kybernetická bezpečnost, SIEM, SOC, penetrační testy, audit ISO 27001“ plus regiony „Praha, Středočeský kraj, remote v ČR“.
Konkrétní výstup: Konfigurační soubor s poli include_keywords, exclude_keywords, regions, min_value_czk, preferred_buyers.
Metrika úspěšnosti: Alespoň 80 % historicky relevantních zakázek projde filtrem a alespoň 70 % zjevně nerelevantních zakázek systém vyřadí už v této fázi.
Jakmile máte obchodní definici relevance, můžete přejít ke sběru dat. Tady je důležité nezačít příliš široce. Lepší je jeden zdroj dobře zpracovaný než pět zdrojů napůl.
Krok 2: Zvolte zdroje dat a nastavte pravidelný sběr
Co a proč: Potřebujete spolehlivý přísun nových záznamů. Bez stabilního ingestu nebude fungovat nic dalšího. Veřejné zakázky se často liší strukturou, formátem i úplností. Proto je vhodné od začátku ukládat jak původní surový záznam, tak jeho později zpracovanou podobu.
Jak přesně: Vyberte 1 až 3 oficiální zdroje. U každého ověřte, zda poskytuje API, XML feed, RSS nebo alespoň stabilní HTML strukturu. Pokud API není k dispozici, používejte scraping opatrně, s respektováním podmínek zdroje a rozumnou frekvencí dotazů. V Pythonu lze sběr postavit například s knihovnami requests, httpx a BeautifulSoup. Každý záznam ukládejte se zdrojovým URL, časem stažení a hashí obsahu, abyste poznali změny.
Konkrétní vstup: URL feedu nebo seznam URL konkrétních profilů zadavatelů a pravidlo spouštění každý pracovní den v 6:00.
Konkrétní výstup: Tabulka raw_tenders s poli jako source_name, source_url, downloaded_at, raw_html nebo raw_xml, content_hash.
Metrika úspěšnosti: Úspěšnost stažení nad 95 % a nulová ztráta záznamů při opakovaném běhu ve zvoleném časovém okně.
Teď už data tečou dovnitř. Jenže v surové podobě jsou pro obchod i AI málo použitelné. Další krok je převést je do jedné srozumitelné struktury.
Krok 3: Normalizujte data do jednotného schématu
Co a proč: Každý zdroj popisuje zakázku trochu jinak. Někde je název zadavatele samostatné pole, jinde je schovaný v textu. Někde je termín podání nabídek explicitní, jinde je třeba ho dohledat v detailu. Pro filtrování, deduplikaci i pozdější AI zpracování potřebujete jednotný datový model.
Jak přesně: Navrhněte schéma s poli jako tender_id, title, buyer_name, description, cpv_codes, estimated_value_czk, submission_deadline, region, source_url, published_at. Nad každým zdrojem vytvořte parser, který tato pole naplní. U chybějících údajů ukládejte null, nevymýšlejte náhradní hodnoty. Současně zaveďte deduplikační logiku podle kombinace identifikátoru, URL a podobnosti názvu.
Konkrétní vstup: Surový XML záznam nebo HTML detail zakázky z předchozího kroku.
Konkrétní výstup: Tabulka normalized_tenders s jedním řádkem na jednu zakázku ve shodné struktuře napříč zdroji.
Metrika úspěšnosti: Vyplněnost klíčových polí title, source_url, buyer_name a submission_deadline alespoň u 90 % záznamů tam, kde jsou ve zdroji dostupná.
Jakmile máte jednotnou strukturu, nastává okamžik pro první skutečné zúžení objemu. Než zapojíte jazykový model, odstraňte vše, co firma zjevně nechce.
Krok 4: Udělejte pravidlové předfiltrování a skórování relevance
Co a proč: AI je dražší a pomalejší než jednoduchá pravidla. Proto dává smysl nejprve použít levný filtr na základě klíčových slov, CPV kódů, regionu, odhadované hodnoty a termínu. Tím snížíte počet kandidátů pro následnou AI analýzu a zároveň zlepšíte přesnost výsledku.
Jak přesně: Nad normalizovanými daty spočítejte základní skóre relevance. Například: +20 bodů za shodu s hlavní službou, +15 za preferovaný region, +10 za hodnotu nad zadaný práh, -30 za výskyt vylučujících výrazů, -20 za termín do 24 hodin. Pokud máte CPV kódy, využijte je jako silný signál. Nastavte práh, pod který se zakázka do AI pipeline vůbec nedostane.
Konkrétní vstup: Normalizovaný záznam zakázky a konfigurační profil relevance z kroku 1.
Konkrétní výstup: Pole rule_score, rule_reason a stav passed_to_ai=true/false.
Metrika úspěšnosti: Snížení objemu záznamů pro AI alespoň o 60 % při zachování minimálně 85 % skutečně relevantních zakázek.
Po pravidlovém filtru už vám zůstane menší a kvalitnější sada. Teď má smysl použít AI tam, kde skutečně přináší hodnotu: u vysvětlení, shrnutí a jemnější klasifikace.
Krok 5: Přidejte AI shrnutí a finální klasifikaci
Co a proč: Jazykový model pomůže převést dlouhý, často úřední text do stručného a srovnatelného formátu. Současně může odhadnout relevanci podle obchodního profilu firmy a vysvětlit, proč zakázka dává nebo nedává smysl. Klíčové je nenechat model volně fabulovat, ale vázat ho na konkrétní vstup a pevný výstupní formát.
Jak přesně: Do modelu posílejte jen nutný kontext: název zakázky, popis, zadavatele, termín, hodnotu, region a interní profil firmy. Prompt by měl mít jasné zadání: vrať JSON s poli summary_cz, fit_score_0_100, reasons_pro, reasons_against, recommended_team. Přidejte instrukci, aby model nevymýšlel informace, které nejsou ve vstupu. Výstup validujte proti schématu. Pokud validace selže, požadavek zopakujte nebo záznam označte pro ruční kontrolu.
Konkrétní vstup: Text detailu zakázky o rozsahu například 2 000 až 8 000 znaků plus firemní profil relevance.
Konkrétní výstup: Strukturované AI shrnutí: „Město Brno poptává dohledové bezpečnostní služby SOC na 48 měsíců; vysoká relevance pro firmu kvůli SOC a SIEM; rizikem je krátký termín a požadovaná reference ve veřejném sektoru.“
Metrika úspěšnosti: U alespoň 90 % záznamů vznikne validní strukturovaný výstup a lidské hodnocení označí shrnutí jako věcně použitelné minimálně v 85 % případů.
V této chvíli už systém umí vybrat a popsat relevantní zakázky. Zbývá je doručit tak, aby se s nimi ve firmě skutečně pracovalo.
Krok 6: Sestavte denní e-mailový digest
Co a proč: Nejlepší interní nástroj je ten, který lidé nemusí aktivně otevírat. E-mailový digest je jednoduchý, univerzální a snadno auditovatelný. Důležité je nepřehltit příjemce: digest má být krátký, prioritizovaný a čitelný i na mobilu.
Jak přesně: Každé ráno vyberte nové nebo změněné zakázky od posledního odeslání. Seřaďte je podle kombinace fit_score, hodnoty zakázky a blízkosti termínu. Do e-mailu dejte maximálně 10 položek a rozdělte je do sekcí „vysoká priorita“ a „ke zvážení“. U každé položky uveďte název, zadavatele, termín, stručné AI shrnutí, důvod relevance, odkaz na zdroj a interní štítek, komu to patří. Odesílání řešte přes specializovanou službu, ne přes firemní SMTP bez reputačního managementu.
Konkrétní vstup: Seznam AI vyhodnocených zakázek za posledních 24 hodin.
Konkrétní výstup: HTML e-mail s předmětem například „Veřejné zakázky – 6 nových relevantních příležitostí na úterý 14. 5.“
Metrika úspěšnosti: Doručitelnost nad 98 %, open rate interního digestu nad 60 % a alespoň 30 % položek otevřených přes klik na zdrojový odkaz.
Jakmile digest funguje, projekt je prakticky použitelný. Přesto má smysl přidat ještě jednu vrstvu: jednoduché ukládání zpětné vazby, díky které se systém zlepší v čase.
Krok 7: Přidejte zpětnou vazbu od obchodního týmu
Co a proč: Bez zpětné vazby nepoznáte, zda AI a pravidla opravdu pomáhají. Obchodní tým by měl umět jedním klikem označit, že zakázka byla relevantní, nerelevantní nebo duplicitní. Tato data pak využijete pro úpravu pravidel i promptů.
Jak přesně: Do e-mailu nebo interního přehledu přidejte tři odkazy či tlačítka: „relevantní“, „nerelevantní“, „řešíme“. Každé kliknutí uložte s ID zakázky, uživatelem a časem. Jednou týdně vyhodnoťte nejčastější důvody chyb: špatná klíčová slova, příliš široký region, falešná shoda v názvu, halucinace ve shrnutí, špatné čtení hodnoty nebo termínu.
Konkrétní vstup: Hodnocení obchodníka u 20 digestů během měsíce.
Konkrétní výstup: Dataset lidské zpětné vazby a seznam doporučených úprav konfigurace.
Metrika úspěšnosti: Každý týden získáte zpětnou vazbu alespoň k 20 % rozeslaných položek a přesnost relevance roste měsíc od měsíce.
Tím je základní implementace hotová. Následuje ověření, že systém funguje nejen technicky, ale i obchodně.
Testování
Testování rozdělte do tří vrstev.
1. Technické testy parserů a workflow. U každého zdroje si uložte reprezentativní vzorky dat a napište testy, které ověří správné vytažení názvu, termínu, zadavatele a URL. Pokud se změní HTML struktura zdroje, test to odhalí dřív, než si toho všimne obchodník.
2. Test relevance na historických datech. Vezměte 100 až 300 starších zakázek a porovnejte výstup systému s tím, co by jako relevantní označil člověk. Sledujte precision a recall. Pro interní hlídač bývá praktičtější upřednostnit vyšší precision: je lepší poslat méně položek, ale kvalitních.
3. Uživatelské testování digestu. Pošlete digest 3 až 5 lidem z obchodu a ptejte se na jediné: šetří to ráno čas a vede to k rychlejšímu rozhodnutí? Pokud ne, problém nebývá v modelu, ale ve formátu výstupu nebo špatném řazení priorit.
Doporučené metriky pro pilotní provoz:
- precision relevance nad 70 %,
- recall nad 80 % na cílovém vzorku,
- průměrný čas od zveřejnění do interního digestu do 4 hodin u pracovních dnů,
- méně než 5 % duplicit v digestu,
- spokojenost uživatelů alespoň 4 z 5.
Nasazení
Pro malé a střední firmy je rozumný tento postup nasazení:
- Pilot na jednom oddělení. Spusťte digest jen pro obchod nebo bid management, typicky na 2 až 4 týdny.
- Omezený počet zdrojů. Začněte jedním hlavním zdrojem a až po stabilizaci přidávejte další.
- Jasný provozní režim. Definujte, kdo řeší výpadek sběru dat, kdo upravuje filtry a kdo schvaluje změny promptu.
- Monitoring a logování. Sledujte počet stažených záznamů, počet vyfiltrovaných položek, chybovost AI volání, dobu běhu a doručení e-mailů.
- Bezpečnost a compliance. Ukládejte jen to, co potřebujete. Pokud do systému přidáte interní poznámky nebo citlivé obchodní komentáře, nastavte přístupy a retention policy.
Technicky se osvědčuje provoz v Docker kontejnerech s denním plánováním přes cron nebo orchestrace typu GitHub Actions, pokud jde o menší objem, případně cloudové joby v Azure nebo AWS. Databáze PostgreSQL je pro tento typ projektu dostatečná a dobře auditovatelná.
Limity
Každý podobný projekt má své hranice a je lepší je přiznat rovnou.
- Neúplná nebo nekonzistentní data. Některé zdroje neobsahují všechny důležité údaje. AI je nedokáže spolehlivě „dopočítat“, pokud ve vstupu nejsou.
- Změny struktury zdrojů. U HTML scrapingů je třeba počítat s údržbou parserů.
- Halucinace modelu. Proto musí být AI výstup vždy navázaný na konkrétní text a validovaný proti struktuře.
- Falešně pozitivní i falešně negativní výsledky. Zejména u obecných názvů služeb nebo víceoborových zakázek.
- Právní a provozní limity zdrojů. Ne každý web je vhodné stahovat agresivně. Vždy respektujte podmínky a technické limity provozovatele.
Dobré rozhodovací pravidlo zní: AI hlídač je systém pro předvýběr a prioritizaci, nikoli náhrada obchodního úsudku nebo právního posouzení zadávací dokumentace.
FAQ
Je tento projekt vhodný i pro menší firmu do 50 zaměstnanců?
Ano. Právě menší firma často nejvíc ocení úsporu času. Začněte s jedním zdrojem, jednoduchým filtrem a jedním denním digestem pro 2 až 3 lidi.
Jaký je minimální technický stack?
Python, PostgreSQL, plánovač úloh, e-mailová služba a API k jazykovému modelu. Pro pilot není nutná složitá infrastruktura.
Kolik stojí provoz?
Záleží na objemu záznamů a počtu AI volání. Pokud nejdřív dobře odfiltrujete data pravidly, náklady na model zůstanou nízké. Největší položkou bývá spíš počáteční implementace a údržba parserů.
Lze to provozovat bez AI modelu?
Ano, ale dostanete jen seznam vyfiltrovaných zakázek bez kvalitního shrnutí a jemnější prioritizace. Pro mnoho firem může být i to užitečný první krok.
Má smysl jemné doladění modelu?
Ve většině případů ne na začátku. Nejprve zlepšete vstupní data, pravidla relevance, prompt a sběr zpětné vazby. To obvykle přinese větší efekt než fine-tuning.
Jak často posílat digest?
Standard je jednou denně ráno. Pokud firma soutěží ve velmi rychlých řízeních, můžete přidat i polední souhrn nebo alert pro zakázky s vysokou prioritou a krátkým termínem.
Závěr
AI hlídač veřejných zakázek je přesně ten typ interního projektu, který má rychlou návratnost a zároveň nepřehání sliby. Nepotřebujete stavět složitého autonomního agenta. Stačí poctivě zvládnout sedm kroků: vymezit relevanci, spolehlivě sbírat data, normalizovat je, předfiltrovat pravidly, přidat AI shrnutí, doručit výsledek v denním e-mailu a průběžně sbírat zpětnou vazbu.
Pokud to uděláte v tomto pořadí, dostanete systém, který obchodníkům zkrátí rutinní práci, vedení firmy dá lepší přehled o nových příležitostech a bid týmu umožní reagovat dřív. A to je u veřejných zakázek často rozdíl mezi promarněnou příležitostí a včas podanou nabídkou.
Doporučený AI stack pro realizaci
Vyber si nástroje podle rozpočtu a úrovně automatizace. Níže je přímý přehled služeb pro realizaci projektu.
| Služba | Popis služby | Nabídka |
|---|---|---|
| NordVPN | VPN služba pro ochranu soukromí a bezpečné připojení. | Otevřít nabídku |
| Semrush | SEO a marketingová platforma pro analýzu a růst návštěvnosti. | Otevřít nabídku |
| Make | Pokročilá vizuální automatizace workflow a integrací. | Otevřít nabídku |
| Hostinger | Webhosting a domény pro rychlé spuštění webu. | Otevřít nabídku |
| Fiverr | Marketplace pro freelancery a externí specialisty. | Otevřít nabídku |
| Adobe | Kreativní nástroje pro grafiku, video a digitální obsah. | Otevřít nabídku |
| Canva | Online design nástroj pro grafiku, prezentace a sociální sítě. | Otevřít nabídku |
| Jasper | AI nástroj pro marketingové texty a obsahové kampaně. | Otevřít nabídku |
Poznámka: U uvedených služeb používáme affiliate odkazy. Pokud přes ně provedete nákup, můžeme získat provizi bez navýšení ceny pro vás.
Odkazy v článku
- OpenAI
- NordVPN
- https://azure.microsoft.com/products/ai-services/openai-service/
- https://resend.com/
- https://sendgrid.com/
Zdroje ilustracnich obrazku
Vlastni ilustracni obrazek byl vytvoren pomoci OpenAI Images API.




