Жұмыс ағындары
Жұмыс ағыны — агентіңіздің қадам-қадам не істеуі керектігінің визуалды картасы — кім бірінші сөйлейді, нені сұрау керек, қашан тармақтау керек, қашан қоңырауды беру керек және қашан қоңырауды басқа агентке тапсыру керек. Оны түйіндерді тастап, оларды қосу арқылы кенепте құрасыз.
Жалғыз промпт жеткіліксіз болғанда жұмыс ағынын қолданыңыз — қоңыраудың анық кезеңдері болғанда ("алдымен саралау, содан кейін мәліметтерді жинау, одан кейін не брондау, не беру"), қоңырау шалушының жауаптарына детерминистік бағыттау қажет болғанда ("AI әдетте дұрыс істейді" емес), немесе бір агент жұмыстың бір бөлігін маманға тапсыруы керек болғанда.
Промпт — бір ұзын нұсқау. Агент оны бір рет оқып, бүкіл қоңырауға қолданады. Жұмыс ағыны — көп ұсақ нұсқау, әр түйінге бір, олардың арасында нақты ауысулармен. Граф қоңырауды басқарады — әр түйіндегі агент тек өз бөлігіне ие болады.
Егер агентіңіз жалғыз промптпен жақсы жұмыс істеп тұрса, жұмыс ағыны қажет емес. Промптқа "егер X болса Y" ережелерін қоса берген сайын, олар сенімді жұмыс істеуден қалғанда жұмыс ағындарын қолданыңыз.
Редактор
Жұмыс ағыны редакторы агент бетіндегі өз қойындысында тұрады. Әдепкі бойынша Start түйіні мен End түйіні бар кенепті көресіз. Түйіндерді құралдар тақтасынан қосасыз, оларды кенепке сүйрейсіз және оларды жиектермен қосасыз.
Оң жақ панель нәрселерді таңдаған сайын ауысады:
- Түйінді басыңыз — оның параметрлер панелі ашылады (промпт, өрістер, шығарып алу айнымалылары т.б.).
- Жиекті басыңыз — оның триггер параметрлері ашылады (AI decides / Condition / Always).
- Variables панелі (құралдар тақтасының батырмасы) жұмыс ағыны жариялайтын немесе қолданатын әр айнымалыны тізіп, әрқайсысын орнататын немесе оқитын түйінге бір басумен өтуді ұсынады.
Редактордан тікелей браузердегі Test Call іске қосыңыз — жарқыраған от-құрты тікелей позицияны бақылап, әр сәтте қай түйін белсенді екенін нақты көруге мүмкіндік береді.
Undo / Redo (v2.8) — редактор 20 қадамға дейінгі тарихты сақтайды, сондықтан қайта құрмай-ақ қате қадамды кері қайтаруға (немесе қайталауға) болады. Түйінді жою алдымен растауды сұрайды (v2.8), сондықтан кездейсоқ басумен қадамнан айырылмайсыз.
Бос кенептен бастаудың қажеті жоқ. "build as workflow" кіру нүктесі агентке жұмыс ағынын дайындап, сізді тікелей құрастырғышқа тастайды — бір әрекет жұмыс ағынын жасап, түйіндер қосуға дайын редакторды ашады.
Жұмыс ағындарының үш мәртебесі бар:
- Draft — өңделетін, әлі белсенді емес. Оны сынау үшін Test Call қолданыңыз.
- Active — нақты қоңыраулар үшін белсенді. Агент бұл жұмыс ағынын келесі қоңыраудан бастап қолданады.
- Template — қайта қолданылатын үлгі, ешқашан агентке тікелей байланысты емес. Оны бірнеше агентке орнатуға болады.
Түйіндер
Әр түйін — сөйлесудегі қадам. Түрлі түйін түрлері түрлі нәрсе істейді — кейбірі сөйлейді, кейбірі тыңдайды, кейбірі бағыттайды, кейбірі құралдарды іске қосады.
Agent
agent түйіні — жұмыс ағыны кезеңінің жүрегі. Граф agent түйініне жеткенде, сол агент кезекті алып, бір нәрсе ауысуды іске қосқанша сөйлесуді жүргізеді.
Agent түйінінің тұлғасы мен тапсырмасын кенепте тікелей конфигурациялайсыз (түйінді басқанда Prompt қойындысы ашылады) — бұл бүкіл қоңырауға емес, сөйлесудің сол бөлігіне арналған промпт. Сондай-ақ әр түйінге білім базаларын және құралдарды тіркей аласыз.
Greeting — бастау жолы. Егер бұл кіру түйіні болса (Start-тан кейінгі бірінші аялдама), қоңырау шалушы алдымен осыны естиді.
Граф қоңырауды басқарғанда, белсенді түйіннің промпты агенттің базалық промптының (Model қойындысындағының) үстіне қабатталады. Граф әр кезеңнің тұлғасы мен тапсырмасына ие болады, ал агенттің базалық нұсқаулары негіз ретінде орнында қалады.
Subagent
Subagent — жолшыбай жұмыс істейтін көмекші — ол сөйлесуді нақты тапсырма үшін қабылдап алады, содан кейін нәтижені оны шақырғанға қайтарады.
Ішкі агенттер бір бөлік жұмыс қайта қолданылатын немесе ерекше сезілгенде керемет: "қоңырау шалушының жеке басын растау", "жеткізу мекенжайын жинау", "SPIN әдісімен лидті саралау". Аталық агент ішкі агентті шақырады, ішкі агент өз ісін атқарып, нәтиже хабарлайды, аталық қалдырған жерінен жалғастырады.
Subagent түйіндерінің agent түйінімен бірдей қойындылары бар (Prompt, Knowledge, Tools, Actions) — редактор сіз үшін жасырын қосалқы агентті автоматты түрде жасайды. Бұл жасырын агентті негізгі агенттер тізіміңізде көрмейсіз және ол тарифіңіздің агент шегіне есептелмейді.
Return variable — ішкі агенттің нәтижесін сақтауға арналған слот (мысалы, identity_verified, lead_score).
Кім бірінші сөйлейді
Әдепкі бойынша ішкі агент өз кезегін сөйлеуден бастайды — қабылдап алған сәтте сәлемдеседі немесе алғашқы сұрағын қояды. Екі ауыстырғыш мұны өзгертеді:
- Wait for the caller (don't speak first) — ішкі агент кіргенде үнсіз қалып, тек қоңырау шалушы бірдеңе айтқан соң ғана жауап береді. Ішкі агент қоңыраудағы бірінші аялдама болғанда және агенттің бастауының орнына қоңырау шалушының бастауын қалағанда (нағыз "Алло?") — немесе қоңырау ортасында, алдыңғы қадам бәрін айтып қойған кезде және ішкі агент тек жауапты тыңдауы керек болғанда осыны қосыңыз.
- Silent step (don't speak) — ішкі агент мүлдем сөйлемейді. Ол осы уақытқа дейінгі сөйлесуді оқып, нәтиже шешіп, басқаруды тікелей қайтарады. Оны көрінбейтін бағыттаушы ретінде қолданыңыз: "қоңырау шалушының не сұрағанын оқып, бұл қай бөлім екенін шеш" — сөз айтылмайды, тек граф тармақтайтын шешім.
Рұқсат етілген нәтиже мәндері
Ішкі агент әдетте өзі орынды деп бағалаған кез келген мәнмен аяқтайды. Егер сіз сол нәтижеге Condition жиектерімен тармақтайтын болсаңыз, оны оның орнына рұқсат етілген мәндердің жабық тізіміне бекітіңіз:
- Әр рұқсат етілген мәнді Allowed result values астында тізіңіз (мысалы,
sales,support,billing). - Ішкі агент олардың дәл біреуімен аяқтауы керек — ол жаңасын ойлап таба алмайды.
- Таза, болжамды бағыттау үшін әр мәнді Condition жиегімен жұптаңыз (
result is "sales"→ …).
Бұл — ішкі агентті шешім қабылдап, бағыттайтын сенімді ету тәсілі: нәтиже тармақтарыңыздың біреуіне сәйкес келуіне кепілдік беріледі.
Ішкі агент аяқтағанда жалғыз нәтиже қайтарады. Одан кейін не болатынын сол нәтиже бойынша Condition немесе Always жиектерімен қосыңыз — ішкі агенттің шығуы "AI decides" жиектерін қолданбайды. Сондықтан бағыттаушы ішкі агент үшін Allowed result values + Condition жиектері ұсынылатын үлгі болып табылады.
Message
Message түйіні тұрақты жолды айтады, AI кезегі жоқ, импровизация жоқ. Оны ауысулар үшін ("Бір минут, қазір сізді беремін…"), заңды түрде талап етілетін ескертулер немесе тұжырымдаманың маңызы бар дайын растаулар үшін қолданыңыз.
Text — не айту керек. Жиналған мәндерді енгізу үшін {{variable}} таңбалауыштарын қолдайды, мысалы "Thanks {{first_name}}, I've booked you for {{appointment_time}}."
Message түйіні кезекті жұмсайды — агент оның үстіне басқа ештеңе қоспайды.
Gather input
Gather input түйіні бір сұрақ қойып, қоңырау шалушының жауабын айнымалыға сақтайды.
Prompt — қоятын сұрақ. {{tokens}} қолдайды.
Variable — жауапты сақтайтын слоттың атауы.
Max silence (v2.8) — қоңырау шалушының жауап беруін одан әрі жалғастырмас бұрын қанша уақыт күту керектігіне әр сұраққа арналған шек. Оны әр Gather-input түйініне орнатыңыз, осылайша жылдам иә/жоқ сұрағы ұзын шот нөмірін оқуды сұрайтыннан бұрын аяқталуы мүмкін.
Оны жалғастырмас бұрын нақты мән қажет болған сайын қолданыңыз — email, шот нөмірі, адам саны, проблема санаты. Қоңырау шалушының келесі кезегі мәнге айналады; одан кейін бірден Condition жиегімен тармақтай аласыз.
Update state
Update state түйіні сөйлемей немесе сұрамай жұмыс ағынының айнымалыларына бір немесе бірнеше мән жазады. Оны әдепкілерді алдын ала орнату, барыс жалаушаларын белгілеу немесе алдыңғы қадамдардан есептелген мәндерді дайындау үшін қолданыңыз.
Variable / Value — бір кілт-мән жұбы. More variables (optional) — қосымша кілт-мән жұптары.
Кілттер де, мәндер де {{tokens}} қолдайды, сондықтан бар мәндерден жаңа мәндер жасай аласыз.
Condition
Condition түйіні — тек бағыттауға арналған түйін — ол сөйлемейді, сұрамайды, тек қоңырауды сәйкес келетін шығыс тармаққа жібереді.
Шарттың өзі түйінде емес, әр шығыс жиекте тұрады — төмендегі Condition жиектерін қараңыз.
Графыңызда анық "тарамдалу" нүктесін қалағанда Condition түйінін қолданыңыз: бір айнымалының мәніне тәуелді көптеген тармақтар. Agent-түйіні жиектеріне шарттар қоюмен салыстырғанда, арнайы Condition түйіні бағыттау логикасын визуалды түрде айқын етеді.
Tool
Tool түйіні агенттің қосылған құралдарының бірін граф қадамы ретінде іске қосады — оны шақыру-шақырмауда AI-ға сөз бермей. Оны сөйлесу емес, факт қалағанда қолданыңыз: "осы клиентті іздеу", "қорды тексеру", "ағымдағы ауа райын GET ету".
Сіз не:
- Агенттің бар құралдарының бірін таңдай аласыз (күнтізбе іздеу, білім базасын іздеу, интеграцияның нақты әрекеті), не
- Түйінде тікелей inline HTTP шақыруын конфигурациялай аласыз (URL, әдіс, тақырыптар, параметрлер, body).
Құралдың жауабы барлық төмендегі түйіндерге қолжетімді болады. Егер жауап JSON нысаны болса, әр жоғарғы деңгейлі өріс өз айнымалысына айналады — сондықтан {"is_known": true, "tier": "gold"} сияқты жауап тармақтауыңыз үшін is_known де, tier де жазады.
Tool түйініндегі әр мәтін өрісі — URL, тақырып мәндері, body — {{tokens}} қолдайды. Ешқандай код жазбай айнымалыны URL жолына, тақырыпқа немесе сұраныс body-іне тартыңыз.
Егер құрал шақыруы сәтсіз болса (HTTP қатесі, тайм-аут, желі), түйін сәтсіздікті тіркейді және граф деректерсіз жалғаса береді. Төмендегі шарттарыңызды "мәні жоқ" жағдайын өңдейтіндей жоспарлаңыз.
Knowledge (RAG)
Knowledge (RAG) түйіні — білім базасынан шығарып алуға бағытталған Tool нұсқасы. Агенттің білім базаларының бірін таңдап, іздеу сұранысын жазыңыз (қаласаңыз {{tokens}} арқылы), және түйін іздеуді граф қадамы ретінде іске қосады.
Оны жұмыс ағыны Agent түйіні сөйлемес бұрын бірдеңе іздеп табуын қалағанда қолданыңыз — мысалы, клиенттің ең соңғы тапсырысын алу, осылайша келесі Agent түйіні оны сұрамай-ақ атап өте алады. Алынған мазмұн промпттар мен хабарламаларға тартатын айнымалыға түседі.
Integration
Integration түйіні — қосылған сыртқы қызметтерге арналған Tool-дың бағытталған нұсқасы — Google Calendar, Outlook, HubSpot. Провайдер мен нақты әрекетті таңдайсыз (мысалы, check_availability, create_event), параметрлерді орнатасыз, және түйін интеграцияны детерминистік түрде шақырады.
Егер интеграция осы агентте қосылмаған болса, түйін ештеңе істемей өтіп кетеді — графыңыз жалғасады. Төмендегі шарттарды "іске қосылмады" жағдайына тексеріңіз.
Phone transfer
Phone transfer түйіні қоңырауды сыртқы телефон нөміріне жылы береді. Сәтті беруден кейін қоңырау жұмыс ағыныңыздан кетті — агентіңіз енді желіде емес.
Number — халықаралық пішіндегі, алдында + тұрған мақсат (мысалы, +15551234567). {{tokens}} қолдайды, сондықтан мақсат алдыңғы қадамнан келуі мүмкін (мысалы, "сізді қай кеңсеге қосайық?" сұрағының жауабы).
Егер беру өтпесе (жарамсыз нөмір, жауап жоқ, телефон қосылымы орнатылмаған), граф кері оралады және ағымдағы агент желіде қалады. Сөйлесу қалыпты жалғасады — агент кешірім сұрап, басқа жолды сынай алады.
End call
End call түйіні аяқтайды — агент конфигурацияланған қоштасуды айтып, содан кейін ажыратады. Оны "бәрі бітті" тармақтары үшін таза аяқтауыш ретінде немесе өңдеу қиын Condition-нан "көмектесе алмаймыз, кешіріңіз" тармағы үшін қолданыңыз.
Оған жиекті қосудан басқа ешқандай конфигурация қажет емес.
Жұмыс ағынын қайта қолдану (Sub-workflow)
Sub-workflow түйіні басқа жұмыс ағынын ішкі граф ретінде кірістіруге арналған. Бұл түйін редакторда бар, бірақ әлі толық қосылмаған — граф оның арқылы ештеңе істемей өтіп кетеді. Оған өндірістік қоңыраулар үшін сенбеңіз. Қайта қолданылатын ішкі графтарды шығарған соң оны қосамыз.
Жиектер (Байланыстар)
Бір түйінді келесіне жиекпен қосасыз. Жиектің триггері ауысу қашан іске қосылатынын шешеді.
Үш триггер бар:
| Триггер | Кім шешеді | Ол қашан іске қосылады |
|---|---|---|
| AI decides | AI | Сөйлесу оны табиғи келесі қадам еткенде. AI шақыра алатын "ауысу құралын" алады. |
| Condition | Орындау ортасы | Айнымалы сіз жазған ережеге сәйкес келгенде. AI жауап бермес бұрын бағаланады. |
| Always | Орындау ортасы | Шартсыз — бастапқы түйін аяқталған сәтте. Қоңырау шалушы енгізуі жоқ, AI қатыспайды. |
AI decides (ниетке негізделген)
Тек AI ғана қашан ауысу керектігін айта алғанда AI decides қолданыңыз — "егер қоңырау шалушы баға туралы сұраса, сату агентіне беру", "егер шағым сияқты естілсе, кешірім сұрау ішкі агентін іске қосу".
Жиекте қысқа ниет сипаттамасын жазасыз (мысалы, "Caller asks about pricing or wants to upgrade"). AI оны сол ниетпен таңбаланған құрал ретінде көреді және сөйлесуге сүйене отырып оны шақыру-шақырмауды шешеді. Бірнеше AI-decides жиегі болса, AI әр кезекте ең көбі біреуін таңдайды.
Condition (детерминистік тармақтау)
Графтың — AI-дың емес — белгілі факт бойынша шешім қабылдауын қалағанда Condition қолданыңыз: "егер lead_score is more than 7 болса, жабушыға жіберу; әйтпесе қоңырауды сыпайы аяқтау".
Шарттар AI жауап бермес бұрын бағаланады, сондықтан олар сол кезекте әрдайым AI-дан жеңеді. AI сәйкес келетін шартты қайта анықтай алмайды.
Шартты мына операторлардан құрастыра аласыз:
| Оператор | Мағынасы | Мысал |
|---|---|---|
| is | дәл сәйкестік (мәтін үшін регистрге сезімтал емес) | intent is "billing" |
| is not | сәйкес келмейді | status is not "active" |
| contains | ішкі жол сәйкестігі (регистрге сезімтал емес) | feedback contains "broken" |
| is more than | сандық > | lead_score is more than 7 |
| is less than | сандық < | wait_minutes is less than 5 |
Сондай-ақ All (әр пункт сәйкес келуі керек — AND) немесе Any (кем дегенде біреуі сәйкес келуі керек — OR) арқылы пункттерді біріктіре аласыз және оларды кірістіре аласыз. Сонда "қоңырау шалушы белгілі және оның деңгейі gold немесе premium" сияқты ереже былай болады:
All:
- is_known is true
- Any:
- tier is gold
- tier is premium
Егер әлі орнатылмаған айнымалыға сілтеме жасасаңыз (мысалы, AI оны ешқашан жинамаған), оған қатысты шарттар әрдайым сәтсіз болады — олар қате бермейді, тек сәйкес келмейді. Сонымен loyalty_tier is "gold" егер loyalty_tier ешқашан орнатылмаса, false қайтарады. Тармақтарыңызды мұны өңдейтіндей жобалаңыз — әдетте else тармағымен (төменде қараңыз).
Else тармағы — ешбір шарт сәйкес келмегенде
Егер түйіннен шығатын бірнеше Condition жиегіңіз болса және олардың ешбірі сәйкес келмесе, қоңырау ең төмен басымдықты Condition емес жиекке (Always немесе AI-decides жиегіне) құлайды. Егер мүлдем қосалқы нұсқа болмаса, AI басқаруды қайта алады және еркін жалғастыра алады.
Жиі кездесетін үлгі: белгілі жолдарға арналған бірнеше Condition, оған қоса бәрін ұстайтынға Always жиегі (бірдеңе Message, содан кейін End call немесе беру).
Always (авто-жылжу)
Келесі қадам шартсыз болғанда Always қолданыңыз — шешім жоқ, қоңырау шалушы енгізуі жоқ. Екі табиғи қолданысы:
- Қадамдарды тізбектеу: Message → Update state → Message → Tool → Condition. Әр қадам аяқталады және Always жиегі бірден алға жылжиды.
- Агент сөйлеп болғаннан кейін авто-жылжу: Always шығыс жиегі бар agent түйіні "AI сөйлеуді тоқтатқан сәтте алға жылжу" дегенді білдіреді — қоңырау шалушының жауап беруі қажет емес. Жеткізіп болғаннан кейін келесі бөлімге ауысатын презентер агент сияқты монолог-стильді ағындар үшін пайдалы.
Condition және Always (детерминистіктер) әрдайым AI decides-тен жеңеді. Егер Condition сәйкес келсе, сол кезекте AI-дың ауысу құралдары еленбейді. Дәл осы сізге AI айналып өте алмайтын ережелер жазуға мүмкіндік береді.
Тармақ реті
Бірнеше жиек бір түйіннен шыққанда, редактор жолдарды жоғары немесе төмен сүйреп, басымдық орнатуға мүмкіндік береді. Төмен басымдықты тармақтар алдымен тексеріледі. Бұл тек екі тармақ бір кезекте іске қосыла алатын кезде маңызды — әдетте ережелері қабаттасатын екі Condition жиегі. Бірінші сәйкес келетін тармақ жеңеді.
Контекстті тасымалдау — келесі агент қаншалықты есте сақтайды
Әр жиекте келесі түйін сөйлесу транскриптінің қаншасын көретінін басқаратын Carry context параметрі бар:
- Full transcript (әдепкі) — келесі агент осы уақытқа дейін айтылған бәрін көреді.
- Summary only — платформа алдыңғы сөйлесуді қорытындылап, келесі агентке қысқаша қорытынды береді.
- Nothing — келесі агент алдыңғы транскриптсіз, жаңадан бастайды.
Әр сөзді қажет етпейтін маман агентке тапсырғанда Summary only қолданыңыз — бұл токендерді үнемдеп, жаңа агентті бағытталған ұстайды. Жаңа агенттің тұлғасы бөлек болуы керек тармақтар үшін Nothing қолданыңыз (мысалы, қоңыраудың соңындағы қанағаттану сауалнамасы).
Айнымалылар
Айнымалылар — жұмыс ағынының жады. Жұмыс ағынындағы көп нәрсе не айнымалыны орнату, не оны оқу туралы.
Айнымалыларды жариялау
Variables панелі (құралдар тақтасының батырмасы) жұмыс ағынындағы әр айнымалыны, әрқайсысын орнататын немесе оқитын қадамдармен бірге көрсетеді. Орнатушыға өту үшін айнымалыны басыңыз; бұл — бірдеңе қайда бұзылып жатқанын табудың ең жылдам жолы.
Панельде әдепкі мәні бар айнымалы жариялай аласыз — шарттарыңыз "жоқ" деп үнсіз сәтсіз болмас үшін бастан бар болуы керек escalated=false сияқты жалаушалар үшін пайдалы.
Кіріктірілген қоңырау айнымалылары
Бірнеше айнымалы әр қоңыраудың басында сіз үшін толтырылады — оларды жарияламайсыз да, орнатпайсыз да, олар тек оқуға арналған:
| Айнымалы | Ол нені сақтайды |
|---|---|
{{call_from}} | Қоңырау шалушының телефон нөмірі |
{{call_to}} | Терілген нөмір (сіздің нөміріңіз) |
{{call_direction}} | inbound немесе outbound |
Олар бірінші сәттен бастап бар болғандықтан, оларға ең бірінші түйінде тармақтай аласыз — мысалы, белгілі VIP-ті атымен қарсы алу үшін call_from бойынша Condition, ел коды бойынша бағыттау немесе басқа ештеңе болмас бұрын белгісіз нөмірлерді тексеру жолына жіберу.
Айнымалылар қалай орнатылады
| Дереккөз | Мысал |
|---|---|
| Default values (Variables панелінде жарияланған) | Қоңырау басталмас бұрын escalated = false орнатылады |
| Gather input | Қоңырау шалушының айтқан жауабы түйіннің айнымалысына түсіріледі |
| Update state | Мәнді (тікелей немесе {{tokens}}-нан құрастырылған) тікелей жазасыз |
| Tool / Integration нәтижесі | Бүкіл жауап түйіннің атымен сақталады; егер жауап JSON нысаны болса, әр жоғарғы деңгейлі өріс те өз айнымалысына айналады |
| Subagent return | Ішкі агент немен аяқтаса, сол subagent түйінінің return айнымалысында сақталады |
Айнымалыларды оқу — {{tokens}}
Түйінде мәтін тере алатын кез келген жерде — agent промпты, Message мәтіні, Gather промпты, Tool URL / body / тақырыптар, Phone transfer нөмірі, Update state мәні, шарт мәндері — {{variable}} тастай аласыз және ол орындау кезінде ауыстырылады.
Кірістірілген деректер үшін нүктелі жолдар да жұмыс істейді — мысалы, егер Tool жауабы {"customer": {"name": "Anna", "tier": "gold"}} болса, {{customer.name}} немесе {{customer.tier}} оқи аласыз.
Егер таңбалауыш жоқ айнымалыға сілтеме жасаса, тікелей {{name}} мәтіні орнында қалады (ол өшірілмейді). Бұл әдейі жасалған — ол бұзылған үлгілерді үнсіз жұтудың орнына сынақ қоңырауында оңай байқауға мүмкіндік береді.
Жиі кездесетін үлгілер
Qualify → Branch → Route
Start
└─ Agent (greeting + qualify)
└─ Gather input (intent)
└─ Condition: intent == "sales" → Agent (sales)
└─ Condition: intent == "support" → Subagent (triage)
└─ Always (catch-all) → Message "Let me connect you" → Phone transfer
Lookup → Personalise
Start
└─ Tool (CRM lookup, writes is_known, name, tier)
└─ Condition: is_known == true → Agent (warm greeting with {{name}})
└─ Always (else) → Agent (cold greeting)
Reusable Helper (Subagent side-trip)
Agent (main conversation)
└─ AI decides: "Caller mentions an address" → Subagent (address collector)
└─ on finish: result = full_address
└─ Agent continues with {{full_address}}
Жұмыс ағыны қоңырауы кезінде не құлыпталады
Граф қоңырауды басқарғанда бірнеше әдепкі өзгереді:
- Тіл құлыпталады — жұмыс ағынының бірінші агенті қолданатын тілге. AI қоңырау ортасында тілдерді ауыстыра алмайды. Бұл модельдің шулы кезекте қате тілге ауытқуын болдырмайды.
- Агенттің негізгі промпты ауыстырылады белсенді түйіннің промптымен. Бұл — "граф тұлғаға ие болады" ережесі — Agent астындағы ескертуді қараңыз.
- Алғашқы хабарлама кіру түйінінің сәлемдесуінен келеді, агенттің негізгі "Begin Message" өрісінен емес.
Цикл қауіпсіздігі — Қадам бюджеті
Әр жұмыс ағынының әр қоңырауға максималды ауысу саны бар (әдепкі 25). Граф жаңа түйінге әр жылжыған сайын есептегіш бірге азаяды. Ол нөлге жеткенде, жұмыс ағыны бақылаусыз циклдерді болдырмас үшін түйіндер арасында секіруді тоқтатады.
Бұл жағдай үшін қосалқы түйінді таңдай аласыз (әдетте Phone transfer немесе End call) — бюджет біткен соң қоңырау сонда бұрылады. Әйтпесе AI басқаруды қайта алады және граф қоңыраудың қалған бөлігі үшін іс жүзінде тоңады.
Бұл туралы ойлауыңыз өте сирек қажет — бұл кездейсоқ циклге түсетін графтарға арналған қауіпсіздік торы. Егер оған қалыпты қолданыста кезіксеңіз, бір жерде цикліңіз болуы мүмкін.
Сынау
Редактордағы Test Call батырмасы ағымдағы жұмыс ағыны нобайымен браузердегі қоңырауды ашады. Қоңырау жүріп жатқанда кенептегі түйіндер арасында жарқыраған от-құрты жылжиды, осылайша қоңыраудың дәл қайда екенін көре аласыз. Редактор сынақ қоңырауы кезінде өңдеулердің тікелей күймен синхрондалуын болдырмау үшін құлыпталады.
Мынаны тексеру үшін Test Call қолданыңыз:
- Шарттарыңыз күткен мәндерге сәйкес келеді (от-құрты іске қосылады деп ойлаған тармақты өткізіп жіберуін бақылаңыз).
- Таңбалауыштарыңыз дұрыс ауыстырылады (мән әлі орнатылмаса, бос қалған
{{name}}естіліп қалуын тыңдаңыз). - Құрал сәтсіздіктері бірқалыпты деградацияланады (қосалқы жолыңыз шынымен іске қосылады).
Білуге тұрарлық сәтсіздік режимдері
| Жағдай | Не болады |
|---|---|
| Tool / Integration шақыруы сәтсіз | Граф деректерсіз жалғасады. Төмендегі шарттарыңыз жоқ айнымалыны өңдеуі керек. |
| Phone transfer сәтсіз (жарамсыз нөмір, жауап жоқ, телефон қосылымы жоқ) | Граф кері оралады, ағымдағы агент желіде қалады және сөйлесу қалыпты жалғасады. |
| Ішкі агент іске қосыла алмайды | Жолшыбай сапар тоқтатылады, аталық агент желіде қалады және қысқа сәтсіздік жолы айтылады. |
Мәтіндегі {{missing_variable}} | Шығуда тікелей қалады — сынақ қоңырауларында оңай байқалады. |
| Sub-workflow түйіні | Қазіргі уақытта ештеңе істемей өтіп кетеді. Әзірге оған сенбеңіз. |
| Қадам бюджеті таусылды | Орнатылған болса қосалқы түйінге бұрылады, әйтпесе AI басқаруды қайта алады. |
Жұмыс ағынын қашан қолданбау керек
Жұмыс ағындары қуатты, бірақ олар әр агент үшін дұрыс жауап емес. Мынадай кезде жалғыз промптпен қалыңыз:
- Сөйлесу шектеусіз ("қоңырау шалушының өнімдеріміз туралы сұрақтарына жауап беру").
- Сізде нақты тармақтау логикасы жоқ — көпшілік шешімдер AI жақсы өңдейтін пайымдау шешімдері.
- Сіз бір agent түйіні мен бір End call жазатын едіңіз — бұл жай ғана артық қадамдары бар промпт.
Мынадай кезде жұмыс ағынын қолданыңыз:
- Қоңырауды үш немесе одан көп нақты кезеңі бар блок-схема ретінде сызып бере аласыз.
- Сізге айнымалыға кем дегенде бір детерминистік тармақ керек (Condition).
- Сіз сөйлесудің бір бөлігін бірнеше агент арасында қайта қолданғыңыз келеді (ішкі агент).
- Сіз промптқа "егер қоңырау шалушы X десе Y істе" ережелерін үйіп жатырсыз және олар сенімді емес.