AWS for Industries

Building AI Agents for Telecom Network Operations

When a critical Packet Forwarding Control Protocol (PFCP) path failure alarm fires on a 5G N4 interface at 3 AM, a network operations center (NOC) engineer has minutes, not hours, to determine whether it is a root cause or a symptom. The answer lives scattered across the event management system, 3rd Generation Partnership Project (3GPP) specifications, vendor documentation, and key performance indicator (KPI) dashboards. Senior engineers carry this correlation logic in their heads. Junior engineers escalate.

This post shows how to close that gap with AI agents that reason about telecom alarms the way a senior engineer does using a portable, framework-agnostic skill that packages 3GPP standards, vendor equipment procedures, and event correlation patterns into structured domain knowledge. Teams adopt whichever agent framework fits their operating model – Strands Agents, LangChain/LangGraph, or Amazon Bedrock Agents, without rewriting the skill.

Business challenge

Consider a mobile network operator running a nationwide 4G and 5G network. Operations engineers face four compounding problems:

  1. Alarm correlation at scale. A single transport link failure can cascade into dozens of downstream alarms across GTP-C, PFCP, Diameter, and SCTP. Identifying the root cause among hundreds of events is slow, error-prone, and depends heavily on operator experience.
  2. Erosion of tribal knowledge. Senior engineers who know that a GTP-C path failure toward the PGW usually points to a transport issue rather than a core node failure are rotating out or retiring. That knowledge sits in heads, not runbooks.
  3. Inconsistent triage across shifts. Different shifts handle the same alarm types differently, producing variable Mean Time to Resolution (MTTR) and inconsistent escalation decisions.
  4. Manual correlation overhead. Engineers cross-reference event management alarms, 3GPP specs, vendor documentation, and KPI dashboards by hand. Each minute spent correlating is a minute subscribers are impacted.

Static runbooks and keyword-based alarm filters cannot capture the contextual reasoning that effective triage requires. Operators need a mechanism that gives AI agents structured domain knowledge—without locking them into a single framework or requiring model fine-tuning each time a new network element (NE) type ships.

Solution overview

This post introduces a knowledge-as-code approach: domain expertise packaged into a portable skill that any modern agent framework can load. We illustrate the pattern with a telecom network operations skill. The design separates the reasoning framework from the reference data, keeping prompts small while giving the agent access to thousands of lines of domain detail on demand.

Why skills over existing approaches

Existing automation approaches each address part of the problem but fall short on their own:

Limitation of existing approach How skills address it
Rule engines cannot compose across domains Skills encode reasoning procedures that work across packet core, transport, and cloud-native domains based on alarm properties, not hardcoded IDs
Fine-tuned models require retraining Skills are updated by editing a markdown file — deployable in minutes, version-controlled, reviewable
RAG returns fragments, not workflows Skills load complete, ordered triage procedures into the system prompt. RAG serves as the deep lookup layer for the long tail
Prompt engineering hits token limits Skills separate the reasoning framework (small) from reference data (loaded on demand)

Table 1. Why skills over existing approaches.

A well-structured telecom operations skill consists of four components:

  1. SKILL.md—a concise markdown file containing triage procedures, KPI methodology, and domain navigation logic. It tells the agent how to think about telecom problems.
  2. Reference files—domain-specific markdown files covering 3GPP interfaces, UPF and PGW alarm patterns, event management correlation, KPI formulas, transport routing, cloud-native packet core, and more. These contain the what.
  3. Operational scripts—Python utilities for alarm parsing, storm detection, baseline anomaly checking, KPI calculation, config auditing, and Method of Procedure (MOP) generation.
  4. Framework adapters—reference implementations showing how to load the skill into Strands Agents (native support), LangChain/LangGraph (manual wiring), and Amazon Bedrock Agents (inline agent with return-control).

Skill definition

A skill is a markdown file. The YAML front-matter provides machine-readable metadata; the body provides the agent’s reasoning procedures:

---
name: telecom-network-ops
description: >
  Alarm correlation and triage for 3GPP packet core networks.
allowed-tools: file_read
---
 
# Telecom Network Operations
 
## Alarm Triage
When triaging alarms, follow this procedure:
1. Identify alarm severity and affected Managed Object
2. Determine whether the alarm is service-affecting
3. Look up alarm ID in vendor documentation
4. Distinguish root cause from symptom (cascading alarm analysis)
5. Recommend corrective action with rollback plan
 
## When to Escalate
Escalate immediately if: ...

The allowed-tools declaration restricts what the agent can do in this case, only file reading. No shell execution, no network calls. The numbered procedures give the agent step-by-step logic it can follow deterministically, the same way a senior engineer would work through an alarm.

Architecture

Figure 1 shows how the telecom-network-ops skill turns raw signals — alarms and KPI metrics — into a triage recommendation through a layered context architecture, in which the agent starts from a small, always-resident reasoning core and reaches outward to progressively larger bodies of knowledge only when a given signal demands it.

