[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CAM79N7YDA6SWKS2X93A6G":3,"skill-same:01M6CAM79N7YDA6SWKS2X93A6G":111},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":64,"commitSha":65,"skillDirectory":66,"forksCount":67,"repositoryHtmlUrl":68,"repositoryHomepageUrl":6,"ownerHtmlUrl":69,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":70,"install":71,"resources":84},"01M6CAM79N7YDA6SWKS2X93A6G","serving-llms-vllm",null,"vLLM: high-throughput LLM serving, OpenAI API, quantization.","adnichols\u002Fai-configs","adnichols","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F493746?v=4","01M6C33VRY9WF6XWYPT1AFA7JJ","Aaron Nichols","01M6C33VWTNKGRM92E9G643V4W",5,"MIT","https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fprofiles\u002Fwriting\u002Fskills\u002F.archive\u002Fvllm\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42],"llms","vLLM","serving llms vllm","macos","linux","inference","research","openai","openai api","tensor","Inference Serving","Transformers","Production","api","2026-11-10 10:12:30",false,"---\nname: serving-llms-vllm\ndescription: \"vLLM: high-throughput LLM serving, OpenAI API, quantization.\"\nversion: 1.0.0\nauthor: Orchestra Research\nlicense: MIT\ndependencies: [vllm, torch, transformers]\nplatforms: [linux, macos]\nmetadata:\n  hermes:\n    tags: [vLLM, Inference Serving, PagedAttention, Continuous Batching, High Throughput, Production, OpenAI API, Quantization, Tensor Parallelism]\n\n---\n\n# vLLM - High-Performance LLM Serving\n\n## When to use\n\nUse when deploying production LLM APIs, optimizing inference latency\u002Fthroughput, or serving models with limited GPU memory. Supports OpenAI-compatible endpoints, quantization (GPTQ\u002FAWQ\u002FFP8), and tensor parallelism.\n\n## Quick start\n\nvLLM achieves 24x higher throughput than standard transformers through PagedAttention (block-based KV cache) and continuous batching (mixing prefill\u002Fdecode requests).\n\n**Installation**:\n```bash\npip install vllm\n```\n\n**Basic offline inference**:\n```python\nfrom vllm import LLM, SamplingParams\n\nllm = LLM(model=\"meta-llama\u002FLlama-3-8B-Instruct\")\nsampling = SamplingParams(temperature=0.7, max_tokens=256)\n\noutputs = llm.generate([\"Explain quantum computing\"], sampling)\nprint(outputs[0].outputs[0].text)\n```\n\n**OpenAI-compatible server**:\n```bash\nvllm serve meta-llama\u002FLlama-3-8B-Instruct\n\n# Query with OpenAI SDK\npython -c \"\nfrom openai import OpenAI\nclient = OpenAI(base_url='http:\u002F\u002Flocalhost:8000\u002Fv1', api_key='EMPTY')\nprint(client.chat.completions.create(\n    model='meta-llama\u002FLlama-3-8B-Instruct',\n    messages=[{'role': 'user', 'content': 'Hello!'}]\n).choices[0].message.content)\n\"\n```\n\n## Common workflows\n\n### Workflow 1: Production API deployment\n\nCopy this checklist and track progress:\n\n```\nDeployment Progress:\n- [ ] Step 1: Configure server settings\n- [ ] Step 2: Test with limited traffic\n- [ ] Step 3: Enable monitoring\n- [ ] Step 4: Deploy to production\n- [ ] Step 5: Verify performance metrics\n```\n\n**Step 1: Configure server settings**\n\nChoose configuration based on your model size:\n\n```bash\n# For 7B-13B models on single GPU\nvllm serve meta-llama\u002FLlama-3-8B-Instruct \\\n  --gpu-memory-utilization 0.9 \\\n  --max-model-len 8192 \\\n  --port 8000\n\n# For 30B-70B models with tensor parallelism\nvllm serve meta-llama\u002FLlama-2-70b-hf \\\n  --tensor-parallel-size 4 \\\n  --gpu-memory-utilization 0.9 \\\n  --quantization awq \\\n  --port 8000\n\n# For production with caching and metrics\nvllm serve meta-llama\u002FLlama-3-8B-Instruct \\\n  --gpu-memory-utilization 0.9 \\\n  --enable-prefix-caching \\\n  --enable-metrics \\\n  --metrics-port 9090 \\\n  --port 8000 \\\n  --host 0.0.0.0\n```\n\n**Step 2: Test with limited traffic**\n\nRun load test before production:\n\n```bash\n# Install load testing tool\npip install locust\n\n# Create test_load.py with sample requests\n# Run: locust -f test_load.py --host http:\u002F\u002Flocalhost:8000\n```\n\nVerify TTFT (time to first token) \u003C 500ms and throughput > 100 req\u002Fsec.\n\n**Step 3: Enable monitoring**\n\nvLLM exposes Prometheus metrics on port 9090:\n\n```bash\ncurl http:\u002F\u002Flocalhost:9090\u002Fmetrics | grep vllm\n```\n\nKey metrics to monitor:\n- `vllm:time_to_first_token_seconds` - Latency\n- `vllm:num_requests_running` - Active requests\n- `vllm:gpu_cache_usage_perc` - KV cache utilization\n\n**Step 4: Deploy to production**\n\nUse Docker for consistent deployment:\n\n```bash\n# Run vLLM in Docker\ndocker run --gpus all -p 8000:8000 \\\n  vllm\u002Fvllm-openai:latest \\\n  --model meta-llama\u002FLlama-3-8B-Instruct \\\n  --gpu-memory-utilization 0.9 \\\n  --enable-prefix-caching\n```\n\n**Step 5: Verify performance metrics**\n\nCheck that deployment meets targets:\n- TTFT \u003C 500ms (for short prompts)\n- Throughput > target req\u002Fsec\n- GPU utilization > 80%\n- No OOM errors in logs\n\n### Workflow 2: Offline batch inference\n\nFor processing large datasets without server overhead.\n\nCopy this checklist:\n\n```\nBatch Processing:\n- [ ] Step 1: Prepare input data\n- [ ] Step 2: Configure LLM engine\n- [ ] Step 3: Run batch inference\n- [ ] Step 4: Process results\n```\n\n**Step 1: Prepare input data**\n\n```python\n# Load prompts from file\nprompts = []\nwith open(\"prompts.txt\") as f:\n    prompts = [line.strip() for line in f]\n\nprint(f\"Loaded {len(prompts)} prompts\")\n```\n\n**Step 2: Configure LLM engine**\n\n```python\nfrom vllm import LLM, SamplingParams\n\nllm = LLM(\n    model=\"meta-llama\u002FLlama-3-8B-Instruct\",\n    tensor_parallel_size=2,  # Use 2 GPUs\n    gpu_memory_utilization=0.9,\n    max_model_len=4096\n)\n\nsampling = SamplingParams(\n    temperature=0.7,\n    top_p=0.95,\n    max_tokens=512,\n    stop=[\"\u003C\u002Fs>\", \"\\n\\n\"]\n)\n```\n\n**Step 3: Run batch inference**\n\nvLLM automatically batches requests for efficiency:\n\n```python\n# Process all prompts in one call\noutputs = llm.generate(prompts, sampling)\n\n# vLLM handles batching internally\n# No need to manually chunk prompts\n```\n\n**Step 4: Process results**\n\n```python\n# Extract generated text\nresults = []\nfor output in outputs:\n    prompt = output.prompt\n    generated = output.outputs[0].text\n    results.append({\n        \"prompt\": prompt,\n        \"generated\": generated,\n        \"tokens\": len(output.outputs[0].token_ids)\n    })\n\n# Save to file\nimport json\nwith open(\"results.jsonl\", \"w\") as f:\n    for result in results:\n        f.write(json.dumps(result) + \"\\n\")\n\nprint(f\"Processed {len(results)} prompts\")\n```\n\n### Workflow 3: Quantized model serving\n\nFit large models in limited GPU memory.\n\n```\nQuantization Setup:\n- [ ] Step 1: Choose quantization method\n- [ ] Step 2: Find or create quantized model\n- [ ] Step 3: Launch with quantization flag\n- [ ] Step 4: Verify accuracy\n```\n\n**Step 1: Choose quantization method**\n\n- **AWQ**: Best for 70B models, minimal accuracy loss\n- **GPTQ**: Wide model support, good compression\n- **FP8**: Fastest on H100 GPUs\n\n**Step 2: Find or create quantized model**\n\nUse pre-quantized models from HuggingFace:\n\n```bash\n# Search for AWQ models\n# Example: TheBloke\u002FLlama-2-70B-AWQ\n```\n\n**Step 3: Launch with quantization flag**\n\n```bash\n# Using pre-quantized model\nvllm serve TheBloke\u002FLlama-2-70B-AWQ \\\n  --quantization awq \\\n  --tensor-parallel-size 1 \\\n  --gpu-memory-utilization 0.95\n\n# Results: 70B model in ~40GB VRAM\n```\n\n**Step 4: Verify accuracy**\n\nTest outputs match expected quality:\n\n```python\n# Compare quantized vs non-quantized responses\n# Verify task-specific performance unchanged\n```\n\n## When to use vs alternatives\n\n**Use vLLM when:**\n- Deploying production LLM APIs (100+ req\u002Fsec)\n- Serving OpenAI-compatible endpoints\n- Limited GPU memory but need large models\n- Multi-user applications (chatbots, assistants)\n- Need low latency with high throughput\n\n**Use alternatives instead:**\n- **llama.cpp**: CPU\u002Fedge inference, single-user\n- **HuggingFace transformers**: Research, prototyping, one-off generation\n- **TensorRT-LLM**: NVIDIA-only, need absolute maximum performance\n- **Text-Generation-Inference**: Already in HuggingFace ecosystem\n\n## Common issues\n\n**Issue: Out of memory during model loading**\n\nReduce memory usage:\n```bash\nvllm serve MODEL \\\n  --gpu-memory-utilization 0.7 \\\n  --max-model-len 4096\n```\n\nOr use quantization:\n```bash\nvllm serve MODEL --quantization awq\n```\n\n**Issue: Slow first token (TTFT > 1 second)**\n\nEnable prefix caching for repeated prompts:\n```bash\nvllm serve MODEL --enable-prefix-caching\n```\n\nFor long prompts, enable chunked prefill:\n```bash\nvllm serve MODEL --enable-chunked-prefill\n```\n\n**Issue: Model not found error**\n\nUse `--trust-remote-code` for custom models:\n```bash\nvllm serve MODEL --trust-remote-code\n```\n\n**Issue: Low throughput (\u003C50 req\u002Fsec)**\n\nIncrease concurrent sequences:\n```bash\nvllm serve MODEL --max-num-seqs 512\n```\n\nCheck GPU utilization with `nvidia-smi` - should be >80%.\n\n**Issue: Inference slower than expected**\n\nVerify tensor parallelism uses power of 2 GPUs:\n```bash\nvllm serve MODEL --tensor-parallel-size 4  # Not 3\n```\n\nEnable speculative decoding for faster generation:\n```bash\nvllm serve MODEL --speculative-model DRAFT_MODEL\n```\n\n## Advanced topics\n\n**Server deployment patterns**: See [references\u002Fserver-deployment.md](references\u002Fserver-deployment.md) for Docker, Kubernetes, and load balancing configurations.\n\n**Performance optimization**: See [references\u002Foptimization.md](references\u002Foptimization.md) for PagedAttention tuning, continuous batching details, and benchmark results.\n\n**Quantization guide**: See [references\u002Fquantization.md](references\u002Fquantization.md) for AWQ\u002FGPTQ\u002FFP8 setup, model preparation, and accuracy comparisons.\n\n**Troubleshooting**: See [references\u002Ftroubleshooting.md](references\u002Ftroubleshooting.md) for detailed error messages, debugging steps, and performance diagnostics.\n\n## Hardware requirements\n\n- **Small models (7B-13B)**: 1x A10 (24GB) or A100 (40GB)\n- **Medium models (30B-40B)**: 2x A100 (40GB) with tensor parallelism\n- **Large models (70B+)**: 4x A100 (40GB) or 2x A100 (80GB), use AWQ\u002FGPTQ\n\nSupported platforms: NVIDIA (primary), AMD ROCm, Intel GPUs, TPUs\n\n## Resources\n\n- Official docs: https:\u002F\u002Fdocs.vllm.ai\n- GitHub: https:\u002F\u002Fgithub.com\u002Fvllm-project\u002Fvllm\n- Paper: \"Efficient Memory Management for Large Language Model Serving with PagedAttention\" (SOSP 2023)\n- Community: https:\u002F\u002Fdiscuss.vllm.ai\n\n\n\n","# vLLM - High-Performance LLM Serving\n\n## When to use\n\nUse when deploying production LLM APIs, optimizing inference latency\u002Fthroughput, or serving models with limited GPU memory. Supports OpenAI-compatible endpoints, quantization (GPTQ\u002FAWQ\u002FFP8), and tensor parallelism.\n\n## Quick start\n\nvLLM achieves 24x higher throughput than standard transformers through PagedAttention (block-based KV cache) and continuous batching (mixing prefill\u002Fdecode requests).\n\n**Installation**:\n```bash\npip install vllm\n```\n\n**Basic offline inference**:\n```python\nfrom vllm import LLM, SamplingParams\n\nllm = LLM(model=\"meta-llama\u002FLlama-3-8B-Instruct\")\nsampling = SamplingParams(temperature=0.7, max_tokens=256)\n\noutputs = llm.generate([\"Explain quantum computing\"], sampling)\nprint(outputs[0].outputs[0].text)\n```\n\n**OpenAI-compatible server**:\n```bash\nvllm serve meta-llama\u002FLlama-3-8B-Instruct\n\n# Query with OpenAI SDK\npython -c \"\nfrom openai import OpenAI\nclient = OpenAI(base_url='http:\u002F\u002Flocalhost:8000\u002Fv1', api_key='EMPTY')\nprint(client.chat.completions.create(\n    model='meta-llama\u002FLlama-3-8B-Instruct',\n    messages=[{'role': 'user', 'content': 'Hello!'}]\n).choices[0].message.content)\n\"\n```\n\n## Common workflows\n\n### Workflow 1: Production API deployment\n\nCopy this checklist and track progress:\n\n```\nDeployment Progress:\n- [ ] Step 1: Configure server settings\n- [ ] Step 2: Test with limited traffic\n- [ ] Step 3: Enable monitoring\n- [ ] Step 4: Deploy to production\n- [ ] Step 5: Verify performance metrics\n```\n\n**Step 1: Configure server settings**\n\nChoose configuration based on your model size:\n\n```bash\n# For 7B-13B models on single GPU\nvllm serve meta-llama\u002FLlama-3-8B-Instruct \\\n  --gpu-memory-utilization 0.9 \\\n  --max-model-len 8192 \\\n  --port 8000\n\n# For 30B-70B models with tensor parallelism\nvllm serve meta-llama\u002FLlama-2-70b-hf \\\n  --tensor-parallel-size 4 \\\n  --gpu-memory-utilization 0.9 \\\n  --quantization awq \\\n  --port 8000\n\n# For production with caching and metrics\nvllm serve meta-llama\u002FLlama-3-8B-Instruct \\\n  --gpu-memory-utilization 0.9 \\\n  --enable-prefix-caching \\\n  --enable-metrics \\\n  --metrics-port 9090 \\\n  --port 8000 \\\n  --host 0.0.0.0\n```\n\n**Step 2: Test with limited traffic**\n\nRun load test before production:\n\n```bash\n# Install load testing tool\npip install locust\n\n# Create test_load.py with sample requests\n# Run: locust -f test_load.py --host http:\u002F\u002Flocalhost:8000\n```\n\nVerify TTFT (time to first token) \u003C 500ms and throughput > 100 req\u002Fsec.\n\n**Step 3: Enable monitoring**\n\nvLLM exposes Prometheus metrics on port 9090:\n\n```bash\ncurl http:\u002F\u002Flocalhost:9090\u002Fmetrics | grep vllm\n```\n\nKey metrics to monitor:\n- `vllm:time_to_first_token_seconds` - Latency\n- `vllm:num_requests_running` - Active requests\n- `vllm:gpu_cache_usage_perc` - KV cache utilization\n\n**Step 4: Deploy to production**\n\nUse Docker for consistent deployment:\n\n```bash\n# Run vLLM in Docker\ndocker run --gpus all -p 8000:8000 \\\n  vllm\u002Fvllm-openai:latest \\\n  --model meta-llama\u002FLlama-3-8B-Instruct \\\n  --gpu-memory-utilization 0.9 \\\n  --enable-prefix-caching\n```\n\n**Step 5: Verify performance metrics**\n\nCheck that deployment meets targets:\n- TTFT \u003C 500ms (for short prompts)\n- Throughput > target req\u002Fsec\n- GPU utilization > 80%\n- No OOM errors in logs\n\n### Workflow 2: Offline batch inference\n\nFor processing large datasets without server overhead.\n\nCopy this checklist:\n\n```\nBatch Processing:\n- [ ] Step 1: Prepare input data\n- [ ] Step 2: Configure LLM engine\n- [ ] Step 3: Run batch inference\n- [ ] Step 4: Process results\n```\n\n**Step 1: Prepare input data**\n\n```python\n# Load prompts from file\nprompts = []\nwith open(\"prompts.txt\") as f:\n    prompts = [line.strip() for line in f]\n\nprint(f\"Loaded {len(prompts)} prompts\")\n```\n\n**Step 2: Configure LLM engine**\n\n```python\nfrom vllm import LLM, SamplingParams\n\nllm = LLM(\n    model=\"meta-llama\u002FLlama-3-8B-Instruct\",\n    tensor_parallel_size=2,  # Use 2 GPUs\n    gpu_memory_utilization=0.9,\n    max_model_len=4096\n)\n\nsampling = SamplingParams(\n    temperature=0.7,\n    top_p=0.95,\n    max_tokens=512,\n    stop=[\"\u003C\u002Fs>\", \"\\n\\n\"]\n)\n```\n\n**Step 3: Run batch inference**\n\nvLLM automatically batches requests for efficiency:\n\n```python\n# Process all prompts in one call\noutputs = llm.generate(prompts, sampling)\n\n# vLLM handles batching internally\n# No need to manually chunk prompts\n```\n\n**Step 4: Process results**\n\n```python\n# Extract generated text\nresults = []\nfor output in outputs:\n    prompt = output.prompt\n    generated = output.outputs[0].text\n    results.append({\n        \"prompt\": prompt,\n        \"generated\": generated,\n        \"tokens\": len(output.outputs[0].token_ids)\n    })\n\n# Save to file\nimport json\nwith open(\"results.jsonl\", \"w\") as f:\n    for result in results:\n        f.write(json.dumps(result) + \"\\n\")\n\nprint(f\"Processed {len(results)} prompts\")\n```\n\n### Workflow 3: Quantized model serving\n\nFit large models in limited GPU memory.\n\n```\nQuantization Setup:\n- [ ] Step 1: Choose quantization method\n- [ ] Step 2: Find or create quantized model\n- [ ] Step 3: Launch with quantization flag\n- [ ] Step 4: Verify accuracy\n```\n\n**Step 1: Choose quantization method**\n\n- **AWQ**: Best for 70B models, minimal accuracy loss\n- **GPTQ**: Wide model support, good compression\n- **FP8**: Fastest on H100 GPUs\n\n**Step 2: Find or create quantized model**\n\nUse pre-quantized models from HuggingFace:\n\n```bash\n# Search for AWQ models\n# Example: TheBloke\u002FLlama-2-70B-AWQ\n```\n\n**Step 3: Launch with quantization flag**\n\n```bash\n# Using pre-quantized model\nvllm serve TheBloke\u002FLlama-2-70B-AWQ \\\n  --quantization awq \\\n  --tensor-parallel-size 1 \\\n  --gpu-memory-utilization 0.95\n\n# Results: 70B model in ~40GB VRAM\n```\n\n**Step 4: Verify accuracy**\n\nTest outputs match expected quality:\n\n```python\n# Compare quantized vs non-quantized responses\n# Verify task-specific performance unchanged\n```\n\n## When to use vs alternatives\n\n**Use vLLM when:**\n- Deploying production LLM APIs (100+ req\u002Fsec)\n- Serving OpenAI-compatible endpoints\n- Limited GPU memory but need large models\n- Multi-user applications (chatbots, assistants)\n- Need low latency with high throughput\n\n**Use alternatives instead:**\n- **llama.cpp**: CPU\u002Fedge inference, single-user\n- **HuggingFace transformers**: Research, prototyping, one-off generation\n- **TensorRT-LLM**: NVIDIA-only, need absolute maximum performance\n- **Text-Generation-Inference**: Already in HuggingFace ecosystem\n\n## Common issues\n\n**Issue: Out of memory during model loading**\n\nReduce memory usage:\n```bash\nvllm serve MODEL \\\n  --gpu-memory-utilization 0.7 \\\n  --max-model-len 4096\n```\n\nOr use quantization:\n```bash\nvllm serve MODEL --quantization awq\n```\n\n**Issue: Slow first token (TTFT > 1 second)**\n\nEnable prefix caching for repeated prompts:\n```bash\nvllm serve MODEL --enable-prefix-caching\n```\n\nFor long prompts, enable chunked prefill:\n```bash\nvllm serve MODEL --enable-chunked-prefill\n```\n\n**Issue: Model not found error**\n\nUse `--trust-remote-code` for custom models:\n```bash\nvllm serve MODEL --trust-remote-code\n```\n\n**Issue: Low throughput (\u003C50 req\u002Fsec)**\n\nIncrease concurrent sequences:\n```bash\nvllm serve MODEL --max-num-seqs 512\n```\n\nCheck GPU utilization with `nvidia-smi` - should be >80%.\n\n**Issue: Inference slower than expected**\n\nVerify tensor parallelism uses power of 2 GPUs:\n```bash\nvllm serve MODEL --tensor-parallel-size 4  # Not 3\n```\n\nEnable speculative decoding for faster generation:\n```bash\nvllm serve MODEL --speculative-model DRAFT_MODEL\n```\n\n## Advanced topics\n\n**Server deployment patterns**: See [references\u002Fserver-deployment.md](references\u002Fserver-deployment.md) for Docker, Kubernetes, and load balancing configurations.\n\n**Performance optimization**: See [references\u002Foptimization.md](references\u002Foptimization.md) for PagedAttention tuning, continuous batching details, and benchmark results.\n\n**Quantization guide**: See [references\u002Fquantization.md](references\u002Fquantization.md) for AWQ\u002FGPTQ\u002FFP8 setup, model preparation, and accuracy comparisons.\n\n**Troubleshooting**: See [references\u002Ftroubleshooting.md](references\u002Ftroubleshooting.md) for detailed error messages, debugging steps, and performance diagnostics.\n\n## Hardware requirements\n\n- **Small models (7B-13B)**: 1x A10 (24GB) or A100 (40GB)\n- **Medium models (30B-40B)**: 2x A100 (40GB) with tensor parallelism\n- **Large models (70B+)**: 4x A100 (40GB) or 2x A100 (80GB), use AWQ\u002FGPTQ\n\nSupported platforms: NVIDIA (primary), AMD ROCm, Intel GPUs, TPUs\n\n## Resources\n\n- Official docs: https:\u002F\u002Fdocs.vllm.ai\n- GitHub: https:\u002F\u002Fgithub.com\u002Fvllm-project\u002Fvllm\n- Paper: \"Efficient Memory Management for Large Language Model Serving with PagedAttention\" (SOSP 2023)\n- Community: https:\u002F\u002Fdiscuss.vllm.ai\n\n\n\n",{"name":5,"author":48,"license":15,"version":49,"metadata":50,"platforms":59,"description":7,"dependencies":60},"Orchestra Research","1.0.0",{"hermes":51},{"tags":52},[30,39,53,54,55,41,56,57,58],"PagedAttention","Continuous Batching","High Throughput","OpenAI API","Quantization","Tensor Parallelism",[33,32],[61,62,63],"vllm","torch","transformers","main","64e2fc9afa7bb3da1138eb73399144d0e7e73e9d","_hermes\u002Fdefault\u002Fprofiles\u002Fwriting\u002Fskills\u002F.archive\u002Fvllm",4,"https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs","https:\u002F\u002Fgithub.com\u002Fadnichols","2026-11-06 00:28:38",{"source":8,"skillName":5,"commands":72,"prompt":82,"zipAvailable":83},[73,76,79],{"tool":74,"command":75},"npx","npx skills add adnichols\u002Fai-configs --skill serving-llms-vllm",{"tool":77,"command":78},"bunx","bunx skills add adnichols\u002Fai-configs --skill serving-llms-vllm",{"tool":80,"command":81},"pnpm","pnpm dlx skills add adnichols\u002Fai-configs --skill serving-llms-vllm","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fprofiles\u002Fwriting\u002Fskills\u002F.archive\u002Fvllm\u002FSKILL.md",true,[85,91,95,99,103,107],{"path":86,"resourceType":87,"resourceTypeDesc":88,"sizeBytes":89,"sourceHtmlUrl":90},"agents\u002Fopenai.yaml","REFERENCE","参考文档",150,"https:\u002F\u002Fgithub.com\u002Fcookeyholder\u002Fusing-ai-skills\u002Fblob\u002Fmain\u002Fwriting-great-skills\u002Fagents\u002Fopenai.yaml",{"path":92,"resourceType":87,"resourceTypeDesc":88,"sizeBytes":93,"sourceHtmlUrl":94},"GLOSSARY.md",18488,"https:\u002F\u002Fgithub.com\u002Fcookeyholder\u002Fusing-ai-skills\u002Fblob\u002Fmain\u002Fwriting-great-skills\u002FGLOSSARY.md",{"path":96,"resourceType":87,"resourceTypeDesc":88,"sizeBytes":97,"sourceHtmlUrl":98},"references\u002Foptimization.md",5769,"https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fprofiles\u002Fwriting\u002Fskills\u002F.archive\u002Fvllm\u002Freferences\u002Foptimization.md",{"path":100,"resourceType":87,"resourceTypeDesc":88,"sizeBytes":101,"sourceHtmlUrl":102},"references\u002Fquantization.md",6746,"https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fprofiles\u002Fwriting\u002Fskills\u002F.archive\u002Fvllm\u002Freferences\u002Fquantization.md",{"path":104,"resourceType":87,"resourceTypeDesc":88,"sizeBytes":105,"sourceHtmlUrl":106},"references\u002Fserver-deployment.md",5252,"https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fprofiles\u002Fwriting\u002Fskills\u002F.archive\u002Fvllm\u002Freferences\u002Fserver-deployment.md",{"path":108,"resourceType":87,"resourceTypeDesc":88,"sizeBytes":109,"sourceHtmlUrl":110},"references\u002Ftroubleshooting.md",9037,"https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fprofiles\u002Fwriting\u002Fskills\u002F.archive\u002Fvllm\u002Freferences\u002Ftroubleshooting.md",[112,131,161,186,197,213],{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":118,"publishedAt":43},"01M6CB7RN791P5RRRCJWWC7DAR","blocked-page-recovery","Use when a fetch fails: 403\u002F429, paywall, WAF, bot wall.","https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fskills\u002Fweb\u002Fblocked-page-recovery\u002FSKILL.md",[],[119,120,121,122,123,124,125,126,127,128,129,130,35,33,32],"recovery","page","blocked page recovery","bot","fallback","use","fetch","hermes agent","hermes","Citations","waf","windows",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":146,"publishedAt":43},"01M6CB7NQY2VVYCQJ1QBXACQF4","writing-plans","Use when creating or updating executable software plans. Keep plans as local files unless the user explicitly asks to register them in Doct.","https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fskills\u002Fsoftware-development\u002Fwriting-plans\u002FSKILL.md",[137,140,143],{"categoryNo":138,"categoryName":139,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":141,"categoryName":142,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":144,"categoryName":145,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000036","内容创作者",[147,148,149,150,151,152,153,154,155,156,157,158,124,159,126,127,160],"writing","writing plans","documentation","test","workflow","design","user","development","planning","files","implementation","html","ops","plan",{"skillNo":162,"name":163,"nameZh":6,"description":164,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":165,"categories":166,"keywords":176,"publishedAt":43},"01M6CB7JME246KZQHP73Z2STDF","test-driven-development","TDD: enforce RED-GREEN-REFACTOR, tests before code.","https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fskills\u002Fsoftware-development\u002Ftest-driven-development\u002FSKILL.md",[167,170,173],{"categoryNo":168,"categoryName":169,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":171,"categoryName":172,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":174,"categoryName":175,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000037","律师与法务",[150,154,177,178,179,126,127,180,160,181,182,183,32,184,33,185,130],"test driven development","red-green-refactor","superpowers","quality","refactor","code","debugging","tdd","testing",{"skillNo":187,"name":188,"nameZh":6,"description":189,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":190,"categories":191,"keywords":193,"publishedAt":43},"01M6CB7FQ407KQTD4Z9VAWKY54","systematic-debugging","4-phase root cause debugging: understand bugs before fixing.","https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fskills\u002Fsoftware-development\u002Fsystematic-debugging\u002FSKILL.md",[192],{"categoryNo":171,"categoryName":172,"taxonomyType":21,"taxonomyTypeDesc":22},[183,194,154,179,126,127,195,160,196,130,150,33,32],"systematic debugging","troubleshooting","investigation",{"skillNo":198,"name":199,"nameZh":6,"description":200,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":201,"categories":202,"keywords":206,"publishedAt":43},"01M6CB7D57MK88HE5YPZHKH68Q","spike","Throwaway experiments to validate an idea before build.","https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fskills\u002Fsoftware-development\u002Fspike\u002FSKILL.md",[203],{"categoryNo":204,"categoryName":205,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究",[199,130,207,208,35,209,33,32,210,211,212,126,127,160,155],"validate","experiments","prototype","feasibility","sketch","experiment",{"skillNo":214,"name":215,"nameZh":6,"description":216,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":217,"categories":218,"keywords":221,"publishedAt":43},"01M6CB7APAQ37YE5YE1MAAFT42","simplify-code","Parallel 3-agent cleanup of recent code changes.","https:\u002F\u002Fgithub.com\u002Fadnichols\u002Fai-configs\u002Fblob\u002Fmain\u002F_hermes\u002Fdefault\u002Fskills\u002Fsoftware-development\u002Fsimplify-code\u002FSKILL.md",[219,220],{"categoryNo":141,"categoryName":142,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[222,223,182,224,126,127,225,160,181,226,227,228,154,130,150,33,229,32],"simplify code","simplify","subagent","parallel","code-review","delegation","cleanup","review"]