[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-punica-ai--punica":3,"tool-punica-ai--punica":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",150037,2,"2026-04-10T23:33:47",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":72,"owner_avatar_url":73,"owner_bio":74,"owner_company":74,"owner_location":74,"owner_email":74,"owner_twitter":74,"owner_website":74,"owner_url":75,"languages":76,"stars":97,"forks":98,"last_commit_at":99,"license":100,"difficulty_score":101,"env_os":102,"env_gpu":103,"env_ram":104,"env_deps":105,"category_tags":112,"github_topics":113,"view_count":32,"oss_zip_url":74,"oss_zip_packed_at":74,"status":17,"created_at":117,"updated_at":118,"faqs":119,"releases":150},6470,"punica-ai\u002Fpunica","punica","Serving multiple LoRA finetuned LLM as one","Punica 是一个专为高效部署多个 LoRA 微调大语言模型而设计的开源服务框架。在人工智能应用中，LoRA 技术能以极低的存储和内存成本为大模型注入新知识，但传统方法在同时服务多个不同领域的微调模型时，往往面临推理延迟高、资源浪费严重的问题。\n\nPunica 巧妙地将多个 LoRA 模型整合到同一个预训练基座模型中运行，实现了“多模型如单模型”般的执行效率。其核心突破在于自主研发的 SGMV（分段聚集矩阵 - 向量乘法）CUDA 算子，该技术优化了不同请求对应不同 LoRA 参数的计算过程，完美保留了大规模批处理带来的性能优势。基准测试显示，相比 HuggingFace、vLLM 等主流系统，Punica 在文本生成吞吐量上最高提升了 12 倍。\n\n这款工具特别适合需要构建多租户 AI 服务的后端工程师、追求极致推理性能的研究人员，以及希望低成本部署多种垂直领域模型的开发者。无论您的应用场景是同时处理法律、医疗还是编程等不同领域的查询，Punica 都能帮助您在单一显卡上流畅运行多个定制化模型，显著降低硬件门槛并提升响应速度。","# Punica: Serving multiple LoRA finetuned LLM as one\n\n[(paper)](https:\u002F\u002Farxiv.org\u002Fabs\u002F2310.18547)\n\n## Demo\n\n[punica-tui-demo.webm](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fassets\u002F2470081\u002F532c6114-9322-4d53-ae88-1d0f44dc960f)\n\n```bash\npython examples\u002Ftui-multi-lora.py\n```\n\n## Overview\n\n[Low rank adapation](https:\u002F\u002Farxiv.org\u002Fabs\u002F2106.09685) (LoRA) is a parameter efficient way to add new knowledge to a pretrained LLM. Although the pretrained LLM takes 100s of GB storage, a LoRA finetuned model only adds 1% storage and memory overhead. Punica enables running multiple LoRA finetuned models at the cost of running one.\n\nHow?\n\nAssuming `W` of shape `[H1, H2]` is the weight of the pretrained model, LoRA adds two small matrices `A` of shape `[H1, r]` and `B` of `[r, H2]`. Running a input `x` on the finetuned model would be `y := x @ (W + A@B)`, which is the same as `y := x@W + x@A@B`.\n\nWhen there are `n` LoRA models, there will be `A1`, `B1`, `A2`, `B2`, ..., `An`, `Bn`.  Given a input batch `X := (x1,x2,...,xn)` that maps to each LoRA model, the output is `Y := X@W + (x1@A1@B1, x2@A2@B2, ..., xn@An@Bn)`. The left-hand-side computes the input batch on the pretrained model. It is quite efficient. The latency is almost the same as when there's only one input, thanks to the strong [batching effect](https:\u002F\u002Fle.qun.ch\u002Fen\u002Fblog\u002F2023\u002F05\u002F13\u002Ftransformer-batching\u002F).\n\nWe figured out an efficient way to compute the right-hand-side (the LoRA addon). We encapsulate this operation in a CUDA kernel, called Segmented Gather Matrix-Vector multiplication (SGMV), as illustrated below.\n\n\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fpunica-ai_punica_readme_6396c3ae618f.png\" alt=\"SGMV\" style=\"width: 400px;\">\u003C\u002Fp>\n\nIn the following microbenchmark figure, we can observe the strong batching effect of the pretrained model. Naive implementation of LoRA is slow, as depicted in the orange line. LoRA implemented via SGMV is efficient and preserves the strong batching effect.\n\n\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fpunica-ai_punica_readme_7d6763b2be45.png\" alt=\"SGMV is fast and maintains strong batching effect\" style=\"width: 400px;\">\u003C\u002Fp>\n\nThe following figure shows the text generation throughput comparison between Punica and other systems, including [HuggingFace Transformers](https:\u002F\u002Fgithub.com\u002Fhuggingface\u002Ftransformers\u002F), [DeepSpeed](https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FDeepSpeed), [FasterTransformer](https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FFasterTransformer), [vLLM](https:\u002F\u002Fgithub.com\u002Fvllm-project\u002Fvllm). The benchmark considers different settings of LoRA model popularity. *Distinct* means that each request is for a different LoRA model. *Identical* means that all requests are for the same LoRA model. *Uniform* and *Skewed* are in between. **Punica achieves 12x throughput compared to state-of-the-art systems.**\n\n\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fpunica-ai_punica_readme_2fdcec7bc564.png\" alt=\"Punica achieves 12x throughput compared to state-of-the-art systems\" style=\"width:100%\">\u003C\u002Fp>\n\nRead our paper to understand more: [Punica: Multi-Tenant LoRA Serving](https:\u002F\u002Farxiv.org\u002Fabs\u002F2310.18547).\n\n\n## Installation\n\nYou can install Punica from binary package or build from source.\n\n### Install from binary package\n\n* Pros: No need to compile. Fast to install.\n* Cons: Might not match your CUDA version, CUDA architecture, PyTorch version, or Python version.\n* Current precompiled versions:\n  * CUDA: 11.8, 12.1\n  * Python: 3.10, 3.11\n  * TORCH_CUDA_ARCH_LIST: `8.0 8.6 8.9+PTX`\n\n```bash\npip install ninja torch\npip install punica -i https:\u002F\u002Fpunica-ai.github.io\u002Fwhl\u002Fcu121\u002F --extra-index-url https:\u002F\u002Fpypi.org\u002Fsimple\n# Note: Change cu121 to your CUDA version.\n```\n\n### Build from source\n\n```bash\n# Please install torch before punica\npip install ninja numpy torch\n\n# Clone punica\ngit clone https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica.git\ncd punica\ngit submodule sync\ngit submodule update --init\n\n# If you encouter problem while compilation, set TORCH_CUDA_ARCH_LIST to your CUDA architecture.\n# export TORCH_CUDA_ARCH_LIST=\"8.0\"\n\n# Build and install punica\npip install -v --no-build-isolation .\n```\n\n## Examples\n\n### Serving multiple LoRA models\n\nSee the demo above.\n\n### Finetune & convert to Punica format & serve with Punica\n\nSee [`examples\u002Ffinetune\u002F`](examples\u002Ffinetune\u002F)\n\n### Benchmark text generation\n\n```bash\npython -m benchmarks.bench_textgen_lora --system punica --batch-size 32\n```\n\n\n## Citation\n\n```bibtex\n@misc{punica,\n    title={Punica: Multi-Tenant LoRA Serving},\n    author={Lequn Chen and Zihao Ye and Yongji Wu and Danyang Zhuo and Luis Ceze and Arvind Krishnamurthy},\n    year={2023},\n    eprint={2310.18547},\n    archivePrefix={arXiv},\n    primaryClass={cs.DC}\n}\n```\n","# Punica：将多个LoRA微调的LLM作为一个整体提供服务\n\n[(论文)](https:\u002F\u002Farxiv.org\u002Fabs\u002F2310.18547)\n\n## 演示\n\n[punica-tui-demo.webm](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fassets\u002F2470081\u002F532c6114-9322-4d53-ae88-1d0f44dc960f)\n\n```bash\npython examples\u002Ftui-multi-lora.py\n```\n\n## 概述\n\n[低秩适应](https:\u002F\u002Farxiv.org\u002Fabs\u002F2106.09685)（LoRA）是一种参数高效的微调方法，用于向预训练的语言模型中添加新知识。尽管预训练模型需要数百GB的存储空间，但通过LoRA微调后的模型仅增加约1%的存储和内存开销。Punica能够以运行单个模型的成本同时运行多个LoRA微调模型。\n\n它是如何实现的呢？\n\n假设预训练模型的权重矩阵为 `W`，形状为 `[H1, H2]`，LoRA会添加两个小矩阵 `A` 和 `B`，分别具有形状 `[H1, r]` 和 `[r, H2]`。对输入 `x` 进行微调后模型的计算可以表示为 `y := x @ (W + A@B)`，这等价于 `y := x@W + x@A@B`。\n\n当有 `n` 个LoRA模型时，就会有 `A1`, `B1`, `A2`, `B2`, ..., `An`, `Bn`。给定一个与每个LoRA模型对应的输入批次 `X := (x1,x2,...,xn)`，输出则为 `Y := X@W + (x1@A1@B1, x2@A2@B2, ..., xn@An@Bn)`。左侧部分是在预训练模型上计算输入批次，效率非常高。由于强大的 [批处理效应](https:\u002F\u002Fle.qun.ch\u002Fen\u002Fblog\u002F2023\u002F05\u002F13\u002Ftransformer-batching\u002F)，延迟几乎与只有一个输入时相同。\n\n我们找到了一种高效的方法来计算右侧部分（即LoRA附加项）。我们将这一操作封装在一个CUDA核函数中，称为分段收集矩阵-向量乘法（SGMV），如下图所示。\n\n\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fpunica-ai_punica_readme_6396c3ae618f.png\" alt=\"SGMV\" style=\"width: 400px;\">\u003C\u002Fp>\n\n在下面的微基准测试图中，我们可以观察到预训练模型的强大批处理效应。LoRA的朴素实现速度较慢，如橙色线所示。而通过SGMV实现的LoRA则非常高效，并且保持了强大的批处理效应。\n\n\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fpunica-ai_punica_readme_7d6763b2be45.png\" alt=\"SGMV速度快且保持强大的批处理效应\" style=\"width: 400px;\">\u003C\u002Fp>\n\n下图展示了Punica与其他系统（包括[HuggingFace Transformers](https:\u002F\u002Fgithub.com\u002Fhuggingface\u002Ftransformers\u002F)、[DeepSpeed](https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FDeepSpeed)、[FasterTransformer](https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FFasterTransformer)、[vLLM](https:\u002F\u002Fgithub.com\u002Fvllm-project\u002Fvllm)）在文本生成吞吐量上的比较。该基准测试考虑了不同LoRA模型流行度的设置。“Distinct”表示每个请求对应不同的LoRA模型，“Identical”表示所有请求都使用同一个LoRA模型，“Uniform”和“Skewed”介于两者之间。**Punica的吞吐量是当前最先进系统的12倍。**\n\n\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fpunica-ai_punica_readme_2fdcec7bc564.png\" alt=\"Punica的吞吐量是当前最先进系统的12倍\" style=\"width:100%\">\u003C\u002Fp>\n\n欲了解更多信息，请阅读我们的论文：[Punica：多租户LoRA服务](https:\u002F\u002Farxiv.org\u002Fabs\u002F2310.18547)。\n\n## 安装\n\n您可以从二进制包安装Punica，也可以从源代码构建。\n\n### 从二进制包安装\n\n* 优点：无需编译，安装快速。\n* 缺点：可能与您的CUDA版本、CUDA架构、PyTorch版本或Python版本不匹配。\n* 当前预编译版本：\n  * CUDA：11.8、12.1\n  * Python：3.10、3.11\n  * TORCH_CUDA_ARCH_LIST：`8.0 8.6 8.9+PTX`\n\n```bash\npip install ninja torch\npip install punica -i https:\u002F\u002Fpunica-ai.github.io\u002Fwhl\u002Fcu121\u002F --extra-index-url https:\u002F\u002Fpypi.org\u002Fsimple\n# 注意：请将cu121替换为您使用的CUDA版本。\n```\n\n### 从源代码构建\n\n```bash\n# 请先安装torch，再安装punica\npip install ninja numpy torch\n\n# 克隆punica\ngit clone https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica.git\ncd punica\ngit submodule sync\ngit submodule update --init\n\n# 如果编译过程中遇到问题，请设置TORCH_CUDA_ARCH_LIST为您使用的CUDA架构。\n# export TORCH_CUDA_ARCH_LIST=\"8.0\"\n\n# 构建并安装punica\npip install -v --no-build-isolation .\n```\n\n## 示例\n\n### 提供多个LoRA模型的服务\n\n请参阅上面的演示。\n\n### 微调、转换为Punica格式并使用Punica提供服务\n\n请参阅 [`examples\u002Ffinetune\u002F`](examples\u002Ffinetune\u002F)。\n\n### 文本生成基准测试\n\n```bash\npython -m benchmarks.bench_textgen_lora --system punica --batch-size 32\n```\n\n\n## 引用\n\n```bibtex\n@misc{punica,\n    title={Punica: Multi-Tenant LoRA Serving},\n    author={Lequn Chen and Zihao Ye and Yongji Wu and Danyang Zhuo and Luis Ceze and Arvind Krishnamurthy},\n    year={2023},\n    eprint={2310.18547},\n    archivePrefix={arXiv},\n    primaryClass={cs.DC}\n}\n```","# Punica 快速上手指南\n\nPunica 是一个高效的多租户 LoRA 服务框架，允许在单个预训练大语言模型（LLM）上同时运行多个 LoRA 微调模型，且几乎不增加额外延迟。它通过自定义 CUDA 内核（SGMV）实现了极高的吞吐量，相比现有主流系统可提升高达 12 倍的性能。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**: Linux (推荐 Ubuntu)\n*   **GPU**: 支持 CUDA 的 NVIDIA GPU (计算能力 8.0, 8.6, 8.9 及以上)\n*   **CUDA 版本**: 11.8 或 12.1 (预编译包支持版本)\n*   **Python 版本**: 3.10 或 3.11\n*   **前置依赖**:\n    *   `torch` (PyTorch)\n    *   `ninja` (构建工具)\n    *   `numpy` (仅源码安装需要)\n\n## 安装步骤\n\n您可以选择安装预编译的二进制包（推荐，速度快）或从源码构建。\n\n### 方式一：安装预编译包（推荐）\n\n此方式无需编译，安装迅速。请根据您的 CUDA 版本选择对应的索引源（以下示例为 CUDA 12.1，若使用 11.8 请将 `cu121` 改为 `cu118`）。\n\n```bash\n# 安装基础依赖\npip install ninja torch\n\n# 安装 Punica (CUDA 12.1 版本)\npip install punica -i https:\u002F\u002Fpunica-ai.github.io\u002Fwhl\u002Fcu121\u002F --extra-index-url https:\u002F\u002Fpypi.org\u002Fsimple\n```\n\n> **注意**：如果您的网络环境访问 GitHub 或 PyPI 较慢，建议配置国内 pip 镜像源（如清华源、阿里源）作为 `--extra-index-url` 的替代或补充，但 Punica 的专用 wheel 包目前需从官方提供的索引地址获取。\n\n### 方式二：从源码构建\n\n如果您使用的 CUDA 架构不在预编译列表内，或需要最新代码，可从源码构建。\n\n```bash\n# 安装构建依赖\npip install ninja numpy torch\n\n# 克隆项目\ngit clone https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica.git\ncd punica\n\n# 初始化子模块\ngit submodule sync\ngit submodule update --init\n\n# (可选) 如果遇到编译问题，请指定您的 GPU 架构，例如：\n# export TORCH_CUDA_ARCH_LIST=\"8.0\"\n\n# 构建并安装\npip install -v --no-build-isolation .\n```\n\n## 基本使用\n\n### 运行多 LoRA 服务演示\n\nPunica 提供了一个终端界面（TUI）演示，展示如何在一个进程中同时服务多个不同的 LoRA 模型。\n\n1.  确保已安装必要的演示依赖（通常包含在 examples 中）。\n2.  运行以下命令启动演示：\n\n```bash\npython examples\u002Ftui-multi-lora.py\n```\n\n该脚本将加载一个基础模型和多个 LoRA 适配器，并模拟不同请求分发到不同 LoRA 模型的场景，直观展示其批处理效率和低延迟特性。\n\n### 性能基准测试\n\n您可以快速运行文本生成基准测试，对比 Punica 与其他系统的吞吐量：\n\n```bash\npython -m benchmarks.bench_textgen_lora --system punica --batch-size 32\n```\n\n更多关于微调模型转换及高级部署的示例，请参考项目目录下的 `examples\u002Ffinetune\u002F`。","某大型电商平台的智能客服团队需要同时为家电、美妆、数码等十个不同业务线提供专属大模型服务，每个业务线都基于同一基座模型微调了独立的 LoRA 适配器以掌握特定领域知识。\n\n### 没有 punica 时\n- **资源浪费严重**：传统部署方式需为每个业务线的 LoRA 模型单独加载一次基座模型显存，导致十套服务占用十倍显存，硬件成本急剧上升。\n- **并发性能瓶颈**：当不同业务线的请求混合进入时，系统无法有效批处理，只能串行或小批量处理，导致高并发下响应延迟飙升。\n- **运维复杂度极高**：需要维护十个独立的服务实例，扩缩容、监控和版本更新的操作工作量成倍增加，故障排查困难。\n- **冷启动缓慢**：新业务线接入或流量突发时，加载完整基座模型耗时漫长，无法实现秒级弹性伸缩。\n\n### 使用 punica 后\n- **显存效率倍增**：punica 允许多个 LoRA 适配器共享同一个基座模型显存，十套服务仅需一套基座显存加极小的适配器开销，大幅降低硬件门槛。\n- **吞吐量提升 12 倍**：借助 SGMV CUDA 内核技术，punica 将不同适配器的计算高效合并，即使在“每个请求对应不同模型”的极端场景下，也能保持强大的批处理效应，显著降低延迟。\n- **统一服务架构**：只需部署一个 punica 服务实例即可动态调度所有业务线的 LoRA 模型，简化了运维流程，实现了真正的多租户管理。\n- **即时热切换**：新增或切换业务模型仅需加载微小的 LoRA 权重，实现了毫秒级的业务响应和新模型上线。\n\npunica 通过创新的算子优化，将多租户 LoRA 服务的显存成本降至接近单模型水平，同时实现了业界领先的推理吞吐量。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fpunica-ai_punica_7d6763b2.png","punica-ai","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fpunica-ai_9218e2db.png",null,"https:\u002F\u002Fgithub.com\u002Fpunica-ai",[77,81,85,89,93],{"name":78,"color":79,"percentage":80},"Python","#3572A5",58.5,{"name":82,"color":83,"percentage":84},"Cuda","#3A4E3A",24.8,{"name":86,"color":87,"percentage":88},"C++","#f34b7d",14.7,{"name":90,"color":91,"percentage":92},"Shell","#89e051",1.2,{"name":94,"color":95,"percentage":96},"CMake","#DA3434",0.8,1152,62,"2026-04-06T17:22:04","Apache-2.0",4,"Linux","必需 NVIDIA GPU。预编译包支持计算能力 8.0, 8.6, 8.9+ (如 A100, RTX 3090\u002F4090, H100)。需安装 CUDA 11.8 或 12.1。","未说明",{"notes":106,"python":107,"dependencies":108},"该工具专为多租户 LoRA 服务设计，利用 SGMV CUDA 内核实现高效批处理。安装时若从源码构建，需确保先安装 torch，并可能需要根据显卡架构设置 TORCH_CUDA_ARCH_LIST 环境变量。预编译二进制包仅支持特定的 CUDA (11.8, 12.1) 和 Python (3.10, 3.11) 版本组合。","3.10, 3.11",[109,110,111],"torch","ninja","numpy",[14,35],[114,115,116],"large-language-models","llm","lora","2026-03-27T02:49:30.150509","2026-04-11T10:05:17.872318",[120,125,130,135,140,145],{"id":121,"question_zh":122,"answer_zh":123,"source_url":124},29272,"安装时遇到 CUDA 架构版本过低或找不到运行时的错误怎么办？","这通常是因为未正确设置目标 GPU 的 CUDA 架构列表。请在安装前设置环境变量 `TORCH_CUDA_ARCH_LIST` 以匹配您的 GPU 算力（例如 A100 为 8.0）。\n\n执行命令示例：\n```bash\nenv TORCH_CUDA_ARCH_LIST=\"8.0\" pip install -v --no-build-isolation .\n```\n如果使用的是较旧的架构（\u003C sm_70），可能无法支持某些特性（如原生 bfloat16），建议升级硬件或使用软件模拟。","https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fissues\u002F8",{"id":126,"question_zh":127,"answer_zh":128,"source_url":129},29273,"运行时出现 'ModuleNotFoundError: No module named punica.ops._kernels' 错误如何解决？","这个问题通常发生在项目根目录下运行代码时，Python 优先导入了本地的 `punica` 文件夹而非已安装的包。\n\n解决方案是使用可编辑模式安装（editable installation）：\n```bash\nenv TORCH_CUDA_ARCH_LIST=\"8.0\" pip install -v -e .\n```\n或者确保不要在包含 `punica` 源码文件夹的目录中直接运行引用该模块的脚本。","https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fissues\u002F12",{"id":131,"question_zh":132,"answer_zh":133,"source_url":134},29274,"为什么要求 CUDA 架构必须 >= 8.0 (sm_80)？","主要原因是原生 `bfloat16` 数据类型支持仅在 sm_80 及更高版本的架构上可用。如果在较低版本的架构上使用，只能依赖软件模拟，这会显著降低性能。\n\n未来计划统一内核到 FlashInfer 后，可能会支持 sm_70\u002Fsm_75 架构。如需查询具体指令集的架构支持，可参考 NVIDIA PTX 文档中的 'Target ISA Notes'。","https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fissues\u002F42",{"id":136,"question_zh":137,"answer_zh":138,"source_url":139},29275,"sgmv_shrink 内核在使用 CUDA Graph 时报错或不支持怎么办？","早期版本中，由于内部计算参数的内核 `precompute_sgmv_args` 缺少流（stream）参数，导致无法在 CUDA Graph 中正常追踪。\n\n该问题已在后续提交中修复（commit: 07a40b9d）。请更新代码至最新版本。更新后，即使开启 `CUDA_LAUNCH_BLOCKING=1` 进行测试，CUDA Graph 也能正常工作。","https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fissues\u002F33",{"id":141,"question_zh":142,"answer_zh":143,"source_url":144},29276,"目前支持的 LoRA Rank（秩）有哪些？不支持的 Rank 如何处理？","当前版本主要优化并支持特定的 Rank，如 16、32、64 等。\n\n如果您的模型 Rank 不在此列，目前的变通方法是将 Adapter 填充（Padding）到最近的支持形状。虽然 BGMV 是 SGMV 的子集，但 SGMV 内核通过利用更高的算术强度，在多个输入映射到同一 LoRA 模型的场景下（如解码阶段）能提供更好的性能。","https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fissues\u002F17",{"id":146,"question_zh":147,"answer_zh":148,"source_url":149},29277,"SGMV 和 BGMV 两种实现有什么区别？生产环境推荐用哪个？","BGMV 假设每个输入对应不同的模型，适合预填充阶段但在处理共享 LoRA 模型的场景（如多个用户请求同一个 Adapter）时效率受限。\n\nSGMV 是更通用的语义，不仅包含 BGMV 的功能，还能在处理批量小计算时更好地利用计算单元，特别是在多个输入共享同一 LoRA 模型时，能通过增加算术强度显著提升吞吐量。因此，对于生产环境的多 LoRA 部署，尤其是存在模型共享的场景，推荐使用 SGMV。","https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fissues\u002F25",[151,156,161,166,171,176],{"id":152,"version":153,"summary_zh":154,"released_at":155},198068,"v1.1.0","## [1.1.0](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcompare\u002Fv1.0.3...v1.1.0) (2023-12-30)\n\n\n### 功能\n\n* **cuda-graph:** 使用 PyTorch 当前流进行 sgmv ([b5f5e1a](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcommit\u002Fb5f5e1a3aa46702c843e8815acf8f654a242e109))\n\n\n### 错误修复\n\n* **cuda-graph:** 在 sgmv_cutlass 中为 precompute_sgmv_args 指定流 ([07a40b9](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcommit\u002F07a40b9d30e98d88963e8a7e140120a25ac0d518))","2023-12-30T18:15:29",{"id":157,"version":158,"summary_zh":159,"released_at":160},198069,"v1.0.3","## [1.0.3](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcompare\u002Fv1.0.2...v1.0.3) (2023-12-28)\n\n\n### 错误修复\n\n* **release-please:** 提供 `tag_name` 参数 ([4cd735b](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcommit\u002F4cd735b747dbc113e26d4b9ede5f2bfaa06db5f0))","2023-12-28T20:49:45",{"id":162,"version":163,"summary_zh":164,"released_at":165},198070,"v1.0.2","## [1.0.2](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcompare\u002Fv1.0.1...v1.0.2) (2023-12-28)\n\n\n### 错误修复\n\n* **release-please:** 在创建发布时触发 release_wheel ([3b980a1](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcommit\u002F3b980a1baa4ca24f75da39b9b7d0cfcd8b859470))","2023-12-28T20:31:05",{"id":167,"version":168,"summary_zh":169,"released_at":170},198071,"v1.0.1","## [1.0.1](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcompare\u002Fv1.0.0...v1.0.1) (2023-12-28)\n\n\n### Bug 修复\n\n* **release-please：** 允许触发 release_wheel GitHub Actions 工作流 ([54f3d38](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcommit\u002F54f3d38e57d71503683eb275b989da63ba02e1bd))","2023-12-28T19:24:06",{"id":172,"version":173,"summary_zh":174,"released_at":175},198072,"v1.0.0","## [1.0.0](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcompare\u002Fv0.3.1...v1.0.0) (2023-12-28)\n\n\n### ⚠ 重大变更\n\n* 自动化包发布\n\n### 功能\n\n* 自动化包发布 ([31e2663](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcommit\u002F31e2663220537f4b10d65ada1a29936f04fbf953))\n\n\n### 错误修复\n\n* **pkg:** 为 sdist 和 wheel 包包含不同的文件集 ([0ef4f7b](https:\u002F\u002Fgithub.com\u002Fpunica-ai\u002Fpunica\u002Fcommit\u002F0ef4f7b7a148048908f6895aef885ee188789cde))","2023-12-28T19:13:32",{"id":177,"version":178,"summary_zh":179,"released_at":180},198073,"v0.3.1","测试包发布中。","2023-12-28T01:59:19"]