Conversational AI Agent for Logistics Customer Support

dtdc · Other · 2025 · source Agentic: yes · promotional bias: high · source-backed · extracted with prompt 0.5.6 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Logistics customer support

DTDC's existing DIVA logistics assistant handled a high volume of tracking, serviceability, and shipping-rate inquiries through a rigid guided workflow. Users had to follow structured paths instead of natural conversations, increasing support workload, resolution time, and customer frustration.

Constraints:

Architecture

ShellKode rebuilt DIVA as DIVA 2.0 using Amazon Bedrock Agents, Bedrock Knowledge Bases, AWS Lambda, App Runner, API integrations to DTDC operational systems, OpenSearch-backed vector retrieval, RDS logging, and an admin dashboard. Bedrock interprets intent, invokes Lambda-backed business APIs, retrieves knowledge-base content for general queries, and uses Claude 3.0 to generate contextual responses.

Diagram confidence: explicit (topology described by the source).

flowchart LR
  dtdc-website["DTDC website"] --> app-runner-api-layer["App Runner API layer"]
  app-runner-api-layer --> amazon-bedrock-agent["Amazon Bedrock Agent"]
  amazon-bedrock-agent --> lambda-action-functions["Lambda action functions"]
  lambda-action-functions --> dtdc-operational-apis["DTDC operational APIs"]
  amazon-bedrock-agent --> bedrock-knowledge-base["Bedrock Knowledge Base"]
  bedrock-knowledge-base --> opensearch-vector-store["OpenSearch vector store"]
  amazon-bedrock-agent --> claude-30["Claude 30"]
  app-runner-api-layer --> dashboard-api["Dashboard API"]
  dashboard-api --> rds-query-log["RDS query log"]
  dashboard-api --> admin-dashboard["Admin dashboard"]
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
DTDC website Customer-facing entry point for natural-language logistics queries. App Runner API layer
App Runner API layer Runs web and backend API services, including Bedrock Agents API and Dashboard API calls. DTDC website, Amazon Bedrock Agent, Dashboard API
Amazon Bedrock Agent Interprets user intent and orchestrates Lambda functions and knowledge retrieval. App Runner API layer, Lambda action functions, Bedrock Knowledge Base, Claude 30
Lambda action functions Invoke DTDC operational APIs for tracking, pricing, serviceability, and support ticket creation. Amazon Bedrock Agent, DTDC operational APIs
DTDC operational APIs Real-time systems for tracking, delivery serviceability, pricing, and customer care. Lambda action functions
Bedrock Knowledge Base Vector retrieval over website content, support documentation, FAQs, and operational data. Amazon Bedrock Agent, OpenSearch vector store
OpenSearch vector store Stores vector embeddings for semantic similarity retrieval. Bedrock Knowledge Base
Claude 30 Generates contextual responses from retrieved operational and knowledge-base data. Amazon Bedrock Agent
Dashboard API Writes query and response data into RDS and feeds admin analytics. App Runner API layer, RDS query log, Admin dashboard
RDS query log Stores logistics-agent queries and responses for analytics and dashboarding. Dashboard API
Admin dashboard Shows accuracy, unresolved queries, categories, sessions, and user interactions for improvement. Dashboard API

Data flow

A customer submits a natural-language query from the DTDC website. App Runner invokes the Bedrock Agents API, the agent interprets intent, triggers the relevant Lambda function, calls DTDC tracking/pricing/serviceability/support APIs, retrieves relevant knowledge-base chunks when needed, passes retrieved data to Claude 3.0 for response generation, and stores query/response data in RDS for dashboard analysis.

“An end-user accesses the logistics agent through the DTDC website and submits queries like tracking shipments, checking service availability, calculating shipping rates, FAQs, and so on using natural language.”article, stated
“The agent passes the response to the large language model (LLM), in this case Anthropic’s Claude 3.0 on Amazon Bedrock, which understands the context of the retrieved data”article, stated

Why this architecture

The architecture keeps business data authoritative in DTDC APIs while using Bedrock Agents for intent routing, Lambda for action execution, Bedrock Knowledge Bases for FAQ/support retrieval, and the dashboard for operational learning.

