Scaling Generative AI Features to Millions of Users with Infrastructure Optimization and Quality Evaluation

slack · Tech · 2025 · source Agentic: no · promotional bias: med · 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: enterprise collaboration GenAI infrastructure

Slack needed to scale Slack AI to millions of users while preserving customer trust, compliance, quality, model flexibility, and cost efficiency.

Constraints:

Architecture

Slack migrated from SageMaker endpoints to Amazon Bedrock, initially matching provisioned-throughput capacity, using load tests to map compute units, shadow traffic to verify latency and metrics, staged cutover percentages, model fallback/switching, and an internal experimentation framework with automated metrics, LLM judges, and guardrails.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  A["Slack AI features"] --> B["Migration router"]
  B --> C["SageMaker endpoints"]
  B --> D["Amazon Bedrock"]
  D --> E["Model registry"]
  D --> F["Fallback model layer"]
  A --> G["Experimentation framework"]
  F --> G
  G --> H["LLM judges and metrics"]
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Slack AI features User-facing generative AI features across Slack's product. Migration router, Experimentation framework
Migration router Routes, shadows, and cuts over traffic from SageMaker to Bedrock. Slack AI features, SageMaker endpoints, Amazon Bedrock
SageMaker endpoints Original provisioned model-serving infrastructure. Migration router
Amazon Bedrock Managed model-serving platform with model registry, trust boundary, provisioned/on-demand options, and model flexibility. Migration router, Model registry, Fallback model layer
Model registry Provides newer LLMs through Bedrock for production experimentation. Amazon Bedrock, Fallback model layer
Fallback model layer Allows Slack to switch or fall back to different models during incidents or experiments. Amazon Bedrock, Experimentation framework
Experimentation framework Offline/online quality, cost, and user-feedback experimentation system. Slack AI features, LLM judges and metrics
LLM judges and metrics Automated programmatic metrics, LLM quality metrics, judges, and guardrails. Experimentation framework

Data flow

Existing SageMaker traffic was duplicated to Bedrock as shadow traffic, Slack monitored latencies and time-to-first-token, then cut over from 1% to 100%. Bedrock's model registry and trust boundary enabled production model experimentation across more than 15 LLMs. Offline and online experiments combine automated programmatic metrics, LLM judges, guardrails, and user feedback to evaluate quality.

3 supporting quotes
“whenever a request was sent to SageMaker, we were sending a duplicate request to Bedrock.”transcript, stated
“we started with a 1%, 5%, 10% and 100%.”transcript, stated
“by combining these automated programmatic metrics alongside LLM judges and guardrails, we can start to evaluate the quality of our generative AI”transcript, stated

Why this architecture

Bedrock gave Slack managed serving, model diversity, trust-boundary controls, and faster access to frontier models, while staged migration and experimentation protected reliability and quality during scale-up.

3 supporting quotes
“We wanted to look for a new service which is managed but also gives us a diversity of models.”transcript, stated
“We were able to serve all these requests within our trust boundary.”transcript, stated
“we were able to quickly switch models during incident times and even experiment around to see what is the best model to serve for quality and cost.”transcript, stated

Models used: Claude Instant · Claude Haiku · Amazon Bedrock LLMs · more than 15 LLMs in production · LLM judges

Scale

Alternatives considered (roads not taken)

Stay on SageMaker provisioned infrastructure

Rejected because: Slack wanted managed serving, model diversity, faster model availability, and better cost flexibility.

“We wanted to look for a new service which is managed but also gives us a diversity of models.”transcript, stated

Immediate full cutover

Rejected because: Slack used shadow traffic and staged 1/5/10/100% cutover to preserve trust and avoid downtime.

“we a couple of migration steps to ensure that we have a very reliable migration while keeping customer trust and no downtime.”transcript, stated

Manual quality review only

Rejected because: Slack needed large-scale representative evaluation over production-like datasets.

“This gives us the ability to run much larger scale experiments and tests.”transcript, stated

Patterns

canary-rollout (deployment)

Slack shadowed SageMaker traffic to Bedrock, then cut over through 1%, 5%, 10%, and 100% stages.

“Once the shadow traffic was running a 100% for two weeks, we started to do a full cutover process.”transcript, stated

model-routing (model-ops)

Slack serves and experiments with more than 15 LLMs and can switch or fall back during incidents.

“we were able to fall back to certain models, we were able to quickly switch models during incident times”transcript, stated

llm-as-judge (evaluation)

Slack uses LLM-based quality metrics and judges to evaluate factual accuracy, answer relevance, and other quality criteria.

“We leverage LLM based quality metrics to be able to measure factual accuracy or to be able to measure answer relevancy.”transcript, stated

guardrails-io-filtering (safety)

Slack includes guardrails in automated quality evaluation to capture safety and harm issues.

“We leverage guardrails to capture safety and harm issues.”transcript, stated

Tradeoffs

Migration path

Chose shadow traffic and staged cutover over direct SageMaker-to-Bedrock cutover.

Rationale: This preserved customer trust, enabled dashboards, and verified latency/time-to-first-token before serving Bedrock responses.

“this also helped us out while building out our monitoring dashboards as well.”transcript, stated

Initial Bedrock capacity mode

Chose provisioned throughput parity first over immediate on-demand transition.

Rationale: Staying close to SageMaker provisioned infrastructure made migration easier before optimizing on-demand later.

“we decided to keep the same in Bedrock to make the migration easier and then handle the on demand transition the next stage.”transcript, stated

Gotchas (what bit them)

Migration needed compute equivalence, not guesswork.

Root cause: SageMaker and Bedrock capacity units did not map intuitively across model and instance types.

Resolution: Run load tests and calculate equivalent Bedrock model units before migration.

“scientifically figuring out what is the equivalent of Bedrock Mall units to SageMaker compute that we already had.”transcript, stated

Bedrock model regressions were possible.

Root cause: Model availability and quality changed as Slack expanded beyond the old platform.

Resolution: Use experimentation, monitoring, and fallback/switching ability across models.

“Bedrock models had regressions”transcript, stated

Quality is not captured by one metric.

Root cause: Slack AI features have complex definitions of quality such as factual accuracy, relevance, safety, and user feedback.

Resolution: Combine programmatic metrics, LLM judges, guardrails, and feature-specific quality evaluation.

“automated programmatic metrics alongside LLM judges and guardrails”transcript, stated

Evaluation

Slack evaluates infrastructure and quality using load tests, shadow traffic, latency/time-to-first-token metrics, cost-to-serve, scale, user satisfaction, LLM judges, guardrails, and offline/online experiments.

Metrics: latency · time to first token · cost savings · cost to serve per MAU · scale multiplier · user satisfaction · factual accuracy · answer relevance · safety/harm

“we were able to verify the latencies, the time of first token and the other metrics that we had in place.”transcript, stated
“We leverage LLM based quality metrics to be able to measure factual accuracy or to be able to measure answer relevancy.”transcript, stated

Outcomes

The case emphasizes infrastructure migration and experimentation framework maturity as much as product metrics.

“we saw greater than 90% savings and in dollar values, this was greater than 20 million, as well.”transcript, stated
“we've increased the scale that we operate at by nearly 5X.”transcript, stated