Figure 1. Architecture of the three-layer telecom-network-ops skill-based reasoning logic

Figure 1. Architecture of the three-layer telecom-network-ops skill-based reasoning logic

The Reasoning layer is SKILL.md, which holds the triage procedure itself — cascade detection, root-cause-versus-symptom logic, KPI methodology, and escalation rules — loaded once into the system prompt and kept resident so the model follows it deterministically. The Reference layer is the set of domain files (3GPP interface semantics, alarm patterns, KPI formulas, transport routing, cloud-native packet core) that supply structured detail on demand, read through a file-read tool so the base prompt stays small. The Retrieval layer is an Amazon Bedrock Knowledge Base that indexes the long tail of vendor documentation, 3GPP specifications, and historical incident reports and returns the specific description or procedure the agent needs at query time.

On AWS, raw signals stream in through Amazon EventBridge to the agent runtime hosted on Amazon Bedrock AgentCore (framework-agnostic across Strands Agents, LangChain/LangGraph, and others). The Reasoning and Reference layers are served from a single Amazon S3 skill bundle — SKILL.md loaded once and reference files fetched on demand with GetObject — while the Retrieval layer is backed by Amazon OpenSearch Serverless for vector search over documents ingested from Amazon S3. The agent calls an Amazon Bedrock foundation model to reason at each step, and it delivers the result through Amazon SNS to the on-call engineer.

For any incoming signal the agent works from the core outward and stops as soon as it has enough to act: it applies the resident SKILL.md procedure, reads the affected domain’s reference file only if it needs more detail, falls back to the Knowledge Base via RAG only when the alarm ID or detail isn’t covered locally, and then composes a root cause with recommended actions or escalates ambiguous, high-risk, service-affecting changes to a human with a MOP and rollback plan.

Because the layers form a fallback hierarchy, the same skill handles a common cascade (a PFCP N4 path failure driving a GTP-C symptom) with reasoning alone in seconds, an interface- or KPI-detail question with a single reference-file read, a rare vendor alarm ID with a Retrieval fallback to the Knowledge Base, and an ambiguous, high-risk change by routing to a human — keeping the agent fast and deterministic for everyday signals while preserving full coverage for the long tail, since adding a new node type means writing a new reference file or extending the corpus rather than retraining anything.

Domain coverage

Domain Reference knowledge needed Key topics
Core control plane Session management procedures, signaling flows GTP-C, Diameter, SIP
Core user plane Bearer analysis, forwarding rules PFCP, GTP-U, bearers
Transport Routing convergence, link aggregation BGP, OSPF, MPLS, LAG
RAN Handover analysis, fronthaul monitoring S1-AP, X2, fronthaul
Cloud-native packet core CNF lifecycle, pod health correlation Kubernetes, Helm, CNF
5GC Service-Based Interface Service registration, discovery failures HTTP/2, NRF, SCP
Event correlation Cascade patterns, storm detection logic Temporal grouping, topology
Security Tunnel failures, certificate expiry IPsec, certificate mgmt
Platform & hardware Physical fault isolation Blade, power, cooling
3GPP interfaces Interface-specific alarm semantics N1–N40, Gx, Gy, Ro
KPI analysis Threshold methodology, baseline comparison Attach success, throughput

Table 2. Domain coverage blueprint. Each domain maps to a reference file loaded on demand. Adding a new node type requires writing a new reference file, not retraining anything.

Cascade detection

A naive approach groups alarms by severity and presents them as a list — exactly what a human engineer is already drowning in. The cascade detection algorithm instead applies the correlation logic a senior engineer uses.

Figure 2. Cascade detection algorithm: sort by timestamp, match infrastructure keywords, classify root cause vs. symptom, surface first candidate per site.

Figure 2. Cascade detection algorithm: sort by timestamp, match infrastructure keywords, classify root cause vs. symptom, surface first candidate per site.

The algorithm follows four steps after ingestion:

  • Sort alarms by timestamp within each site. The earliest event is usually the root cause.
  • Match alarm summaries against infrastructure-level keywords (PFCP Path, GTP Path Failure, SCTP, Link Failure, Power, Card, and so on).
  • Classify each alarm as either a root-cause candidate or a symptom.
  • Surface the first root-cause candidate per site and count the downstream symptoms.
def detect_cascades(alarms):
    """Detect cascading alarm patterns by site.
    This is an example implementation. Production deployments should:
    - Tune the keyword list for their vendor's alarm taxonomy
    - Adjust the minimum alarm threshold based on network size
    - Add baseline normalization for high-traffic vs. edge nodes
    """
    infrastructure_keywords = [
        "PFCP Path", "GTP Path Failure", "GTP Peer", "SCTP",
        "RADIUS", "Transport", "Link Failure", "EthernetPort",
        "Power", "Card", "Configuration Modified",
    ]
    cascades = []
    by_site = group_by_site(alarms)
    ...

Note: The parameters above (keyword list, minimum alarm count of 3) serve as a starting point. Production deployments should tune these values to match their network’s baseline event volume, vendor-specific alarm naming conventions, and network topology scale.

