Skip to content

Example Everything on this site is sample data — one of the configurations this template ships with, built from the same repository.

Example: AI use case catalog

In production · Large city — 311 customer service center

Cloud deployment Featured

311 service request routing

Result in one line: Median time from request to routed work order fell from two days to four minutes

Translates and classifies resident service requests arriving by phone, web form and app, assigns a category and urgency tier, and opens the work order in the right department's queue.

Published June 15, 2026 Updated August 6, 2026 Verified August 6, 2026

Documentation or write-up
Skills needed to set it up
Contractor or vendor
Readiness
Needs customization Needs a contractor Human review built in
Data it touches
Personal information (PII) Internal, non-public data
Who sees the output
Public-facing
License
Not open source — available on request
Cost to stand up
$100k–$500k
Portable to other platforms
Partially — with rework
Use case category
Operations & logistics
Reviews it went through
Privacy review Security review or authority to operate Labor or workforce consultationEquity impact assessment
What do these mean?
Contractor or vendor
Outside help is required to stand this up.
Needs customization
Your team will need to adapt it before use.
Needs a contractor
Requires a contractor or vendor to implement.
Human review built in
A person checks the AI's output before it is used.
Personal information (PII)
Names, addresses, IDs or other personal identifiers.
Internal, non-public data
Non-public operational data without personal identifiers.
Public-facing
Residents or the general public interact with it.
Not open source — available on request
Peer jurisdictions can ask; say how in the access terms below.
Partially — with rework
Some pieces are vendor-specific and would need swapping.
Operations & logistics
Planning, dispatch, inventory, inspections and field work.
Security review or authority to operate
A security assessment, ATO or equivalent sign-off.
Labor or workforce consultation
Discussed with the union or the affected staff before rollout.

Problem

Requests reach us in more than twenty languages across three channels. Before this project a non-English submission sat in a queue until a bilingual agent could read it, and the category it eventually received depended on which agent read it. Two residents could report the same problem at the same intersection and end up with different categories, different departments and different urgency.

The routing errors were the expensive part. A misrouted request does not just wait — it waits in the wrong department’s queue until someone notices, which for us averaged nine days.

What we built

A deployment that sits between the intake channels and the work order system. A request arrives by phone, web form or app. Phone requests are transcribed; anything not in English is translated, with the original wording kept on the record. A model then assigns one of fourteen categories and an urgency tier using a written rubric, and the result is opened as a work order in the responsible department’s queue.

Tier 1 — the urgency level that dispatches a crew the same day — is always confirmed by a person before the work order is released. Tiers 2 and 3 route automatically.

How it works

Everything is defined in Terraform: the API gateway, two Lambda functions, the transcription, translation and model calls, and the queue that writes to the work order system. Raw request text is retained for 30 days and then deleted; the categorised work order follows the normal records schedule.

There is no public repository — the code is entangled with our work order schema — but the architecture document walks through the access boundaries, the retention policy and the rubric, and the rubric is the part worth copying.

Results

Median time from request to routed work order dropped from about two days to four minutes. Category agreement between the model and agents, measured during a two-month shadow period, was 91% and has held there.

The categories that disagreed most often — illegal dumping versus bulk item pickup — were merged, because the disagreement turned out to be a definition problem the department had lived with for years rather than a model problem.

Residents also see faster acknowledgements, and requests in less common languages no longer wait longer than requests in English. That was the outcome we set out to get.

Lessons learned

Run a shadow period. Ours was two months of the model categorising alongside agents with no effect on routing, and it changed the category list before anyone depended on it. It also produced the accuracy baseline we now measure drift against, which we would not otherwise have.

Keep the original wording next to the translation. Agents check it more often than we expected, and it is the only way to catch a translation that dropped a detail — “the second floor” and “the second building” are one word apart in a couple of the languages we handle.

Talk to the agents’ union before, not after. Our labor consultation produced the rule that no agent’s performance is measured against the model’s categories, and having that written down removed most of the resistance to the rollout.

How to reuse

The architecture is generic; the rubric is not. Expect to write your own category definitions with the departments that will act on them, then run a shadow period against real requests before anything routes. A contractor stood ours up in about six weeks, most of which was integration with the work order system rather than anything to do with AI.

About

Area of work
  • IT & operations
  • Communications & outreach
  • Staff & partner coordination
Review status
Reviewed & approved

How it's built

How AI is involved
AI is part of the solution
Types of AI
  • Classification & NLP
  • Translation
  • Speech & transcription
AI tools & models
  • Amazon Bedrock
  • Amazon Transcribe
  • Amazon Translate
  • AWS Lambda
  • Terraform
Where it runs
  • AWS

Sharing & licensing

Access terms
The Terraform modules and the prompt set are shared with other public agencies on request; the code is entangled with our work order schema, so we walk through it rather than publishing it. Email the contact below.
Portability notes
The routing logic, the rubric and the prompts are plain Python and travel. Transcription and translation use managed AWS services; another cloud has equivalents, and the swap is a fortnight of work plus a re-run of the accuracy comparison, which is the part people forget to budget.

What it took

Cost to keep running
$10k–$50k/yr
How it was bought
  • Competitive solicitation
  • Grant funded
Who it affects
Roughly a third of requests arrive in a language other than English, and before this those requests waited longest — a non-English submission sat until a bilingual agent could read it. That gap is the reason the project existed. We sample 40 translated requests a month against a bilingual reviewer and report routing accuracy by source language; two languages currently run below the rest and every request in them stays on the review-everything list until they close the gap. Tier 1, the urgency level that dispatches a crew the same day, is always confirmed by a person.

Data & access

No PII/PHI in the shared material
Yes
Data sources
  • 311 call recordings and agent notes
  • Web and mobile app request forms
  • Work order management system
Data-governance caveats
Request text carries caller names, phone numbers and addresses. Nothing leaves the city's own AWS account, no data is used for training, and raw request text is deleted after 30 days while the categorised work order follows the existing records schedule. Nothing in this entry or its screenshots is real resident data.