Skip to content

Part 1: GCP Services Gap Analysis

Critical Omissions - High Priority

1. Contact Center AI (CCAI) Platform

What We Missed: We designed around generic Vertex AI services, but Google has a purpose-built Contact Center AI (CCAI) platform specifically for WxCC use cases.

CCAI Components:

Component Purpose Advantage Over Generic Vertex AI
Agent Assist Real-time suggestions during live calls Pre-trained on contact center patterns, WxCC-native integration
Virtual Agent Advanced Dialogflow with CCAI optimizations Better intent recognition, context handling
Insights AI Purpose-built call analytics Pre-built dashboards, WxCC KPIs, no custom model training
CCAI Platform Unified platform vs piecemeal services Faster time-to-value, less integration work

Recommendation: - Replace generic Speech-to-Text + NLU with CCAI Insights - Add Agent Assist for real-time agent coaching - Keep custom Vertex AI models for churn prediction, CSAT forecasting (CCAI doesn't do these)

Revised WxCC Approach: migrating to CCAI Insights delivers 50% faster deployment and better accuracy for the same workloads.


2. Vertex AI Explainable AI

What We Missed: When ML models make decisions (e.g., "Route this call to Senior Agent"), we need to explain WHY.

Use Cases: - Regulatory Compliance: Financial services, healthcare require model interpretability - Agent Trust: Agents need to understand why ML suggests specific actions - Debugging: Identify when models make incorrect predictions

Implementation:

# Enable Explainable AI during model deployment

from google.cloud import aiplatform

endpoint = aiplatform.Endpoint.create(
    display_name="wxcc-routing-model",
    explanation_metadata={
        "inputs": {
            "customer_tenure": {"modality": "numeric"},
            "issue_type": {"modality": "categorical"},
            "sentiment_score": {"modality": "numeric"}
        },
        "outputs": {
            "recommended_agent_tier": {"modality": "categorical"}
        }
    },
    explanation_parameters={"sampled_shapley_attribution": {"path_count": 10}}
)

Cost: Included in Vertex AI Prediction costs (no additional charge)
Priority: CRITICAL for regulated industries (finance, healthcare contact centers)


3. VPC Service Controls & Private Service Connect

What We Missed: Security perimeter for WxCC sensitive data (PII, payment info for PCI-DSS).

Current Risk: - Vertex AI APIs accessed over public internet (even with TLS) - Data potentially egresses to Google's public network - No data exfiltration prevention

Solution: VPC Service Controls

┌─────────────────────────────────────────────────────────────────┐
│              VPC SERVICE CONTROLS PERIMETER                      │
├─────────────────────────────────────────────────────────────────┤
│                                                                  │
│  ┌────────────────────────────────────────────────────┐         │
│  │  PROTECTED GCP SERVICES (WxCC Data Only)           │         │
│  │                                                     │         │
│  │  • Vertex AI (Speech-to-Text, NLU, Training)       │         │
│  │  • BigQuery (wxcc_analytics dataset)               │         │
│  │  • Cloud Storage (call-recordings bucket)          │         │
│  │  • Secret Manager (WxCC API keys)                  │         │
│  │                                                     │         │
│  │  INGRESS POLICY:                                   │         │
│  │  - Only from Abhavtech Cloud Interconnect IPs      │         │
│  │  - Block all public internet access                │         │
│  │                                                     │         │
│  │  EGRESS POLICY:                                    │         │
│  │  - Allow to WxCC webhooks (webhook.wxcc.com)       │         │
│  │  - Allow to Splunk on-prem (10.252.100.50)         │         │
│  │  - Block all other destinations                    │         │
│  └────────────────────────────────────────────────────┘         │
│                                                                  │
└─────────────────────────────────────────────────────────────────┘

Private Service Connect:

Instead of calling vertexai.googleapis.com over internet, use private endpoint: - vertexai.p.googleapis.com → resolves to RFC 1918 IP within your VPC - Traffic stays on Google's backbone, never touches public internet

Configuration:

## Create VPC Service Controls perimeter

gcloud access-context-manager perimeters create wxcc-perimeter \
  --title="WxCC Sensitive Data Perimeter" \
  --resources=projects/abhavtech-wxcc-prod \
  --restricted-services=bigquery.googleapis.com,storage.googleapis.com,aiplatform.googleapis.com \
  --ingress-policies=ingress-policy.yaml \
  --egress-policies=egress-policy.yaml

Cost: Free (built-in GCP feature)
Priority: CRITICAL for PCI-DSS compliance (if handling payment card data)


4. Cloud Data Loss Prevention (DLP)

What We Missed: WxCC call recordings contain PII (names, SSNs, credit card numbers). Need automatic redaction.

Use Cases: - Compliance: GDPR, CCPA require PII minimization - PCI-DSS: Cannot store full credit card numbers in call recordings - Data Sharing: Redact PII before sending transcripts to data scientists

Implementation:

from google.cloud import dlp_v2

## Redact PII from call transcripts before storing in BigQuery

def redact_pii(text):
    dlp = dlp_v2.DlpServiceClient()

    inspect_config = {
        "info_types": [
            {"name": "PERSON_NAME"},
            {"name": "PHONE_NUMBER"},
            {"name": "EMAIL_ADDRESS"},
            {"name": "CREDIT_CARD_NUMBER"},
            {"name": "US_SOCIAL_SECURITY_NUMBER"}
        ]
    }

    deidentify_config = {
        "info_type_transformations": {
            "transformations": [
                {
                    "primitive_transformation": {
                        "replace_with_info_type_config": {}  # Replace "John Smith" with "[PERSON_NAME]"
                    }
                }
            ]
        }
    }

    response = dlp.deidentify_content(
        request={
            "parent": f"projects/abhavtech-wxcc-prod",
            "deidentify_config": deidentify_config,
            "inspect_config": inspect_config,
            "item": {"value": text}
        }
    )

    return response.item.value

## Apply to all transcripts before BigQuery insert

transcript_redacted = redact_pii(call_transcript)

Priority: CRITICAL for PCI-DSS, GDPR compliance


5. Vertex AI Feature Store

What We Missed: Centralized feature repository for ML models to avoid redundant feature engineering.

Problem Without Feature Store: - Churn model computes avg_call_duration_last_30_days - Routing model computes avg_call_duration_last_30_days (duplicate work!) - Features computed differently → models give inconsistent results

Solution: Feature Store