End-to-end walkthrough

Two alarms arrive from the event management system:

[
  {
    "node": "UPF-LOCATION-01",
    "severity": 5,
    "summary": "PFCP path failure on N4 interface",
    "firstoccurrence": "2024-03-15 08:23:14"
  },
  {
    "node": "SMF-LOCATION-01",
    "severity": 4,
    "summary": "GTP-C path failure towards PGW",
    "firstoccurrence": "2024-03-15 08:23:18"
  }
]

The agent works through four steps:

  • Cascade classification. It recognizes “PFCP path failure” as an infrastructure-level alarm on the UPF and classifies the GTP-C path failure as a likely downstream symptom.
  • Reference lookup. It reads the relevant packet core reference file to confirm the N4 interface’s role and the alarm patterns reference for PFCP triage steps.
  • Correlation. The timing (four seconds apart) and the upstream/downstream relationship confirm the hypothesis.
  • Recommendation. It produces a structured output:
Root cause: PFCP path failure on N4 interface (UPF-LOCATION-01)
Impact    : Service-affecting. N4 carries PFCP session management
            between SMF and UPF. Failure blocks new session setup.
Symptom   : GTP-C path failure towards PGW (SMF-LOCATION-01)

Recommended actions:
  1. Verify N4 connectivity between SMF and UPF
  2. Check SCTP association status on UPF-LOCATION-01
  3. Verify routing between SMF and UPF management networks
  4. Review recent configuration changes on the N4 interface
  5. If SCTP is down, investigate transport layer (BGP, OSPF, LAG)

In our testing with 47 alarms using Amazon Bedrock (Claude 3.5 Sonnet), the agent produced a triage recommendation in approximately 20 seconds compared to an estimated 30+ minutes of manual correlation by an L1 engineer triaging the same alarm set without automation. Individual results will vary based on network complexity and model selection.

Framework integration patterns

The skill is framework-agnostic by design. Here is how it integrates with three common approaches:

Strands Agents

Native skill loading. Point the agent’s skills_dir at the skill folder. SKILL.md is automatically parsed and reference files are accessible via the built-in file_read tool.

LangChain/LangGraph

Load SKILL.md content into the system prompt and expose reference files through a custom FileReadTool. Graph-based workflows can route alarm triage to a specialized node with the skill pre-loaded.

Amazon Bedrock Agents

Inline agent with return-control. Pass the skill instructions as the systemPrompt and define an action group with a file_read function. Use RETURN_CONTROL invocation type so the orchestrator can serve file content back to the model without leaving the agent loop.

Complementing Amazon Bedrock Knowledge Bases

Skills handle procedural reasoning (“how do I triage this?”) while Amazon Bedrock Knowledge Bases handle deep factual lookup across large corpora. In production, wire both:

  • The agent loads the skill for triage logic and reference files for immediate context.
  • For deep lookups—searching thousands of vendor release notes or historical incident reports—the agent queries a Knowledge Base via RAG.
  • The skill’s procedures tell the agent when to escalate to RAG vs. when local reference files suffice.

Conclusion

AI agents become genuinely useful in telecom operations when they reason with the same structured logic a senior engineer does. The telecom-network-ops skill makes that possible by separating how to think (SKILL.md) from what to know (reference files), providing operational scripts that turn reasoning into action, and integrating cleanly with whichever framework fits your team’s operating model. When combined with Amazon Bedrock Knowledge Bases for deep lookup, the result is a production-ready architecture that scales across vendors, protocols, and operational domains.

Getting started: To build a similar skill for your network, start by identifying the 3–5 highest-volume alarm categories your NOC handles today. Write triage procedures as numbered markdown steps, create reference files for each domain, and wire them into your preferred agent framework. Extend iteratively—each new reference file expands the agent’s coverage without changing the reasoning logic.

Related reading

  1. Reinvent Telecom Mediation Systems with Amazon Bedrock AgentCore, Strands Agents, and the Model Context Protocol
  2. Amazon Bedrock Agents documentation
  3. Amazon Bedrock Knowledge Bases documentation
Gouthami Gurram

Gouthami Gurram

Gouthami Gurram is a Senior Professional at Amazon Web Services (AWS) Telco, Media, Entertainment, Gaming and Sports, where she collaborates with global customers to build cutting-edge, data-driven AI solutions. With a deep expertise in Observability, Generative AI & data platforms, Gouthami empowers customers to drive innovation and mature in their data intelligence journey.

Bridget Huang

Bridget Huang

Bridget Huang is an AWS Generative AI Specialist Engineer and holds two US patents in the field. She is passionate about helping customers push the boundaries of generative AI — navigating the complexity of taking generative AI from prototype to production-grade maturity, with seamlessly integrated solutions built on Amazon Bedrock, Amazon SageMaker, Amazon Bedrock Agentcore and the broader AWS ecosystem. Her current focus areas include agentic AI architecture and the end-to-end LLM lifecycle.