Zpět na domů

Multiagentní systém sémantiky s ansáblem

Systém automatizuje sběr a klasterizaci klíčových slov s použitím Bukvarix/XMLRiver, Fuzzy Dedup, NLP + SERP Veto. Multiagentní ansámbel DeepSeek zajišťuje 85 % stabilitu filtrování. Pipeline zpracovává 3000 klíčů za 20–30 min.

Od skriptu k multiagentnímu systému sémantiky
Advertisement 728x90

Multiantenní systém automatizace semantického jádra s aneb výsledkem hlasování

Skript řeší úkol automatického sběru semantiky: zadání masky, získání frekvence, export do tabulky. Nahrazuje rutinní cyklus Wordstat → Excel. Využívá dva zdroje dat: bezplatné API Bukvarix pro široký seznam synonym (zpoždění o několik měsíců) a placené XMLRiver pro reálný čas přes proxy k Yandex XML (bez captcha).

XMLRiver podporuje tři typy frekvencí:

  • Základní: rekonstrukce bytů → 45 661
  • Přesná: "rekonstrukce bytů" → 12 340
  • Upravená: [!rekonstrukce !bytů] → 8 912

Dotazy paralelně na 10 vláknech s logikou opakování. Heuristika konkurence podle vzorce: score = (počet slov * 1000) / (frekvence + 1). Výsledek: 🟢 LEHCE (>50), 🟡 STŘEDNĚ (10–50), 🔴 TĚŽKÉ (<10).

Google AdInline article slot

Optimalizovaný pipeline zpracování klíčových slov

Přímý přístup na 3000+ klíčových slov není efektivní: duplicitní SERP dotazy. Pipeline filtrován postupně:

  • Sběr: Bukvarix nebo XMLRiver → ~3000 klíčových slov.
  • Regex Shield: odstranění šumu (inzeráty, Avito, útržky).
  • Fuzzy Dedup: lemmatizace pomocí pymorphy2 + rapidfuzz (token_sort_ratio ≥82 %, seskupení podle prvního slova) → ~1500–2000 unikátních.
  • Sběr SERP: 10 vláken na unikátní klíčová slova.
  • Klastrování: NLP + SERP Veto.
  • Intent a metriky.

Prahová hodnota 82 % byla zvolena empiricky: odstraňuje 30–40 % duplikátů (morfologie), ale nesplétá „rekonstrukce bytu cena“ a „rekonstrukce bytu“.

Klastrování s SERP Veto

SentenceTransformers (paraphrase-multilingual-MiniLM-L12-v2) pro vektorizaci. Problém NLP: semanticky blízká klíčová slova (např. „rekonstrukce bytů Moskva“ / „rekonstrukce bytů Voronež“) se nepodílejí na soutěži.

Google AdInline article slot

SERP Veto: TOP-10 Yandexu, průnik URL <2 → různé klastery:

overlap = len(urls_core.intersection(urls_cand))
if urls_core and urls_cand and overlap < 2:
    continue  # různé klastery

Režimy:

  • Pouze NLP: vektorové výstupy, rychle.
  • Pouze SERP: podle URL, přesně, pomalu.
  • Hybridní: NLP + Veto, optimálně.

Geografická izolace: klíčová slova z různých měst se neskupují.

Google AdInline article slot

Multiantenní AI-filtrace s aneb výsledkem hlasování

LLM (DeepSeek) klasifikuje: vhodné / nevhodné / minus / zkontrolovat. Problematika: nestabilita (38 % stabilních při 3 bězích), chybí kontext oboru.

PlannerAgent

Generuje oborově specifický plán: few-shot, příklady, geofiltr.

Příklad:

  • VHODNÉ: «rekonstrukce bytů pod klíč moskva».
  • NEVHODNÉ: «práce rekonstrukce bytů».

Optimalizace tokenů

ID-numerační systém: model vrací pouze ID, nikoli text. Batcher 20 klíčových slov: ~80 tokenů místo 400.

Ensemble Voting

3 paralelní běhy (temperature=0), většinové hlasování (prah 2/3). Remíza → ArbiterAgent.

def single_vote(_):
    response = ai_client.call(system_prompt, user_message, temperature=0)
    return ai_client.parse_json(response)

with ThreadPoolExecutor(max_workers=votes) as vote_pool:
    vote_results = list(vote_pool.map(single_vote, range(votes)))

counts = Counter(votes_for_keyword)
threshold = votes // 2 + 1

Výsledek: stabilita ~85 %. Cena: $0,3 za 3000 klíčových slov.

Paranoidní režim: Whitelist (tokeny, ne substring) pro značky – přeskočí AI.

Další moduly

SERP-modul: parsování organického výsledku, souvisejících dotazů, reklamy, neuronových odpovědí.

AI-asistent: chat s pandas.query() nad dataframem.

Co je důležité

  • Pipeline snižuje počet SERP dotazů z 3000 na 1500 díky Fuzzy Dedup (rapidfuzz + pymorphy2).
  • Hybridní klastrování kombinuje rychlost NLP a přesnost SERP Veto.
  • Ensemble 3x zvyšuje stabilitu AI-filtrace na 85 %.
  • Úspora tokenů: ID-numerace + batch → $0,3 za kompletní běh.
  • Čas zpracování: 20–30 minut místo 3–4 hodin ručně.

Technologický stack: Python 3.11, DeepSeek API, XMLRiver, SentenceTransformers, rapidfuzz, pymorphy2, pandas, customtkinter.

— Editorial Team

Advertisement 728x90

Číst dál