Tutorial

Self-Host an AI SOC Analyst Agent on GPU Cloud (2026 Guide)

ai soc analyst agentself-hosted cybersecurity llmAI security operations copilotSIEM RAG LLMFoundation-Sec-8Balert triage LLMGPU CloudvLLM
Self-Host an AI SOC Analyst Agent on GPU Cloud (2026 Guide)

Security teams will route almost anything through a third-party LLM API before they'll route a raw alert. Customer support tickets, contract drafts, even source code diffs get sent to hosted endpoints across this blog's coverage of self-hosted AI agents. Alert and log data is different: a single triage prompt can carry internal IP ranges, hostnames, open ports, and the exact indicators of compromise your team has already found, which means the prompt itself is a map of what you know and don't know about an active intrusion. That makes an AI SOC analyst agent the strongest self-hosting pitch on the whole blog, stronger than red-teaming your own models, because there the data under test is synthetic attack traffic. Here, the data is the attack surface.

This guide covers why that data-sensitivity argument holds up, where an LLM copilot genuinely helps a SOC (and where it doesn't), the open-source stack for running one, and the GPU sizing and cost math against vendor AI-SOC platforms. If you've already read our guide to self-hosting legal AI, the shape of this argument will look familiar: a regulated, document-sensitive vertical choosing infrastructure it controls over a vendor API. The stakes here are higher, because a SOC's data isn't just confidential, it's operationally exploitable if it leaks.

Why SOC Teams Can't Send Alert and Log Data to a Public LLM API

Every alert an LLM copilot summarizes carries context most departments never touch: internal network topology, hostnames, open ports, user accounts flagged as suspicious, and the specific detection logic that caught (or missed) an intrusion. Send that to a hosted API and a third party now has a running log of your defensive posture, current investigations, and blind spots, retained under whatever policy that vendor applies.

The numbers on shadow AI back up why this isn't a theoretical worry. IBM's 2025 Cost of a Data Breach Report found breaches involving high levels of shadow AI cost $4.63 million on average, $670,000 more than breaches with little or no shadow AI use, and 97% of organizations that suffered an AI-related breach lacked basic AI access controls (Kiteworks). A SOC pasting alert data into an unsanctioned copilot to save ten minutes is exactly the shadow AI pattern that report is describing, except the data at risk is the incident response process itself.

There's an upside case for AI here too, which is part of why teams want a copilot at all: the same 2025 IBM report puts the global average breach lifecycle at 241 days, the lowest in nine years, with faster detection and containment tied partly to AI-assisted defenses (CyberScoop). The pitch isn't "don't use AI in the SOC." It's "don't use AI in the SOC in a way that creates the exact exposure the report is warning about."

For teams that need attestable, hardware-level proof that alert data never leaves a trusted boundary, not just a promise from your deployment scripts, confidential GPU computing with NVIDIA TEEs extends encrypted VRAM guarantees to the instance itself, which matters if your SOC operates under a compliance regime that requires proof of isolation, not just intent.

Alert Triage and Summarization: Where an LLM Copilot Actually Helps

The average SOC doesn't have a threat-detection problem. It has a volume problem. Vectra AI's telemetry puts the average organization at 4,484 security alerts a day, with roughly two-thirds of reviewed alerts turning out to be false positives and close to half never getting investigated at all (Wiz). Dropzone AI's data adds a sharper edge to that: 61% of security teams admit to ignoring alerts that later proved to be part of a real incident, and in the large majority of breaches, it's the attacker who discloses the intrusion, not the security team detecting it first (Dropzone AI). Underdefense reports false positive rates in enterprise SOCs frequently exceeding 50%, sometimes as high as 80%, consuming as much as 52% of analyst time on alerts that turn out to be nothing (Underdefense).

That volume has a human cost too: 71% of SOC analysts report being affected by burnout, according to Wiz's research (Wiz), and the 2025 ISC2 Cybersecurity Workforce Study found 95% of security teams report at least one skills gap, with 33% saying they don't have the budget to adequately staff their teams and 29% unable to afford the skilled hires they need even when a role is open (ISC2). Budget, not talent availability, is now the more commonly cited constraint. That's the environment an LLM copilot is actually built for: not replacing the analyst who makes the containment call, but doing the first pass on the roughly 90% of alerts that turn out to be noise, so a human's attention goes to the ones that don't.

Concretely, that means:

  • Enrichment and summarization. Pulling context from past incidents, threat intel, and asset inventory into a single readable summary instead of ten browser tabs.
  • Severity triage. Flagging which alerts in a batch correlate with known attack patterns versus which look like isolated noise.
  • Natural-language querying against SIEM data. Letting an analyst ask "show me every login from this IP range in the last 72 hours" instead of writing the query by hand.
  • Draft incident write-ups. Generating a first-pass timeline and summary an analyst edits and approves, not one they trust blind.

Gartner projects AI will automate more than 50% of Tier 1 SOC analyst tasks by 2028, and frames it explicitly as augmentation, not replacement (Prophet Security, citing Gartner). Vendor platforms already ship this framing. CrowdStrike describes Charlotte AI as "a new class of mission-ready, agentic AI that thinks, reasons, and acts within expert-defined boundaries to accelerate outcomes across the SOC" (CrowdStrike), and its product page separately describes the system as one that "triages detections, filters false positives, and surfaces only what matters" (CrowdStrike). A self-hosted copilot should hold the same line: it drafts, enriches, and prioritizes. A person still decides what gets contained.

Open-Source Stack: Fine-Tuned Security Models Plus a SIEM-Connected RAG Layer

A self-hosted SOC copilot needs three things working together: a backbone model tuned or capable enough to reason about security data without hallucinating a CVE that doesn't exist, a RAG layer that grounds its answers in your actual log history and past incidents rather than generic training data, and a connector that pulls live alerts out of your SIEM in the first place.

Foundation-Sec-8B and General 70B-Class Backbones for Triage and Summarization

Cisco Foundation AI's Foundation-Sec-8B is the clearest purpose-built option here. It's an open-weight, Apache 2.0-licensed model built on the Llama-3.1-8B architecture, continually pretrained on roughly 5.1 billion tokens of cybersecurity-specific text: CVEs, CWEs, MITRE ATT&CK data, incident reports, and security tooling documentation (Hugging Face). Cisco's own benchmarks show it matching or exceeding Llama 3.1 70B on core cybersecurity tasks like CTI classification and root-cause mapping, despite being roughly a tenth the parameter count (Cisco Foundation AI). Cisco is direct about why: "Foundation-sec-8b isn't a general-purpose model retrofitted for security. It was designed from the ground up to understand the language, logic, and workflows of cybersecurity" (Cisco Foundation AI). Splunk, which partnered with Foundation AI on the model, describes it as a model that "enables security teams to act faster, reduce fatigue, and scale operations without compromising accuracy" (Splunk).

At 8B parameters in BF16, Foundation-Sec-8B needs roughly 16-20GB of VRAM for weights alone, which fits comfortably on a single mid-tier GPU with plenty of headroom left for a RAG pipeline and KV cache. Serve it with vLLM the same way you'd serve any Llama-3.1-architecture model:

bash
docker run --gpus all --ipc=host -p 8000:8000 \
  -v ~/.cache/huggingface:/root/.cache/huggingface \
  -e HUGGING_FACE_HUB_TOKEN=$HF_TOKEN \
  vllm/vllm-openai:latest \
  --model fdtn-ai/Foundation-Sec-8B \
  --max-model-len 16384 \
  --gpu-memory-utilization 0.85
bash
curl http://localhost:8000/v1/models

For teams that need a heavier backbone, either because they're doing deeper incident correlation across a longer context window or because a fine-tuned 8B isn't a fit for their query mix, a general-purpose 70B-class model like Llama 3.3 70B at FP8 (roughly 70GB) is the alternative. It won't beat Foundation-Sec-8B on the security-specific benchmarks Cisco reports, but it brings broader reasoning and longer-context handling for cross-alert correlation work. Our VRAM tier guide breaks down exactly which open-weight models fit which GPU budget if you're weighing a general backbone against a purpose-built one.

Grounding Alerts in Your Own Log History, Past Incidents, and MITRE ATT&CK

A backbone model, even a security-tuned one, only knows what's in its training data. It doesn't know your network's baseline behavior, your last six months of incidents, or which of your internal hostnames map to production versus staging. That's what RAG grounding is for: retrieving the actually relevant context (past incident writeups, runbooks, ATT&CK technique mappings, asset inventory) and putting it in front of the model before it drafts a triage summary.

The pipeline needs an embedding model to turn incident history and runbooks into searchable vectors, a vector database to store and query them, and ideally a reranker to push the most relevant matches to the top before they hit the model's context window. Our self-hosted vector database guide covers deploying Qdrant, Milvus, or Weaviate for this layer, and the self-hosted embeddings and rerankers guide covers TEI deployment for the embedding and reranking step, including where to colocate it on the same GPU as your backbone model versus running it separately.

MITRE ATT&CK mapping is the part most teams skip and shouldn't. Embedding the ATT&CK technique and tactic descriptions into the same vector store as your incident history means a triage query like "this alert shows lateral movement via SMB" retrieves both the relevant ATT&CK technique ID and any past incident in your own history that matched it, which is a meaningfully better grounding signal than either source alone.

Before wiring the copilot up to anything that can take action, not just summarize, a guardrail layer is worth having in front of it. Our NeMo Guardrails deployment guide covers runtime rails for constraining what a model is allowed to say or recommend, which matters more for a SOC copilot than almost any other agent on this blog: a hallucinated remediation step in a customer support bot is an annoyance, a hallucinated remediation step in an incident response workflow is a production incident of its own.

GPU Sizing for Real-Time Alert Volume Without Adding Latency to Response

Size the GPU around daily alert volume and peak concurrent triage sessions, not analyst headcount. A backbone model's weights are a fixed VRAM cost; what scales is the KV cache under concurrent triage load and, separately, how much throughput you need to keep alert-to-summary latency low enough that the copilot is actually faster than an analyst working the alert manually.

SOC tierDaily alert volumeRecommended GPUBackbone configVRAM used
Small (few thousand alerts/day)~2,000-5,0001x A100 80GBFoundation-Sec-8B, BF16~20-25GB
Mid-size (multiple concurrent analysts)~10,000-20,0001x H100 SXM5 80GBFoundation-Sec-8B, FP8, higher concurrency~30-35GB
Large / MSSP (multi-tenant)20,000+2x H100 SXM5 80GBFoundation-Sec-8B (triage) + 70B-class backbone (deep summarization), split across GPUs~35GB + ~70GB

At the small and mid tiers, most of the GPU's headroom goes to the RAG layer, embeddings, reranking, and vector search, running colocated with the backbone rather than to the LLM itself, since Foundation-Sec-8B's weights are small relative to an A100 or H100's capacity. At the large tier, splitting triage and deep-summarization workloads across two GPUs keeps a batch of incoming alerts from queuing behind a slower 70B-class generation for a single complex incident, which is the failure mode that actually adds latency to response: not undersized VRAM, but one long-running query blocking the fast triage path behind it.

Provision the instance on Spheron by logging into app.spheron.ai, selecting an A100 80GB GPU for a small deployment or an H100 SXM5 for higher-concurrency triage, and deploying with CUDA 12.4. Per-minute billing means the instance costs nothing while you're still wiring up the SIEM connector and RAG pipeline. See Spheron's docs for scripted provisioning if you're building this into a deployment pipeline.

Cost: Self-Hosted SOC Copilot vs Vendor AI SOC Platforms

Live GPU rates as of this writing: A100 80GB PCIe runs $1.43/hr on-demand, H100 SXM5 80GB runs $4.06/hr on-demand and $2.91/hr spot.

Microsoft Security Copilot is the one incumbent AI-SOC platform with a public, standalone unit price: $4/hour per provisioned Security Compute Unit, with a minimum of one SCU running continuously, which works out to roughly $2,920/month before any overage usage. Overage SCUs, drawn on during a busy investigation period once provisioned capacity runs out, bill at $6/hour (SAMexpert). That floor doesn't include the Microsoft 365 E5/E7 licensing or Sentinel workspace costs Security Copilot typically sits on top of.

SOC tierSelf-hosted GPU configGPU + infra cost/moMicrosoft Security Copilot (1 SCU minimum)
Small1x A100 80GB on-demand~$1,030 GPU + ~$150 infra = ~$1,180~$2,920+
Mid-size1x H100 SXM5 on-demand~$2,927 GPU + ~$200 infra = ~$3,127~$2,920+ (likely needs overage)
Large / MSSP2x H100 SXM5 on-demand~$5,854 GPU + ~$300 infra = ~$6,154Sales-quoted, scales with SCU count

Infra cost covers the vector database, embedding/reranker service, and SIEM connector host running alongside the GPU instance. At the small tier, a single self-hosted A100 running Foundation-Sec-8B comes in well under even the cheapest possible Microsoft Security Copilot deployment, one provisioned SCU running around the clock, before that SCU has absorbed a single overage hour on a bad day. At the mid tier the two options land close together on raw compute cost, but Security Copilot's SCU minimum doesn't flex down during quiet periods the way a self-hosted instance you can scale on demand does.

Splunk Mission Control, Chronicle's Duet, and CrowdStrike's Charlotte AI don't publish standalone per-unit pricing the way Microsoft does; each is typically bundled into an existing platform contract and quoted through sales, which makes a like-for-like comparison harder to run in public. What's consistent across all of them, Microsoft included, is that alert and log data flows through a vendor-hosted inference layer by design. That's the tradeoff a self-hosted stack is built to avoid, not just the line-item cost.

Pricing fluctuates based on GPU availability. The prices above are based on 25 Jul 2026 and may have changed. Check current GPU pricing → for live rates.

Two more things worth knowing before you commit budget to either path: don't confuse SOC (security operations center, what this post is about) with SOC 2 (the audit standard covering a vendor's own internal controls). If your evaluation criteria for a GPU provider include SOC 2 attestation, our SOC 2 compliant GPU cloud providers guide covers that separately. And if your SOC copilot's recommendations feed into an automated response action rather than staying purely advisory, check whether that crosses into high-risk categories under the EU AI Act before you deploy, since the compliance bar for an advisory copilot and an acting agent isn't the same.


