Loading presentation…

Elastic Agent Builder

Telco Persona Agent Demo

Role-based AI assistants for carriers — grounded in live knowledge, deployable online or air-gapped.

Agent Builder + semantic search T-Mobile KB 4 personas Jina Reader + embed Next.js / Vercel UI Offline RAG path
Elasticsearch Jina Reader T-Mobile v1

GitHub  ·  Slides  ·  Live chat demo  ·  advance  ·  O overview

Why persona agents for telco

Generic chat fails operations teams. Each role needs different tone, tools, and grounding — with proof it works offline.

Role mismatch

NOC, care, billing, and retail need different escalation paths and vocabulary.

Stale knowledge

Plans, promos, and support flows change faster than model training cycles.

Hallucination risk

Billing and network guidance must cite approved carrier content.

Air-gap demos

Enterprise buyers often require offline proof without live cloud calls.

Vision: One repeatable platform — crawl carrier content, index with semantic search, deploy role-specific Agent Builder personas, and demo online or air-gapped from an exported snapshot.

Platform at a glance

4Personas
1Carrier (v1)
2Demo modes
22k+KB chunks
1 · Ingest Jina Reader crawl chunk + embed 2 · Index telco-tmobile-kb semantic_text 3 · Agents 4 personas + index_search tool 4 · Demo Vercel UI or offline RAG

End-to-end flow · bootstrap with ./scripts/bootstrap-online.sh

Architecture

Three paths share one knowledge index — online prep, live Agent Builder demo, and air-gapped RAG.

ONLINE PREP LIVE DEMO OFFLINE Seed URLs Jina Reader Chunker Elasticsearchtelco-tmobile-kb Agent Builderdeploy agents Next.js UI /api/converse KibanaAgent Builder KB search tool Index export Local ES /api/rag Ollama (opt) Shared index: telco-tmobile-kb

Knowledge pipeline

From public T-Mobile content to grounded Agent Builder search — four stages, one bootstrap script.

1 · Crawl

t-mobile.com

Jina Reader · BFS · markdown

2 · Chunk

~1k tokens

Heading splits · persona tags

3 · Index

telco-tmobile-kb

semantic_text · jina-embeddings-v3

4 · Deploy

index_search tool

4 persona agents · Agent Builder

ingest/crawl.py 200 pages · seed URLs ingest/chunk.py 22k+ chunks ingest/index.py Serverless bulk agents/deploy.py tools + personas /chat

Crawl · ingest/crawl.py

BFS from seed URLs · Jina Reader API · persona tags from URL paths

Index · ingest/index.py

semantic_text · Serverless bulk ingest · jina-embeddings-v3

Deploy · agents/deploy.py

telco-tmobile-kb-search tool + 4 persona agents

Grounding rule: search KB first, cite source URLs, never invent pricing or policy · ./scripts/bootstrap-online.sh

Four T-Mobile personas

Same knowledge index — different instructions, tone, and starter prompts per role.

telco- tmobile-kb NOC Engineer tmobile-noc-engineer Customer Care tmobile-customer-care Billing Ops tmobile-billing-ops Retail Sales tmobile-retail-sales

NOC Engineer

tmobile-noc-engineer

Outages · 5G/core · coverage · business escalation

Customer Care

tmobile-customer-care

Plans · devices · troubleshooting · support articles

Billing Ops

tmobile-billing-ops

Invoice lines · disputes · payments · proration

Retail Sales

tmobile-retail-sales

Promotions · upgrades · trade-in · in-store offers

Demo modes & UI

ONLINE Reasoning Agent Builder (Kibana) API /api/converse/stream Search Serverless ES + inference Bootstrap bootstrap-online.sh OFFLINE Reasoning Ollama or retrieval-only API /api/rag Search Docker ES + snapshot Run run-offline-demo.sh

Next.js chat · Vercel

  • Carrier + role picker → routes agent_id
  • SSE streaming with sync fallback
  • Role-specific starter prompts
  • Links to slides + GitHub in header
POST /api/agent_builder/converse
{
  "agent_id": "tmobile-customer-care",
  "input": "What unlimited plans
            does T-Mobile offer?"
}

Env: KIBANA_BASE_URL must use .kb. hostname, not .es.

Live demo walkthrough

~8 minutes · same KB, four roles — watch tone and grounding change.

01

Set context

"Same index, four personas — each searches before answering."

02

Customer Care

"What unlimited plans does T-Mobile offer?" → cites KB URLs

03

NOC Engineer

"How do I verify 5G coverage for a business address?"

04

Billing Ops

"Where can customers see line-level charges?"

05

Retail Sales

"What should I highlight for a family plan upgrade?"

06

Offline path

Local ES + /api/rag without Kibana connectivity

git clone git@github.com:poulsbopete/telco-agent.git
./scripts/bootstrap-online.sh
npm install && npm run dev  →  /chat

Thin answer? KB freshness depends on crawl date — rerun bootstrap to refresh public T-Mobile content.

Stack & roadmap

Elastic

  • Cloud Serverless
  • semantic_text + jina-embeddings-v3
  • Agent Builder + index_search

Jina

  • Reader (r.jina.ai)
  • Embeddings via ES inference
  • Optional chat model in Kibana

App layer

  • Python ingest + deploy
  • Next.js / Vercel UI
  • Docker ES offline
AT&T / VerizonSeed YAML + persona templates per carrier
NOC telemetryFault injection + observability layer
ES|QL toolsStructured plan lookup & error codes
CIVercel deploy + index freshness checks

v1 is demo-ready: T-Mobile KB, four personas, dual online/offline paths.

Questions?

Repository · slides · live chat — one platform.

GitHub Repo Live Chat Slides

Telco Persona Agent Demo · Elastic + Jina · T-Mobile v1