Optimizing Security Incident Response with LLMs at Google
google · Tech · 2024 · source Agentic: no · promotional bias: low · 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: Security incident response communications
Google needed to reduce the time incident responders spent drafting security and privacy incident summaries while preserving factual accuracy, privacy, regulatory accountability, and stakeholder-ready communication quality.
Constraints:
- Incident communications needed to serve executives, leads, and partner teams.
- Security and privacy incidents contain confidential, sensitive, and privileged data.
- Incident inputs are messy, including logs, images, links, impact statistics, timelines, and code snippets.
- Generated drafts could hallucinate or be misinterpreted, so human accountability remained required.
- The system had to support both short summaries and more complex executive communications.
Architecture
Google built a privacy-preserving LLM drafting workflow for incident communications. Incident data is preprocessed into structured tags, noisy logs and code are collapsed into placeholders, the LLM drafts a summary or executive update from few-shot prompts, and the UI inserts the proposed text into a human review flow. Logging is disabled across the UI, model, and output path, so operational monitoring relies on metrics and indicators rather than retained incident content.
Diagram confidence: reconstructed (reconstructed from prose).
flowchart LR Incident_facts["Incident facts"] --> Input_preprocessing["Input preprocessing"] Input_preprocessing --> LLM_drafting_prompt["LLM drafting prompt"] LLM_drafting_prompt --> Draft_review_UI["Draft review UI"] LLM_drafting_prompt --> Metrics_and_indicators["Metrics and indicators"] Draft_review_UI --> Human_incident_responder["Human incident responder"] Human_incident_responder --> Incident_communication_record["Incident communication record"]
Components
| Component | Role | Interacts with |
|---|---|---|
Incident facts |
Raw incident context such as free-form text, logs, images, links, impact statistics, timelines, and code snippets. | Input preprocessing |
Input preprocessing |
Structures incident data with semantic tags and replaces noisy logs or code with compact placeholders. | LLM drafting prompt |
LLM drafting prompt |
Uses refined instructions, few-shot examples, and tags to generate incident summaries or executive updates. | Draft review UI, Metrics and indicators |
Draft review UI |
Presents generated summaries to human responders for acceptance, editing, or rejection. | Human incident responder |
Human incident responder |
Reviews and accepts, modifies, or discards generated incident communications. | Incident communication record |
Incident communication record |
Final stakeholder-facing incident summary or executive update after human review. | — |
Metrics and indicators |
Provides operational visibility without storing sensitive incident content. | — |
Data flow
Incident facts from the response process are converted into structured tagged input; the prompt-guided LLM drafts a summary; the UI pre-populates a text field with the draft; a human accepts, edits, or discards it before it becomes part of the incident communication.
3 supporting quotes
Why this architecture
Google chose a structured, reviewed drafting assistant instead of autonomous communication because security incidents are sensitive, messy, compliance-relevant, and prone to hallucination risk. Tagging makes incident facts legible to the model, few-shot prompts control format and quality, and human review preserves accountability.
"we first replaced long and noisy sections of codes/logs by self-closing tags (
and) both to keep the structure while saving tokens" — article, stated "any LLM generated draft must be reviewed by a human. But not all risks are from the LLM - human misinterpretation of a fact or statement generated by the LLM can also happen." — article, stated
Models used: Large Language Model
Scale
- Google's incident response processes protect billions of global users.
"Our detection and response processes are critical in protecting our billions of global users from the growing threat landscape" — article, stated
- Writing a thorough incident summary could take nearly an hour, while complex communications could take multiple hours.
"We estimate that writing a thorough summary can take nearly an hour and more complex communications can take multiple hours." — article, stated
- The human-vs-LLM comparison used 50 human-written summaries and 50 LLM-written summaries.
"We ran an experiment that took 50 human-written summaries from native and non-native English speakers, and 50 LLM-written ones with our finest (and final) prompt" — article, stated
- The summary tool saved 51% of drafting time on a 300-summary sample.
"Our newly-built tool produced well-written and accurate summaries, resulting in 51% time saved, per incident summary drafted by an LLM, versus a human." — article, stated
- Inputs below 200 tokens are routed away from the LLM.
"If the input size is smaller than 200 tokens, we won’t call the LLM for a summary and let the humans write it." — article, stated
- Executive updates saw a 53% drafting-time reduction.
"LLM-generated drafts, reduced time ICs spent writing executive summaries by 53% of time, while delivering at least on-par content quality" — article, stated
Alternatives considered (roads not taken)
Manual incident summary drafting
Rejected because: Manual drafting was tedious and time-consuming, taking nearly an hour or more for complex communications.
"This can be a tedious and time-consuming process that heavily depends on the target group and the complexity of the incident." — article, stated
Simple summarization prompt
Rejected because: The first prompt produced summaries that were too long, missed important facts, and had inconsistent style.
"The summary was too long, especially for executives trying to understand the risk and impact of the incident" — article, stated "Some important facts were not covered, such as the incident’s impact and its mitigation" — article, stated
More elaborate prompt without few-shot examples
Rejected because: The second prompt still lost task focus, missed latest updates, and produced minor hallucinations.
"At times, the model lost sight of the task or did not take all the guidelines into account" — article, stated "We noticed a tendency to draw conclusions on hypotheses with some minor hallucinations" — article, stated
Call the LLM even for very small inputs
Rejected because: Small inputs caused hallucinated summaries, so the system skips the LLM below a 200-token threshold.
"The only edge cases we have seen were around hallucinations when the input size was small in relation to the prompt size." — article, stated
Patterns
human-in-the-loop-gate (safety)
Generated incident summaries are drafts that a human accepts, edits, or discards before use.
"A human user can then either accept the summary and have it added to the incident, do manual changes to the summary and accept it, or discard the draft and start again." — article, stated
prompt-versioning (prompting)
Google iterated across prompt versions until few-shot examples and a Good Summary tag produced the desired output.
"For the final prompt, we inserted 2 human-crafted summary examples and introduced a
tag to highlight high quality summaries but also to tell the model to immediately start with the summary without first repeating the task at hand (as LLMs usually do)." — article, stated
privacy-preserving-processing (privacy)
The incident-summary pipeline disables logging and retraining use because incident data is sensitive.
"Every component of this pipeline - from the user interface to the LLM to output processing - has logging turned off." — article, stated
safety-policy-enforcement (safety)
The system refuses to call the LLM when input is below 200 tokens because that edge case caused hallucinated summaries.
"If the input size is smaller than 200 tokens, we won’t call the LLM for a summary and let the humans write it." — article, stated
eval-driven-development (quality)
Google compared LLM and human summaries in a blind evaluation and measured time savings over a larger sample.
"We ran an experiment that took 50 human-written summaries from native and non-native English speakers, and 50 LLM-written ones with our finest (and final) prompt" — article, stated
Tradeoffs
Use an LLM draft plus human review rather than autonomous incident communication.
Chose Human-reviewed generated drafts over Fully automated communication.
Rationale: Human review mitigates hallucinations, misinterpretation, and accountability risks in high-stakes incident communications.
"any LLM generated draft must be reviewed by a human. But not all risks are from the LLM - human misinterpretation of a fact or statement generated by the LLM can also happen." — article, stated
Disable logging instead of retaining incident traces for easier debugging.
Chose No stored incident content over Traditional content logging.
Rationale: The sensitive incident domain made privacy more important than normal logging-based observability.
"Every component of this pipeline - from the user interface to the LLM to output processing - has logging turned off." — article, stated
Collapse noisy logs and code into tags instead of passing full raw artifacts.
Chose Structured placeholders and semantic tags over Full raw logs and code in the prompt.
Rationale: Tags preserve useful structure while saving tokens and reducing hallucination risk.
"For that, we first replaced long and noisy sections of codes/logs by self-closing tags (
and) both to keep the structure while saving tokens for more important facts and to reduce risk of hallucinations." — article, stated
Route short inputs to humans rather than improving recall through extra model calls.
Chose Human-written summaries below 200 tokens over LLM generation for all incidents.
Rationale: Small inputs had produced incorrect hallucinated key points.
"If the input size is smaller than 200 tokens, we won’t call the LLM for a summary and let the humans write it." — article, stated
Gotchas (what bit them)
Short incident inputs caused hallucinated summaries.
Root cause: The prompt was large relative to the input, leaving too little grounded incident content.
Resolution: Skip LLM generation below 200 input tokens and route the case to humans.
"when the input size was small in relation to the prompt size. In these cases, the LLM made up most of the summary and key points were incorrect." — article, stated
Unstructured incident data can confuse summarization.
Root cause: Incidents include messy text, logs, images, links, impact statistics, timelines, and code snippets.
Resolution: Preprocess incident data into semantic tags and compact placeholders before prompting.
"The type of data we process during incidents can be messy and often unstructured: Free-form text, logs, images, links, impact stats, timelines, and code snippets." — article, stated
Privacy constraints remove normal debugging logs.
Root cause: Security incidents can contain confidential, sensitive, and privileged data.
Resolution: Turn off logging throughout the pipeline and rely on metrics and indicators.
"Given that our incidents can contain a mixture of confidential, sensitive, and privileged data, we had to ensure we built an infrastructure that does not store any data." — article, stated
Prompt instructions alone did not immediately produce stakeholder-ready summaries.
Root cause: Early prompts produced long, incomplete, inconsistent, or stale summaries.
Resolution: Iterate prompt versions, add few-shot examples, and use a Good Summary tag.
"This produced outstanding summaries, in the structure we wanted, with all key points covered, and almost without any hallucinations." — article, stated
Evaluation
Google used blind comparison of human-written and LLM-written summaries plus a larger time-savings measurement over generated summaries.
Metrics: 50 human-written summaries · 50 LLM-written summaries · 10% higher quality rating · 51% time saved · 300-summary time-savings sample · 53% executive-summary time reduction
"We ran an experiment that took 50 human-written summaries from native and non-native English speakers, and 50 LLM-written ones with our finest (and final) prompt, and presented them to security teams without revealing the author." — article, stated "they were rated 10% higher than their human-written equivalents, and cut the time necessary to draft a summary in half." — article, stated "Time savings using LLM-generated summaries (sample size: 300)" — article, stated
Outcomes
- LLM-written incident summaries were rated 10% higher than human-written equivalents.
- Incident summary drafting became 51% faster.
- Executive summary drafting time fell by 53%.
- The final prompt produced structured summaries with all key points covered and almost no hallucinations.
The system was evaluated over 50 human and 50 LLM summaries, measured time savings over 300 summaries, skips LLM calls under 200 input tokens, and operates within Google's security response context for billions of global users.
"the LLM-written summaries covered all of the key points, they were rated 10% higher than their human-written equivalents" — article, stated "Our newly-built tool produced well-written and accurate summaries, resulting in 51% time saved, per incident summary drafted by an LLM, versus a human." — article, stated "Moreover, LLM-generated drafts, reduced time ICs spent writing executive summaries by 53% of time, while delivering at least on-par content quality in terms of factual accuracy and adherence to writing best practices." — article, stated