An AI SOC analyst agent only earns its place if the alert data it triages never leaves infrastructure you control. Spheron's per-minute billing means a triage copilot's GPU cost tracks real alert volume, not a fixed vendor floor you pay whether the SOC is quiet or on fire.

A100 GPU pricing → | Spheron H100 instances → | View all GPU pricing →

FAQ / 05

Frequently Asked Questions

Foundation-Sec-8B is Cisco Foundation AI's open-weight, Apache 2.0 model built on the Llama-3.1-8B backbone and continually pretrained on roughly 5.1 billion tokens of cybersecurity-specific text: CVEs, CWEs, MITRE ATT&CK data, incident reports, and security tooling documentation. Cisco reports it matches or exceeds Llama 3.1 70B on core cybersecurity benchmarks despite being nearly a tenth the size, which means SOC triage and summarization workloads that would otherwise need a 70B-class model fit on a single mid-tier GPU instead.

Yes, and that is the entire point versus a hosted copilot API. Every alert triage prompt carries raw log lines, internal IP ranges, hostnames, and the exact indicators of compromise your team has found, which is a uniquely sensitive payload to hand a third-party endpoint. Running the backbone model, the RAG layer, and the SIEM connector on GPUs you control means none of that data leaves your network, which matters more here than almost anywhere else on this blog because the data itself doubles as a map of your defenses.

