AI agenti sú zásadne odlišní od chatbotov. Chatbot čaká na vstup používateľa a odpovedá. Agent sleduje ciele autonómne, volá nástroje, uvažuje o problémoch a vykonáva akcie bez ľudského vstupu v každom kroku.
Toto rozlíšenie je dôležité, pretože agenti dokážu automatizovať celé workflowy. Agent na kvalifikáciu leadov skóruje potenciálnych zákazníkov, obohacuje ich dáta a priraďuje ich obchodným zástupcom – všetko bez ľudského zásahu. Agent na triedenie obsahu kategorizuje tikety podpory, smeruje ich k špecialistom a eskaluje hraničné prípady k ľuďom.
V tejto príručke sa naučíte, ako navrhovať spoľahlivých agentov, integrovať ich s podnikovými systémami, predchádzať bežným zlyhaniam a merať ich dopad. Prejdeme reálne vzory používané v produkcii vo firmách, ktoré automatizujú kvalifikáciu leadov, spracovanie dokumentov a zákaznícku podporu vo veľkom meradle.
Čo sú AI agenti a v čom sa líšia od chatbotov?
Definícia AI agentov (autonómne systémy, ktoré vnímajú, rozhodujú, konajú)
AI agent je softvérový systém, ktorý:
- Vníma svoje prostredie (číta vstupy, výsledky nástrojov, pamäť)
- Uvažuje o najlepšej akcii (používa LLM na plánovanie)
- Koná volaním nástrojov alebo krokmi smerom k cieľu
- Prispôsobuje sa na základe spätnej väzby a výsledkov
Agenti sú zameraní na cieľ. Vy definujete cieľ (“Oskóruj a kvalifikuj tento lead”) a agent príde na to, ako ho dosiahnuť.
Kľúčový rozdiel: chatboty sú reaktívne; agenti sú autonómni
Chatboty: používateľ iniciuje → model odpovedá
User: "What's the status of my order?"
Chatbot: [Looks up order, responds]
User: "Can you cancel it?"
Chatbot: [Cancels order, responds]
Každú interakciu riadi používateľ. Chatbot je bez stavu – každá správa je nezávislá.
Agenti: zameraní na cieľ, vykonávajú akcie bez vstupu používateľa v každom kroku
Agent goal: "Qualify and score this lead"
1. Agent observes: [Lead data from CRM]
2. Agent reasons: "I need to enrich this data and score them"
3. Agent acts: Calls enrichment API
4. Agent observes: [Enriched data]
5. Agent reasons: "Score is 85, should assign to top sales rep"
6. Agent acts: Updates CRM, sends notification
7. Done. No human input required.
Agent pracuje smerom k definovanému cieľu, pričom robí autonómne viaceré rozhodnutia a volania nástrojov.
Prečo sú agenti dôležití pre workflowy
Automatizácia v meradle (zvládnu tisíce úloh bez ľudského zásahu)
Manuálna kvalifikácia leadov: 5 minút na lead × 100 leadov = 500 hodín/mesiac. Náklady: 10 000 $/mesiac (pri 20 $/hod).
Agentom riadená: 10 sekúnd na lead × 100 leadov = 16 hodín/mesiac. Náklady: 100 $ (API volania agenta). Úspora: 99 %.
Agenti znásobujú kapacitu vášho tímu bez nutnosti náboru.
Viackrokové uvažovanie (rozdeľte zložité problémy na podúlohy)
Zložité úlohy vyžadujú viac krokov:
- Kvalifikácia leadov: Skórovanie → Obohatenie → Priradenie → Upozornenie
- Triedenie dokumentov: Extrakcia → Klasifikácia → Smerovanie → Archivácia
- Zákaznícka podpora: Pochopenie → Vyhľadávanie v znalostnej báze → Generovanie odpovede → Smerovanie v prípade potreby
Agenti tieto úvahy zvládajú automaticky. Vy definujete cieľ; agent ho rozdelí na kroky.
Používanie nástrojov (agenti volajú API, databázy, externé služby)
Agenti sú “ruky”. Volajú API na:
- Dotazovanie databáz
- Aktualizáciu CRM systémov
- Odosielanie emailov alebo Slack správ
- Volanie služieb tretích strán (obohatenie dát, spracovanie platieb)
Jeden agent dokáže orchestrovať 5–10 volaní nástrojov na dokončenie workflowu.
Adaptívne správanie (učí sa zo spätnej väzby, upravuje prístup)
Agenti sa môžu časom zlepšovať. Ak agent nesprávne klasifikuje dokumenty, poskytnete spätnú väzbu. Agent sa učí a upravuje svoju promptovaciu stratégiu.
Základné komponenty AI agenta (agentová slučka)
Uvažovacia slučka agenta (s popisom diagramu)
Jadrom každého agenta je slučka:
┌─────────────────────────────────────────┐
│ START: Agent receives goal │
└────────────────┬────────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ OBSERVE: Read input, tool results, │
│ memory, environment │
└────────────────┬────────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ REASON: LLM decides next action │
│ (which tool to call, or done?) │
└────────────────┬────────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ ACT: Execute tool call or complete │
│ task │
└────────────────┬────────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ FEEDBACK: Evaluate result, update │
│ memory, check if goal met │
└────────────────┬────────────────────────┘
│
├─→ Goal not met? Loop back to OBSERVE
│
└─→ Goal met or max steps reached? DONE
Pozorovanie: agent vníma stav (vstup, prostredie, výsledky nástrojov)
Agent číta:
- Počiatočný vstup (dáta o lead-e, text dokumentu, otázku zákazníka)
- Výsledky nástrojov z predchádzajúcich krokov (API odpovede, databázové dotazy)
- Pamäť (história konverzácie, minulé rozhodnutia, znalostná báza)
- Aktuálny stav (čo bolo urobené, čo zostáva)
Uvažovanie: LLM rozhoduje o ďalšej akcii (plánovanie, výber nástroja)
LLM dostane prompt ako:
You are a lead qualification agent. Your goal is to score and qualify this lead.
Available tools:
1. enrich_lead(lead_id) - Get additional data about the lead
2. score_lead(lead_data) - Score based on criteria
3. assign_to_sales_rep(lead_id, rep_id) - Assign lead to a rep
4. send_notification(rep_id, message) - Notify rep
Current state:
- Lead ID: 12345
- Company: Acme Corp
- Revenue: Unknown (need to enrich)
- Status: Not scored yet
What should you do next?
LLM odpovedá: “Mal by som najprv obohatiť lead, aby som získal dáta o tržbách, potom skórovať, potom priradiť.”
Akcia: vykonať volanie nástroja alebo urobiť krok k cieľu
Agent vykoná vybraný nástroj:
result = enrich_lead(lead_id=12345)
# Returns: {'revenue': '$10M', 'industry': 'SaaS', 'employees': 150}
Spätná väzba: vyhodnoťte výsledok, v prípade potreby upravte stratégiu
Agent skontroluje: Podarilo sa volanie nástroja? Posunulo to k cieľu? Aktualizujte pamäť a pokračujte v slučke.
Slučka: opakujte, kým nie je cieľ dosiahnutý alebo sa nedosiahne maximálny počet krokov
Agent opakuje pozorovanie → uvažovanie → akcia → spätná väzba, kým:
- Cieľ nie je dosiahnutý (“Lead oskórovaný a priradený”)
- Nedosiahne maximum krokov (prevencia nekonečných slučiek)
- Nenastane chyba (eskalácia k človeku)
Integrácia nástrojov (“ruky” agenta)
Definovanie nástrojov (signatúry funkcií, popisy, parametre)
Nástroje sú funkcie, ktoré agent môže volať. Definujte ich jasne:
tools = [
{
"name": "enrich_lead",
"description": "Get additional company data about a lead (revenue, employees, industry)",
"parameters": {
"lead_id": {"type": "string", "description": "Unique identifier of the lead"}
}
},
{
"name": "score_lead",
"description": "Score a lead on a scale of 0-100 based on fit criteria",
"parameters": {
"lead_data": {"type": "object", "description": "Lead information including revenue, industry, etc."}
}
}
]
Jasné popisy pomáhajú LLM zvoliť správny nástroj.
Volanie nástrojov (ako agenti vyberajú a vyvolávajú nástroje)
LLM odpovedá volaním nástroja:
{
"thought": "I need to enrich this lead to get revenue data",
"action": "enrich_lead",
"action_input": {"lead_id": "12345"}
}
Váš agentový framework vykoná nástroj a odovzdá výsledok späť LLM.
Spracovanie výsledku nástroja (parsovanie odpovedí, zotavenie pri chybe)
Ošetrite úspech aj zlyhanie:
def execute_tool(tool_name, tool_input):
try:
if tool_name == "enrich_lead":
result = crm_api.enrich(tool_input['lead_id'])
return {"status": "success", "data": result}
except Exception as e:
return {"status": "error", "message": str(e)}
Ak nástroj zlyhá, agent by mal skúsiť iný prístup alebo eskalovať k človeku.
Pamäťové systémy (čo si agenti pamätajú)
Krátkodobá pamäť (kontext aktuálnej konverzácie)
Pracovná pamäť agenta: aktuálny vstup, výsledky nástrojov, uvažovacie kroky. Zvyčajne uložená v kontextovom okne (prompt).
Príklad: Agent na kvalifikáciu leadov si pamätá:
- Pôvodné dáta o lead-e
- Výsledky obohatenia
- Skóre
- Ktorý obchodný zástupca bol priradený
Dlhodobá pamäť (znalostná báza, minulé interakcie)
Trvalá pamäť: minulé rozhodnutia, naučené vzory, znalostná báza.
Prípady použitia:
- Znalostná báza: Agent získava relevantné články pri odpovedaní na otázky zákazníkov
- História rozhodnutí: Agent sa učí, ktoré leady konvertovali (zlepšuje skórovanie)
- Záznamy interakcií: Agent si pamätá minulé interakcie so zákazníkom
Implementujte s vektorovými databázami (Pinecone, Weaviate) pre sémantické vyhľadávanie.
Obmedzenia pamäte (limity kontextového okna)
LLM majú obmedzené kontextové okná (4K–128K tokenov). Agenti si nemôžu pamätať všetko. Stratégie:
- Sumarizácia: Komprimujte staré konverzácie do súhrnov
- Retrieval-augmented generation (RAG): Načítavajte len relevantnú pamäť podľa potreby
- Hierarchická pamäť: Najnovšie interakcie v krátkodobej, staršie v dlhodobej pamäti
Uvažovacia kostra (“mozog”)
Výber LLM (GPT-4, Claude, open-source modely)
- GPT-4: Najlepšie uvažovanie, zvláda zložité úlohy. Cena: 0,03–0,06 $ za 1K tokenov.
- Claude 3.5 Sonnet: Silné uvažovanie, dlhý kontext (200K tokenov). Cena: 0,003–0,015 $ za 1K tokenov.
- Open-source (LLaMA 4): Lacnejšie (0,01–0,03 $ za 1M tokenov), prispôsobiteľné, priateľské k súkromiu.
Pre väčšinu agentov sú Claude alebo open-source modely dostatočné a lacnejšie.
Režimy uvažovania (Chain-of-Thought, Tree-of-Thought, Reflexion)
- Chain-of-thought: Agent premýšľa krok za krokom. “Potrebujem obohatiť → skórovať → priradiť.”
- Tree-of-thought: Agent skúma viaceré cesty, vyberá najlepšiu. Pomalšie, ale presnejšie pre zložité problémy.
- Reflexion: Agent kritizuje vlastný výstup, v prípade potreby to skúsi znova. Znižuje halucinácie.
Príklad reflexion promptu:
Agent: "I'll assign this lead to rep John."
Critic: "Wait, did you check if John is already at capacity?"
Agent: "Good point. Let me check John's workload first."
Kompromisy: rýchlosť vs. presnosť
- Rýchli agenti: Jednokrokové uvažovanie, bez validácie nástrojov. 2–5 sekúnd na úlohu. 85 % presnosť.
- Presní agenti: Viackrokové uvažovanie, validácia, reflexion. 10–30 sekúnd na úlohu. 95 % presnosť.
Zvoľte rýchlosť pre reálny čas (zákaznícka podpora). Zvoľte presnosť pre vysoko rizikové situácie (finančné rozhodnutia).
Typy agentov a kedy ich použiť
Reaktívni agenti (jednoduchí, rýchli, bezstavoví)
Ako fungujú (jeden krok: vstup → akcia)
Reaktívni agenti urobia jedno rozhodnutie a konajú. Žiadne viackrokové plánovanie.
Input: "What's my account balance?"
→ Agent queries database
→ Agent responds with balance
Done.
Najlepšie pre: jednoduché použitie nástrojov, API volania, okamžité odpovede
- Q&A zákazníckej podpory (vyhľadanie objednávky, kontrola zostatku)
- Jednoduché API volania (získať počasie, skontrolovať kurz akcií)
- Potreba okamžitých odpovedí (< 2 sekundy latencie)
Príklad: chatbot zákazníckej podpory s vyhľadávaním v znalostnej báze
def customer_service_agent(question):
# 1. Search knowledge base
articles = search_kb(question)
# 2. LLM picks best article
response = llm.complete(f"""
Question: {question}
Relevant articles: {articles}
Provide an answer based on these articles.
""")
# 3. Return response
return response
Latencia: 1–3 sekundy. Náklady: 0,001–0,01 $ za dotaz.
Plánovací agenti (zameraní na cieľ, viackrokové uvažovanie)
Ako fungujú (rozložia cieľ na podúlohy, vykonajú plán)
Plánovací agenti rozdeľujú zložité ciele na kroky.
Goal: "Qualify and assign this lead"
→ Agent plans: [enrich, score, assign, notify]
→ Agent executes each step
→ Agent verifies goal achieved
Done.
Najlepšie pre: zložité workflowy, výskumné úlohy, analýzu dát
- Kvalifikácia leadov (obohatenie → skórovanie → priradenie)
- Spracovanie dokumentov (extrakcia → klasifikácia → uloženie)
- Výskumné úlohy (vyhľadávanie → sumarizácia → kompilácia)
Príklad: agent na kvalifikáciu leadov (skórovanie → obohatenie → priradenie)
def lead_qualification_agent(lead_id):
lead = crm.get_lead(lead_id)
# Step 1: Enrich
enriched = enrich_lead(lead)
# Step 2: Score
score = score_lead(enriched)
# Step 3: Assign
best_rep = find_best_sales_rep(score)
crm.assign_lead(lead_id, best_rep)
# Step 4: Notify
send_slack(f"New qualified lead assigned to {best_rep}")
return {"lead_id": lead_id, "score": score, "assigned_to": best_rep}
Latencia: 5–15 sekúnd. Náklady: 0,02–0,05 $ za lead.
Učiaci sa agenti (adaptívni, časom sa zlepšujú)
Ako fungujú (zahrnujú spätnú väzbu, prispôsobujú správanie)
Učiaci sa agenti sa zlepšujú so spätnou väzbou.
Initial: Agent classifies document as "Invoice" (60% confidence)
Human feedback: "Actually, it's a Receipt"
Agent learns: Adjust classification prompts
Next time: Same document classified as "Receipt" (90% confidence)
Najlepšie pre: dlhotrvajúce procesy, personalizáciu, optimalizáciu
- Odporúčanie obsahu (učí sa preferencie používateľov)
- Smerovanie zákazníckej podpory (učí sa, ktorí agenti najlepšie riešia ktoré problémy)
- Optimalizácia cien (učí sa, ktoré ceny najlepšie konvertujú)
Príklad: agent na odporúčanie obsahu (učí sa preferencie používateľov)
def recommendation_agent(user_id):
# Get user history
history = db.get_user_history(user_id)
# LLM recommends based on patterns
recommendation = llm.complete(f"""
User history: {history}
Based on past preferences, what should we recommend?
""")
# Show recommendation, collect feedback
feedback = user_feedback # thumbs up/down
# Store feedback for future recommendations
db.log_feedback(user_id, recommendation, feedback)
return recommendation
Časom sa odporúčania zlepšujú, ako sa agent učí preferencie používateľov.
Hierarchickí agenti (agenti spravujúci iných agentov)
Ako fungujú (supervízorský agent deleguje špecialistom)
Supervízorský agent koordinuje špecializovaných agentov.
Supervisor: "Process this support ticket"
├─ Classifier agent: "This is a billing issue"
├─ Billing specialist agent: "Refund $50"
└─ Notification agent: "Send confirmation email"
Najlepšie pre: podnikové workflowy, veľkorozmerovú automatizáciu
- Tvorba obsahu (výskum → písanie → úprava → publikovanie agentov)
- Zložitá zákaznícka podpora (triáž → riešenie → eskalácia agentov)
- Pipeline spracovania dát (extrakcia → transformácia → načítanie agentov)
Príklad: pipeline tvorby obsahu (výskum → písanie → úprava → publikovanie)
def content_pipeline_agent(topic):
# Supervisor delegates
research = research_agent(topic)
draft = writer_agent(research)
edited = editor_agent(draft)
published = publisher_agent(edited)
return {"topic": topic, "status": "published"}
Každý špecializovaný agent je optimalizovaný pre svoju úlohu. Supervízor orchestruje.
Najlepšie AI agentové nástroje a frameworky v roku 2026 (porovnávacia tabuľka)
Kritériá hodnotenia
Schopnosť uvažovania (Chain-of-Thought, plánovanie, Reflexion)
Ako prepracované je myslenie agenta. Jednoduchí agenti používajú chain-of-thought. Zložití agenti používajú plánovanie a reflexion.
Integrácia nástrojov (ako ľahko pridať vlastné nástroje)
Dokážete jednoducho prepojiť API, databázy, CRM systémy? Alebo potrebujete vlastný kód?
Krivka učenia (čas nastavenia, kvalita dokumentácie)
Ako rýchlo dokáže vývojár získať funkčného agenta? No-code platformy sú rýchlejšie; Python frameworky sú flexibilnejšie.
Cenový model (zadarmo, za API volanie, predplatné)
Niektoré frameworky sú open-source (zadarmo). Iné si účtujú za API volanie alebo predplatné.
Najlepšie použitia
Na čo je každý nástroj optimalizovaný?
Porovnávacia tabuľka: najlepšie AI agentové nástroje a frameworky (2026)
| Nástroj | Typ frameworku | Schopnosť uvažovania | Integrácia nástrojov | Krivka učenia | Cena | Najlepšie pre |
|---|---|---|---|---|---|---|
| n8n | Vizuálny workflow builder | Chain-of-thought | 500+ integrácií | Nízka | Zadarmo + platené | Netechnickí používatelia, rýchle nastavenie |
| CrewAI | Python framework | Plánovanie + reflexion | Vlastné nástroje (Python) | Stredná | Open-source | Vývojári, zložití agenti |
| Autogen | Python framework | Multi-agent uvažovanie | Vlastné nástroje | Vysoká | Open-source | Výskum, multi-agent systémy |
| LangGraph | Python framework | Plánovanie + správa stavu | LangChain ekosystém | Stredná | Open-source | Zložité workflowy, sledovanie stavu |
| FlowHunt | Natívna platforma | Chain-of-thought + plánovanie | Natívne + API integrácie | Nízka | Predplatné | Automatizácia workflowov, jednoduchosť použitia |
| Lindy.ai | No-code platforma | Chain-of-thought | 100+ integrácií | Veľmi nízka | Freemium | Netechnickí, rýchli agenti |
| Gumloop | No-code platforma | Chain-of-thought | 50+ integrácií | Veľmi nízka | Freemium | Jednoduchá automatizácia, šablóny |
Kľúčové rozdiely:
- No-code (n8n, FlowHunt, Lindy.ai): Rýchle na stavbu, obmedzené prispôsobenie. Dobré pre štandardné workflowy.
- Python frameworky (CrewAI, Autogen, LangGraph): Flexibilné, výkonné, strmšia krivka učenia. Dobré pre zložitú logiku.
- Open-source (CrewAI, Autogen, LangGraph): Zadarmo, ale infraštruktúru spravujete sami. Platené platformy riešia hosting.
Ako si vybrať správny nástroj pre váš prípad použitia
- Rýchly prototyp (< 1 týždeň): Použite no-code (FlowHunt, n8n, Lindy.ai)
- Zložitý agent s vlastnou logikou: Použite Python framework (CrewAI, LangGraph)
- Multi-agent systém (agenti koordinujúci): Použite Autogen
- Produkčná automatizácia workflowu: Použite FlowHunt (spravovaný, monitorovaný, škálovaný)
Stavba vášho prvého agenta: architektúra krok za krokom
Definujte cieľ a rozsah agenta
Aký problém rieši?
Buďte konkrétni. Zlé: “Automatizujte správu leadov.” Dobré: “Skórujte leady 0–100, obohaťte ich o firemné dáta, priraďte obchodným zástupcom podľa kapacity.”
Aké sú metriky úspechu?
- Presnosť: % správnych rozhodnutí (cieľ: > 90 %)
- Latencia: Čas dokončenia úlohy (cieľ: < 10 sekúnd)
- Náklady: API volania na úlohu (cieľ: < 0,05 $)
- Miera automatizácie: % úloh dokončených bez ľudského zásahu (cieľ: > 80 %)
Aké sú obmedzenia (latencia, náklady, presnosť)?
Kompromisy:
- Real-time workflowy: Potrebujú < 5 sekúnd latencie. Použite rýchle modely, menej volaní nástrojov.
- Batch workflowy: Zvládnu 5–30 minút. Použite presnejšie uvažovanie, viac volaní nástrojov.
- Citlivé na náklady: Použite open-source modely, menej API volaní.
- Kritické na presnosť: Použite drahé modely (GPT-4), viackrokovú validáciu.
Navrhnite agentovú slučku
Čo bude agent pozorovať?
Vstupné dáta: dáta o lead-e, text dokumentu, otázka zákazníka, kontext z pamäte.
Aký režim uvažovania (jednoduchý Chain-of-Thought vs. plánovanie)?
- Chain-of-thought: Rýchle, jednoduché. “Spravím krok 1, potom krok 2.”
- Plánovanie: Pomalšie, presnejšie. “Najprv naplánujem všetky kroky, potom vykonám.”
Aké nástroje potrebuje?
Vymenujte API, databázy, služby, ktoré bude agent volať.
Príklad pre kvalifikáciu leadov:
- CRM API (získať/aktualizovať lead)
- API obohatenia dát (získať firemné dáta)
- Skórovací model (oskórovať lead)
- Notifikačná služba (poslať Slack/email)
Ako vie, kedy skončiť?
Definujte podmienku úspechu. “Zastav, keď je lead oskórovaný a priradený.”
Tiež definujte maximum krokov, aby ste predišli nekonečným slučkám. “Zastav po 10 krokoch bez ohľadu na čokoľvek.”
Implementácia a testovanie
Pseudokód alebo príklad reálneho kódu (CrewAI alebo FlowHunt)
CrewAI príklad:
from crewai import Agent, Task, Crew
# Define agents
enrichment_agent = Agent(
role="Data Enrichment Specialist",
goal="Enrich lead data with company information",
tools=[enrich_tool]
)
scoring_agent = Agent(
role="Lead Scoring Expert",
goal="Score leads based on fit criteria",
tools=[score_tool]
)
assignment_agent = Agent(
role="Sales Manager",
goal="Assign leads to best sales rep",
tools=[assign_tool, notify_tool]
)
# Define tasks
enrich_task = Task(
description="Enrich this lead: {lead_id}",
agent=enrichment_agent
)
score_task = Task(
description="Score the enriched lead",
agent=scoring_agent
)
assign_task = Task(
description="Assign lead to best rep and notify",
agent=assignment_agent
)
# Run crew
crew = Crew(agents=[enrichment_agent, scoring_agent, assignment_agent],
tasks=[enrich_task, score_task, assign_task])
result = crew.kickoff(inputs={"lead_id": "12345"})
Stratégia testovania (unit testy pre volania nástrojov, integračné testy pre slučky)
def test_enrichment_tool():
result = enrich_tool("lead_123")
assert result['revenue'] is not None
assert result['employees'] is not None
def test_scoring_agent():
lead = {"company": "Acme", "revenue": "10M", "employees": 50}
score = score_agent(lead)
assert 0 <= score <= 100
def test_full_loop():
result = lead_qualification_agent("lead_123")
assert result['assigned_to'] is not None
assert result['score'] > 0
Debugovanie bežných problémov (nekonečné slučky, halucinácie, zlé nástroje)
- Nekonečné slučky: Pridajte limit max krokov. Logujte každý krok. Monitorujte opakované akcie.
- Halucinácie: Pridajte validáciu. Overujte výstupy oproti zdrojovým dátam.
- Zlé nástroje: Zlepšite popisy nástrojov. Pridajte validáciu nástroja pred vykonaním.
Reálny príklad: agent na kvalifikáciu leadov
Cieľ: skórovať leady, obohatiť dáta, priradiť obchodnému tímu
def lead_qualification_agent(lead_id):
"""
Autonomous agent that qualifies leads.
1. Fetches lead from CRM
2. Enriches with company data
3. Scores based on fit criteria
4. Assigns to best sales rep
5. Notifies rep
"""
Nástroje: CRM API, služba obohatenia dát, skórovací model
tools = {
"get_lead": crm.get_lead,
"enrich_lead": enrichment_api.enrich,
"score_lead": scoring_model.score,
"find_best_rep": crm.find_available_rep,
"assign_lead": crm.assign,
"send_notification": slack.send
}
Prehľad v pseudokóde (pozorovanie leadu → skórovanie → obohatenie → priradenie)
# Step 1: Observe
lead = get_lead(lead_id)
print(f"Observing lead: {lead['company']}")
# Step 2: Reason (LLM decides next action)
# LLM: "I need to enrich this lead first"
# Step 3: Act
enriched = enrich_lead(lead)
print(f"Enriched: revenue={enriched['revenue']}")
# Step 4: Feedback + Loop
# LLM: "Now I'll score"
# Step 5: Act
score = score_lead(enriched)
print(f"Score: {score}")
# Step 6: Reason
# LLM: "Score is {score}, should assign to top rep"
# Step 7: Act
best_rep = find_best_rep(score)
assign_lead(lead_id, best_rep)
send_notification(best_rep, f"New lead: {lead['company']}")
print(f"Assigned to {best_rep}")
Výsledky: metriky presnosti, latencie, nákladov
- Presnosť: 94 % (skóre leadu sa zhoduje s manuálnou kontrolou)
- Latencia: 8 sekúnd (5 volaní nástrojov, 3 kroky uvažovania LLM)
- Náklady: 0,03 $ na lead (GPT-4 API volania + API obohatenia)
- Priepustnosť: 450 leadov/hodina (jedna inštancia agenta)
- Miera automatizácie: 87 % (13 % eskalovaných človeku na kontrolu)
Integrácia agentov s podnikovými systémami
Vzory integrácie API
REST API (najbežnejšie)
Väčšina agentov volá REST API. Použite štandardný HTTP klient:
def call_crm_api(endpoint, method="GET", data=None):
url = f"https://api.crm.com/{endpoint}"
headers = {"Authorization": f"Bearer {api_key}"}
if method == "GET":
response = requests.get(url, headers=headers)
elif method == "POST":
response = requests.post(url, json=data, headers=headers)
return response.json()
Webhooky (triggery agentov na základe udalostí)
Spustite agentov pri udalostiach (nový lead, prichádzajúci email, odoslanie formulára):
@app.post("/webhook/new_lead")
def on_new_lead(lead_data):
# Trigger agent asynchronously
queue.enqueue(lead_qualification_agent, lead_data['id'])
return {"status": "queued"}
Autentifikácia a bezpečnosť (API kľúče, OAuth, rate limiting)
- API kľúče: Ukladajte do environment premenných, nie do kódu
- OAuth: Pre integrácie orientované na používateľa (Salesforce, HubSpot)
- Rate limiting: Rešpektujte limity API. Implementujte backoff a retry logiku
from ratelimit import limits, sleep_and_retry
@sleep_and_retry
@limits(calls=100, period=60) # 100 calls per minute
def call_api(endpoint):
return requests.get(f"https://api.example.com/{endpoint}")
Integrácia s databázou
Len na čítanie (agent dotazuje dáta)
Agent číta dáta o zákazníkoch, minulé interakcie, znalostnú bázu:
def get_customer_history(customer_id):
query = "SELECT * FROM interactions WHERE customer_id = %s"
return db.execute(query, (customer_id,))
Operácie zápisu (agent ukladá rozhodnutia/výsledky)
Agent zapisuje rozhodnutia do databázy:
def store_lead_score(lead_id, score, assigned_to):
db.execute(
"UPDATE leads SET score = %s, assigned_to = %s WHERE id = %s",
(score, assigned_to, lead_id)
)
Transakcie a konzistencia (zabezpečenie integrity dát)
Pri viackrokových operáciách používajte transakcie:
with db.transaction():
score = score_lead(lead)
db.update_lead_score(lead_id, score)
rep = find_best_rep(score)
db.assign_lead(lead_id, rep)
# All-or-nothing: if any step fails, rollback
Integrácia CRM a obchodných nástrojov
Integračné vzory Salesforce, HubSpot, Pipedrive
Použite oficiálne SDK:
from salesforce import SalesforceAPI
sf = SalesforceAPI(api_key=key)
# Update lead
sf.update_lead(lead_id, {
'score': 85,
'assigned_to': 'john@acme.com',
'status': 'qualified'
})
Integrácia Slack, Email, Jira (agent posiela notifikácie/aktualizácie)
from slack_sdk import WebClient
slack = WebClient(token=slack_token)
# Notify sales rep
slack.chat_postMessage(
channel="john",
text=f"New qualified lead: {lead['company']} (score: {score})"
)
Autentifikácia a obmedzenie oprávnení
Používajte OAuth scope na obmedzenie toho, čo môžu agenti robiť:
# Agent can only read leads, update scores
# Cannot delete leads or access sensitive data
oauth_scopes = ["leads:read", "leads:update"]
Human-in-the-loop workflowy
Kedy agenti potrebujú ľudské schválenie
Vysoko rizikové rozhodnutia: finančné transakcie, refundácie zákazníkom, výnimky z pravidiel.
if decision_risk_score > 0.7:
# Route to human for approval
escalate_to_human(decision, reason="High risk")
else:
# Agent executes decision
execute_decision(decision)
Eskalačné vzory (vysoko rizikové rozhodnutia, hraničné prípady)
def lead_qualification_with_escalation(lead_id):
score = score_lead(lead_id)
if score > 80:
# High confidence, assign directly
assign_lead(lead_id, best_rep)
elif 50 < score < 80:
# Medium confidence, route to human
escalate_to_human(lead_id, "Review and assign")
else:
# Low score, reject
reject_lead(lead_id)
Spätnoväzbové slučky (ľudia opravujú chyby agenta)
@app.post("/feedback/lead_score")
def on_score_feedback(lead_id, actual_score, agent_score):
# Store feedback
db.log_feedback(lead_id, agent_score, actual_score)
# Retrain model on feedback (periodic)
if should_retrain():
retrain_scoring_model()
Bežné zlyhania agentov a ako im predchádzať
Nekonečné slučky (agent sa zasekne opakovaním tej istej akcie)
Príčina: slabá definícia cieľa, nástroj, ktorý neposúva vpred
# Bad: Agent keeps calling same tool
Agent thinks: "I need to get lead data"
→ Calls get_lead()
→ Still doesn't have enriched data
→ Calls get_lead() again
→ Infinite loop
Prevencia: limit max krokov, sledovanie pokroku, diverzita nástrojov
max_steps = 10
steps_taken = 0
while steps_taken < max_steps:
action = llm.decide_next_action()
if action == last_action:
# Same action twice, break loop
break
execute_action(action)
steps_taken += 1
Zotavenie: timeout, eskalácia k človeku
try:
result = agent.run(timeout=30) # 30 second timeout
except TimeoutError:
escalate_to_human("Agent loop timeout")
Halucinácie (agent vymýšľa fakty alebo výstupy nástrojov)
Príčina: sklon LLM ku konfabulácii, zlé popisy nástrojov
# Bad: Agent hallucinates tool output
Agent: "I called enrich_lead, got revenue=$100M"
Reality: enrich_lead() returned null (API failed)
Agent made up the result
Prevencia: Retrieval-Augmented Generation (RAG), validácia nástrojov, overovanie faktov
def execute_tool_safely(tool_name, params):
try:
result = execute_tool(tool_name, params)
# Validate result
if result is None:
return {"error": "Tool returned null"}
if not validate_result(result):
return {"error": "Result failed validation"}
return result
except Exception as e:
return {"error": str(e)}
Použite RAG na ukotvenie agenta vo faktoch:
# Instead of: "Summarize this article"
# Use: "Summarize this article, citing specific passages"
knowledge_base = vector_db.search(query)
prompt = f"""
Summarize this article. Only cite specific passages.
Article: {article}
Knowledge base: {knowledge_base}
"""
Zotavenie: záloha k človeku, opätovný pokus s iným uvažovaním
def robust_agent_call(goal, retries=3):
for attempt in range(retries):
try:
result = agent.run(goal)
# Validate result
if validate(result):
return result
except Exception as e:
if attempt == retries - 1:
escalate_to_human(goal)
else:
time.sleep(2 ** attempt) # Backoff
Zneužitie nástrojov (agent volá zlý nástroj alebo so zlými parametrami)
Príčina: nejednoznačné popisy nástrojov, slabé uvažovanie
# Bad: Ambiguous tool description
"update_lead - Update a lead"
# Good: Clear description
"update_lead - Update a lead's score, status, or assigned_to field.
Parameters: lead_id (required), score (0-100), status (qualified/disqualified),
assigned_to (sales rep email)"
Prevencia: jasná dokumentácia nástrojov, tréning používania nástrojov, validácia pred vykonaním
# Validate before execution
tool_call = llm.decide_tool_call()
if not validate_tool_call(tool_call):
# Tool call is invalid, ask LLM to fix
llm.correct_tool_call(tool_call)
else:
execute_tool(tool_call)
def validate_tool_call(call):
tool = tools[call['name']]
required_params = tool['required_parameters']
for param in required_params:
if param not in call['params']:
return False
return True
Zotavenie: ošetrenie chýb, navrhnutie správneho nástroja, opakovaný pokus
try:
result = execute_tool(tool_call)
except ToolExecutionError as e:
# Suggest correct tool
correct_tool = suggest_correct_tool(e)
llm.suggest_retry(correct_tool)
Prekročenie nákladov (agent používa príliš veľa API volaní)
Príčina: neefektívne uvažovanie, redundantné volania nástrojov
# Bad: Agent calls same tool multiple times
Agent: "Let me get lead data"
→ Calls get_lead()
→ Calls get_lead() again (forgot it already did)
→ Calls get_lead() a third time
Cost: 3x higher than needed
Prevencia: rozpočtové limity, deduplikácia volaní, kešovanie
budget = {"tokens": 10000, "api_calls": 50}
spent = {"tokens": 0, "api_calls": 0}
def execute_with_budget(action):
global spent
if spent['api_calls'] >= budget['api_calls']:
raise BudgetExceededError()
result = execute_action(action)
spent['api_calls'] += 1
return result
Implementujte kešovanie:
cache = {}
def get_lead_cached(lead_id):
if lead_id in cache:
return cache[lead_id]
result = crm_api.get_lead(lead_id)
cache[lead_id] = result
return result
Zotavenie: monitorovanie nákladov, throttling, prechod na lacnejší model
if cost_this_hour > budget_per_hour:
# Switch to cheaper model
switch_to_model("gpt-3.5-turbo") # Cheaper than GPT-4
Problémy s latenciou (agent je príliš pomalý pre použitie v reálnom čase)
Príčina: viaceré kroky uvažovania, pomalé odpovede nástrojov
Agent robiaci 5 sekvenčných API volaní po 1 sekunde = 5+ sekúnd latencie.
Prevencia: paralelné vykonávanie nástrojov, kešovanie, rýchlejšie modely
# Parallel execution
import asyncio
async def parallel_agent(lead_id):
lead = await get_lead_async(lead_id)
# Call multiple tools in parallel
enrichment, scoring = await asyncio.gather(
enrich_lead_async(lead),
score_lead_async(lead)
)
return (enrichment, scoring)
Používajte rýchlejšie modely:
# Instead of GPT-4 (slower, more accurate)
# Use GPT-3.5-turbo (faster, still accurate enough)
model = "gpt-3.5-turbo" # 200ms latency vs 500ms for GPT-4
Zotavenie: timeout, vrátenie čiastočných výsledkov, zaradenie do async frontu
try:
result = agent.run(timeout=5) # 5 second timeout
return result
except TimeoutError:
# Return partial results
return partial_result
# Queue for async completion
queue.enqueue(complete_agent, lead_id)
Meranie výkonnosti agenta a ROI
Kľúčové metriky na sledovanie
Presnosť (% správnych rozhodnutí/akcií)
Porovnajte výstup agenta s ground truth (ľudská kontrola, skutočné výsledky).
correct = 0
total = 100
for decision in agent_decisions:
if decision == human_review[decision.id]:
correct += 1
accuracy = correct / total * 100 # e.g., 94%
Latencia (čas dokončenia úlohy)
Merajte end-to-end čas od vstupu po výstup.
start = time.time()
result = agent.run(input_data)
latency = time.time() - start # e.g., 8.5 seconds
Náklady na úlohu (API volania, výpočet, ľudská kontrola)
cost = (llm_api_calls * llm_cost) + (tool_calls * tool_cost) + (human_review_rate * hourly_rate)
# e.g., $0.03 per lead
Spokojnosť používateľov (ak human-in-the-loop)
Oslovte používateľov: “Ako ste spokojní s rozhodnutiami agenta?”
Miera automatizácie (% úloh dokončených bez ľudského zásahu)
automated = tasks_completed_by_agent
total = all_tasks
automation_rate = automated / total * 100 # e.g., 87%
Výpočet ROI
Základ: náklady manuálneho procesu (ľudské hodiny × hodinová sadzba)
Manual lead qualification:
- 100 leads/month
- 5 minutes per lead
- 500 hours/month
- $20/hour = $10,000/month
Náklady agenta: infraštruktúra + API volania + ľudský dohľad
Agent-driven:
- 100 leads/month
- $0.03 per lead (API calls)
- $3 total API cost
- $500/month human review (10% escalation)
- $100/month infrastructure
Total: $603/month
Doba návratnosti: keď náklady agenta < manuálne náklady
Savings per month: $10,000 - $603 = $9,397
ROI: 1,557% (9,397 / 603)
Payback period: < 1 month (immediate)
Príklad: ROI agenta na kvalifikáciu leadov
Manual process:
- 500 leads/month
- 5 min per lead = 2,500 hours = $50,000/month
Agent process:
- 500 leads/month
- $0.03 per lead = $15
- 5% escalation (25 leads) = $250 human time
- Infrastructure = $500
Total: $765/month
Savings: $50,000 - $765 = $49,235/month
ROI: 6,436%
Neustále zlepšovanie
Sledujte metriky v čase
# Track daily metrics
daily_metrics = {
'accuracy': 0.94,
'latency': 8.5,
'cost_per_task': 0.03,
'automation_rate': 0.87
}
A/B testujte rôzne konfigurácie agenta
# Test 1: GPT-4 (more accurate, slower)
# Test 2: GPT-3.5-turbo (faster, slightly less accurate)
# Measure: accuracy, latency, cost
# Choose based on your priorities
Zahrňte spätnú väzbu na zlepšenie presnosti
# Collect human feedback on agent mistakes
feedback = db.get_feedback()
# Retrain agent (adjust prompts, add examples)
agent.retrain(feedback)
# Measure: accuracy improves from 94% to 96%
Škálujte úspešných agentov, ukončite slabo výkonných
Monitorujte ROI. Ak agent neprináša hodnotu, ukončite ho. Škálujte úspešných agentov do ďalších tímov.
Často kladené otázky
Sekcia FAQ sa automaticky vykresľuje z frontmatteru a zobrazuje sa nižšie.
{{ cta-dark-panel heading=“Budujte agentov bez komplikácií” description=“Natívna platforma FlowHunt pre agentov zvláda integráciu nástrojov, ošetrenie chýb a monitorovanie. Začnite budovať autonómne workflowy v priebehu minút, nie týždňov.” ctaPrimaryText=“Vyskúšať FlowHunt zadarmo” ctaPrimaryURL=“https://app.flowhunt.io/sign-in" ctaSecondaryText=“Rezervovať demo” ctaSecondaryURL=“https://www.flowhunt.io/demo/" gradientStartColor="#7c3aed” gradientEndColor="#ec4899” gradientId=“cta-ai-agents” }}

