This is a telecom customer service multi-agent system built with LangGraph and Chainlit. It demonstrates how AI agents can handle various telecom support scenarios including network issues, billing inquiries, technical support, and service management. Read our blog for implementation details, metrics and how to use Galileo in the console.
This app is a customer service chatbot for the fictional telecom provider, ConnectTel. The system uses multiple specialized agents to handle different aspects of telecom customer support, all orchestrated by a supervisor agent.
- Multi-Agent Architecture: Specialized agents for different telecom domains
- Mock Data System: No live APIs required except Pinecone - perfect for demos and testing
- Realistic Scenarios: Simulates real telecom support interactions
- Comprehensive Coverage: Handles network, billing, technical, and service issues
Ask the bot about:
- 💰 Billing & Usage: Review bills, track data usage, understand charges
- 🔧 Technical Support: Troubleshoot connectivity issues, configure devices
- 📊 Plan Recommendations: Get personalized plan suggestions based on usage
- LangGraph: Agent orchestration and workflow management
- Chainlit: User interface for chat interactions
- Pinecone: Vector database for knowledge retrieval
- Galileo: Monitoring and evaluation platform
The system consists of three specialized agents, all coordinated by a supervisor:
Handles all billing-related inquiries, usage tracking, and account management.
Tools: BillingTool
- Check account balance and due dates
- Track data, voice, and text usage
- Review billing history
- Suggest plan optimizations
Provides troubleshooting assistance and device configuration support.
Tools: TechnicalSupportTool
- Step-by-step troubleshooting guides
- Device configuration (APN, WiFi calling)
- Service resets and escalations
- Diagnostic codes
Analyzes customer needs and recommends suitable plans and services.
Tools: PineconeRetrievalTool
- Compare plan features
- Identify savings opportunities
- Recommend add-ons and bundles
- Explain plan benefits
graph TD
Start([User Query]) --> Supervisor{Supervisor Agent}
Supervisor --> Billing[Billing & Account Agent]
Supervisor --> TechSupport[Technical Support Agent]
Supervisor --> PlanAdvisor[Plan Advisor Agent]
Billing --> Response
TechSupport --> Response
PlanAdvisor --> Response
Since this is a demo system without live telecom APIs, all tools use mock data generators that provide:
- Realistic Responses: Coherent, context-aware information
- Dynamic Values: Randomized metrics (signal strength, speeds, etc.)
- Consistent State: Maintains session context
- Multiple Scenarios: Simulates various support situations
- Customer Accounts: Multiple customer profiles with different plans
- Troubleshooting Guides: Common issues and solutions
- Plan Catalog: Various individual, family, and business plans
- Python 3.10+
- OpenAI API Key
- Pinecone Account
- Galileo Account
- Clone the repository
git clone https://github.com/rungalileo/sdk-examples
cd sdk-examples/python/agent/langgraph-telecom-agent- Set up environment variables
cp .env.example .env
# Edit .env with your API keys- Install dependencies
# Using uv (recommended)
uv sync --dev
# Or using pip with pyproject.toml
pip install -e .- Set up vector database (optional - only needed for Plan Advisor Agent)
# Upload telecom documentation to Pinecone
# This will create a "telecom" index with plan information and troubleshooting guides
python ./scripts/setup_pinecone.pyStart the Chainlit UI
chainlit run app.py -wThe application will be available at http://localhost:8000
Test the tools directly
python test_tools.pyUser: "What's my current data usage?" Bot: Shows data consumption, remaining allowance, and average daily usage
User: "My internet is really slow" Bot: Provides troubleshooting steps, checks network congestion, suggests optimizations
User: "I need a plan with international calling" Bot: Recommends suitable plans with international features, compares options
langgraph-telecom-agent/
├── app.py # Main Chainlit application
├── src/
│ └── galileo_langgraph_fsi_agent/
│ ├── agents/ # Agent implementations
│ │ ├── supervisor_agent.py # Orchestrator
│ │ ├── billing_account_agent.py
│ │ ├── technical_support_agent.py
│ │ └── plan_advisor_agent.py
│ └── tools/ # Mock tool implementations
│ ├── billing_tool.py
│ ├── technical_support_tool.py
│ └── pinecone_retrieval_tool.py
└── source-docs/ # Telecom knowledge base
├── telecom-plans.md # Plan catalog
└── network-troubleshooting.md # Support guides
- View traces at app.galileo.ai after running conversations.
- Setup agent metrics like Action Completion, Tool Selection Quality and Tool Error Rate
- You can also add a custom metric as per your bespoke requirements
- Read our blog for a detailed guide on metrics and debugging agent with the insights.