It depends on daily alert volume and concurrent triage sessions, not headcount. A small team processing a few thousand alerts a day fits Foundation-Sec-8B comfortably on a single A100 80GB running BF16 or FP8. A mid-size SOC running Foundation-Sec-8B at higher concurrency, or layering in a 70B-class model for deeper incident summarization, needs an H100 SXM5 80GB. An MSSP or large SOC serving multiple tenants typically runs two H100s: one dedicated to triage throughput, one to the heavier backbone.

Microsoft Security Copilot bills Security Compute Units by the hour: $4/hour per provisioned SCU, with a minimum of one SCU running continuously, which works out to roughly $2,920/month before any overage usage or the Sentinel/Defender licensing it sits on top of. A single self-hosted A100 80GB running Foundation-Sec-8B against current GPU pricing costs well under that floor for a small SOC's full triage workload, and the gap widens further once overage SCUs at $6/hour get added for a busy investigation day.

Treat it as a copilot, not an autonomous responder. Gartner projects AI will automate more than half of Tier 1 SOC analyst tasks by 2028, framed explicitly as augmentation: triage, enrichment, and summarization work that frees analysts for judgment calls, not a replacement for the analyst making the containment decision. Vendor platforms like CrowdStrike's Charlotte AI describe themselves the same way, acting within expert-defined boundaries rather than taking unsupervised action, and a self-hosted stack should keep the same human-in-the-loop boundary for anything that touches containment or remediation.

Try It Yourself

Try It on Real GPUs

The GPUs behind these guides are the ones you can rent here: H100s, H200s, B200s, and more, billed per minute with no contracts and no minimum. Pick one and you are live in under two minutes.

Deploy Time
< 2 min
Uptime SLA
99.9%
GPU Models
10+
Billing
Per-Min