“Amazon Bedrock Agents, AWS Lambda, and a vector-based knowledge base handles user queries”article, stated
“by integrating seamlessly with DTDC’s API layer, the logistics agent provides real-time access to vital information, such as tracking shipments, service availability, and calculating shipping rates.”article, stated

Models used: Anthropic Claude 3.0 on Amazon Bedrock · Amazon Bedrock Agents · Amazon Bedrock Knowledge Bases

Scale

Alternatives considered (roads not taken)

Keep the original guided workflow

Rejected because: Rigid paths increased support burden, resolution times, and poor experience.

“DIVA, was operated on a rigid, guided workflow, forcing users to follow a structured path rather than engaging in natural, dynamic conversations.”article, stated

Answer every query from the knowledge base

Rejected because: Tracking, pricing, and serviceability require real-time operational API data.

“The triggered Lambda function calls the following client APIs, retrieves the relevant data, and returns the response to the agent:”article, stated

Treat the assistant as a black box after deployment

Rejected because: DTDC needed real-time analytics for unresolved issues and continuous improvement.

“Real-time data is logged and analyzed on the dashboard, enabling continuous improvement and quick issue resolution.”article, stated

Patterns

tool-use-orchestration (orchestration)

Bedrock Agents route intents to Lambda-backed logistics APIs.

“Based on the interpreted intent, the agent triggers an appropriate Lambda function”article, stated

rag-retrieval (retrieval)

Bedrock Knowledge Bases retrieve FAQ, support, and operational chunks from OpenSearch embeddings.

“Using semantic similarity search, relevant chunks of information are retrieved from the knowledge base based on the user’s query”article, stated

observability-tracing (operations)

CloudWatch, CloudTrail, RDS, and dashboard metrics capture events, queries, and performance.

“captures key events such as intent recognition, Lambda invocations, API responses, and fallback triggers for auditing and system monitoring.”article, stated

Tradeoffs

Modernize DIVA with generative AI

Chose Bedrock agentic assistant over rigid guided workflow.

Rationale: Natural language and context handling improve flexibility while reducing live-agent dependency.

“DTDC was looking for a more flexible, intelligent assistant—one that could understand context, manage complex queries, and improve efficiency while reducing reliance on human agents.”article, stated

Use fallback responses for missing KB data

Chose preconfigured fallback over forcing an unsupported answer.

Rationale: Fallback avoids unsupported responses when no relevant knowledge chunk is found.

“If no relevant data is found in the knowledge base, a fallback response (preconfigured in the Amazon Bedrock prompt) is returned”article, stated

Gotchas (what bit them)

Real-time legacy data integration was a major challenge.

Root cause: Tracking, rates, and serviceability data lived across multiple legacy systems.

Resolution: Use Bedrock Agents plus Lambda/API integration for real-time data access.

“Integrating real-time data from multiple legacy systems was crucial for providing accurate, up-to-date information on tracking, rates, and serviceability.”article, stated

The model needed logistics terminology and multi-step query understanding.

Root cause: Customer support questions include domain-specific terms and complex logistics flows.

Resolution: Use Bedrock LLMs and Bedrock Knowledge Bases fine-tuned with industry-specific data.

“Another major hurdle was training the AI to understand complex logistics terminology and multi-step queries”article, stated

Evaluation

DTDC uses dashboard metrics, session logs, category breakdowns, accuracy tracking, unresolved query tracking, and support-ticket outcomes.

Metrics: Response accuracy · Unresolved queries · Query categories · Session statistics · Support-ticket deflection · Customer support workload reduction

“The dashboard provides real-time insights into the logistics agent performance, including accuracy, unresolved queries, query categories, session statistics, and user interaction data”article, stated

Outcomes

DTDC receives over 400,000 monthly customer queries; the last three months of metrics included 256,048 consignment inquiries and 107,132 general inquiries.

“DIVA 2.0 has reduced the number of queries handled by the customer support team by 51.4%.”article, stated