bench-open-model

Benchmarks open-weight Hugging Face models on AWS EC2 GPU instances with vLLM.

1|Updated Aug 6, 2026
One-click install
npx skills add https://github.com/aws-samples/sample-gpu-open-weight-bench --skill bench-open-model-aws-samples
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: bench-open-model
Source: https://github.com/aws-samples/sample-gpu-open-weight-bench/tree/main/plugins/bench-open-model/skills/bench-open-model
Command: npx skills add https://github.com/aws-samples/sample-gpu-open-weight-bench --skill bench-open-model-aws-samples

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Choosing the right GPU instance and getting trustworthy throughput numbers for an open-weight model is hard: VRAM sizing is error-prone, inference caches contaminate benchmark results, and forgotten EC2 instances keep billing. This Skill automates the full cycle of sizing, provisioning, cache-honest load testing, reporting, and teardown on AWS. ## Core Features & Use Cases - VRAM sizing and instance selection: Computes weights, KV cache, and overhead from Hugging Face metadata, then ranks EC2 GPU instances using live pricing and availability, failing closed on architectures it cannot size reliably (MLA, sliding-window, Mamba/SSM). - Automated provisioning and teardown: Creates a single CloudFormation stack (instance, security group locked to your IP, key pair, IAM role) with AZ/region capacity fallback, and deletes it with verified teardown plus an orphan-stack sweep. - Cache-honest concurrency sweeps: Runs text or vision load tests with unique payloads, cold-cache restarts, and validation that rejects truncated or failed requests, so reported tokens-per-second and latency numbers are real. - Use Case: Ask Claude to benchmark a model like Qwen2.5-7B-Instruct; it picks a cost-appropriate GPU instance, serves the model on vLLM, sweeps concurrency levels, writes a report with the saturation point and cost-per-1k-tokens, then tears everything down. ## Quick Start Ask Claude to benchmark a specific Hugging Face model ID on AWS, for example by saying: benchmark the throughput and latency of meta-llama/Llama-3.1-8B-Instruct on AWS GPU hardware.

Frequently Asked Questions about bench-open-model

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I benchmark a Hugging Face model on AWS GPU instances?

Provide the Hugging Face model ID and the Skill sizes its VRAM needs, picks an EC2 GPU instance with live pricing, provisions it, serves the model on vLLM, runs a concurrency sweep, and tears everything down. You approve the plan and cost once before any spending begins.

How do I choose the right EC2 GPU instance for an LLM?

The sizing script computes weights plus KV cache plus overhead from the model's config.json and ranks candidate instances using live describe-instance-types data and On-Demand pricing. It prefers the smallest single-GPU instance that fits, since one replica per GPU beats tensor parallelism for models that fit on one card.

Does it support vision and multimodal models?

Yes, it handles text LLMs, MoE models, and multimodal vision/OCR models that vLLM can serve. Vision benchmarks use a --vision provisioning flag and generate unique page images at a chosen DPI, since input resolution is the dominant cost lever for vision workloads.

Why do LLM benchmark numbers get contaminated by caching?

Inference servers cache aggressively, so reused prompts produce inflated throughput that can be wrong by a factor of 3 or more. The harness restarts the container for a cold cache, gives every request a unique payload, and validates that the prefix cache hit rate stays near 0% before any number is reported.

What happens if a benchmark session is interrupted before teardown?

State files are written before stack creation, so teardown can resume after a lost session, and a SessionStart hook warns about instances left running. A teardown sweep lists orphaned stacks you own for confirmation-based deletion, and an on-instance watchdog self-terminates after a configurable lifetime as a backstop.

Can I run this benchmark against a production AWS account?

No, it is explicitly designed for sandbox, development, or test accounts only. GPU instances cost roughly $2-15/hr and sometimes over $100/hr, and the load generator saturates its target endpoint by design, so it must never point at shared or production infrastructure.