[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-HKUDS--MiniRAG":3,"tool-HKUDS--MiniRAG":61},[4,18,26,36,44,52],{"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 真正成长为懂上",141543,2,"2026-04-06T11:32:54",[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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107888,"2026-04-06T11:32:50",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":10,"last_commit_at":50,"category_tags":51,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":53,"name":54,"github_repo":55,"description_zh":56,"stars":57,"difficulty_score":10,"last_commit_at":58,"category_tags":59,"status":17},4292,"Deep-Live-Cam","hacksider\u002FDeep-Live-Cam","Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具，用户仅需一张静态照片，即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点，让高质量的数字内容创作变得触手可及。\n\n这款工具不仅适合开发者和技术研究人员探索算法边界，更因其极简的操作逻辑（仅需三步：选脸、选摄像头、启动），广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换，还是制作趣味短视频和直播互动，Deep-Live-Cam 都能提供流畅的支持。\n\n其核心技术亮点在于强大的实时处理能力，支持口型遮罩（Mouth Mask）以保留使用者原始的嘴部动作，确保表情自然精准；同时具备“人脸映射”功能，可同时对画面中的多个主体应用不同面孔。此外，项目内置了严格的内容安全过滤机制，自动拦截涉及裸露、暴力等不当素材，并倡导用户在获得授权及明确标注的前提下合规使用，体现了技术发展与伦理责任的平衡。",88924,"2026-04-06T03:28:53",[14,15,13,60],"视频",{"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":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":75,"owner_location":75,"owner_email":75,"owner_twitter":75,"owner_website":76,"owner_url":77,"languages":78,"stars":99,"forks":100,"last_commit_at":101,"license":102,"difficulty_score":32,"env_os":103,"env_gpu":103,"env_ram":103,"env_deps":104,"category_tags":111,"github_topics":113,"view_count":32,"oss_zip_url":75,"oss_zip_packed_at":75,"status":17,"created_at":117,"updated_at":118,"faqs":119,"releases":155},4512,"HKUDS\u002FMiniRAG","MiniRAG","\"MiniRAG: Making RAG Simpler with Small and Open-Sourced Language Models\"","MiniRAG 是一个专为小型语言模型（SLM）打造的极简检索增强生成（RAG）框架。它旨在解决现有 RAG 系统在资源受限场景下，因小模型语义理解能力有限而导致的性能大幅下降问题，让轻量级模型也能在本地设备上高效运行并达到媲美大模型的效果。\n\n该工具特别适合希望在本地部署 AI 应用、关注隐私安全或受限于硬件资源的开发者与研究人员。通过引入两项核心技术，MiniRAG 实现了突破：一是“语义感知异构图索引”，将文本块与命名实体统一构建为图谱结构，降低了对复杂语义理解的依赖；二是“轻量级拓扑增强检索”，利用图结构特性进行高效知识发现，无需强大的语言能力即可精准定位信息。\n\n实验表明，MiniRAG 在使用小模型时不仅能保持优异的问答性能，还将存储需求降低至传统方法的 25%。此外，项目还开源了 LiHua-World 基准数据集，用于评估复杂查询下的轻量级 RAG 系统。如果你正在寻找一个简单、高效且易于集成的 RAG 解决方案，MiniRAG 值得尝试。","# MiniRAG: Towards Extremely Simple Retrieval-Augmented Generation\n\n![MiniRAG](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_093d2c6f1134.jpg)\n\n\u003Ca href=\".\u002FCommunication.md\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F💬Feishu-Group-07c160?style=for-the-badge&logoColor=white&labelColor=1a1a2e\">\u003C\u002Fa>\n\u003Ca href=\".\u002FCommunication.md\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FWeChat-Group-07c160?style=for-the-badge&logo=wechat&logoColor=white&labelColor=1a1a2e\">\u003C\u002Fa>\n\n\nThe Code Repository: **MiniRAG: Towards Extremely Simple Retrieval-Augmented Generation**\n\u003Cbr \u002F>\n\n[Tianyu Fan](https:\u002F\u002Ftianyufan0504.github.io\u002F), [Jingyuan Wang](https:\u002F\u002Fscholar.google.com\u002Fcitations?user=BGT3Gb8AAAAJ&hl=en), [Xubin Ren](https:\u002F\u002Fren-xubin.github.io\u002F), [Chao Huang](https:\u002F\u002Fsites.google.com\u002Fview\u002Fchaoh)* (*Correspondence)\u003Cbr \u002F>\n\u003C\u002Fdiv>\n\n\u003Ca href='https:\u002F\u002Farxiv.org\u002Fabs\u002F2501.06713'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FarXiv-2501.06713-b31b1b'>\n\n\n## 🌍 README Translations\n\n[中文说明](.\u002FREADME_CN.md) | [日本語](.\u002FREADME_JA.md)\n\n\n\n## 🎉 News\n- [x] [2025.02.27]🎯📢Now you can use `pip install minirag-hku` to run our code!\n- [x] [2025.02.14]🎯📢Now MiniRAG supports 10+ heterogeneous graph databases, including Neo4j, PostgreSQL, TiDB, etc. Happy valentine's day!🌹🌹🌹\n- [x] [2025.02.05]🎯📢Our team has released [VideoRAG](https:\u002F\u002Fgithub.com\u002FHKUDS\u002FVideoRAG) understanding extremely long-context videos.\n- [x] [2025.02.01]🎯📢Now MiniRAG supports API&Docker deployment. see [This](.\u002Fminirag\u002Fapi\u002FREADME.md) for more details.\n\n## TLDR\nMiniRAG is an extremely simple retrieval-augmented generation framework that enables small models to achieve good RAG performance through heterogeneous graph indexing and lightweight topology-enhanced retrieval.\n\n## Abstract\nThe growing demand for efficient and lightweight Retrieval-Augmented Generation (RAG) systems has highlighted significant challenges when deploying Small Language Models (SLMs) in existing RAG frameworks. Current approaches face severe performance degradation due to SLMs' limited semantic understanding and text processing capabilities, creating barriers for widespread adoption in resource-constrained scenarios. To address these fundamental limitations, we present **MiniRAG**, a novel RAG system designed for extreme simplicity and efficiency. **MiniRAG** introduces two key technical innovations: (1) a semantic-aware heterogeneous graph indexing mechanism that combines text chunks and named entities in a unified structure, reducing reliance on complex semantic understanding, and (2) a lightweight topology-enhanced retrieval approach that leverages graph structures for efficient knowledge discovery without requiring advanced language capabilities. Our extensive experiments demonstrate that **MiniRAG** achieves comparable performance to LLM-based methods even when using SLMs while requiring only 25\\% of the storage space. Additionally, we contribute a comprehensive benchmark dataset LiHua-World for evaluating lightweight RAG systems under realistic on-device scenarios with complex queries.\n\n## MiniRAG Framework\n\n![MiniRAG](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_77e97ada5d5a.jpg)\n\nMiniRAG employs a streamlined workflow built on the key components: heterogeneous graph indexing and lightweight graph-based knowledge retrieval. This architecture addresses the unique challenges faced by on-device RAG systems, optimizing for both efficiency and effectiveness.\n\n\n## Install\n\n* Install from source (Recommend)\n\n```bash\ncd MiniRAG\npip install -e .\n```\n* Install from PyPI (Our code is based on [LightRAG](https:\u002F\u002Fgithub.com\u002FHKUDS\u002FLightRAG), so you can install it directly)\n\n```bash\npip install lightrag-hku\n```\n\n## Quick Start\n* All the code can be found in the `.\u002Freproduce`.\n* Download the dataset you need.\n* Put the dataset in the `.\u002Fdataset` directory.\n* Note: We have already put the LiHua-World dataset in `.\u002Fdataset\u002FLiHua-World\u002Fdata\u002F` as `LiHuaWorld.zip`. If you want to use other dataset, you can put it in the `.\u002Fdataset\u002Fxxx`.\n\n\nThen use the following bash command to index the dataset:\n```bash\npython .\u002Freproduce\u002FStep_0_index.py\npython .\u002Freproduce\u002FStep_1_QA.py\n```\n\nOr, use the code in `.\u002Fmain.py` to initialize MiniRAG.\n\n\n### Overall Performance Table\n| Model | NaiveRAG | | GraphRAG | | LightRAG | | **MiniRAG** | |\n|-------|----------|----------|-----------|----------|-----------|----------|----------|----------|\n| | acc↑ | err↓ | acc↑ | err↓ | acc↑ | err↓ | acc↑ | err↓ |\n| LiHua-World | | | | | | | | |\n| Phi-3.5-mini-instruct | 41.22% | 23.20% | \u002F | \u002F | 39.81% | 25.39% | **53.29%** | 23.35% |\n| GLM-Edge-1.5B-Chat | 42.79% | 24.76% | \u002F | \u002F | 35.74% | 25.86% | **52.51%** | 25.71% |\n| Qwen2.5-3B-Instruct | 43.73% | 24.14% | \u002F | \u002F | 39.18% | 28.68% | **48.75%** | 26.02% |\n| MiniCPM3-4B | 43.42% | 17.08% | \u002F | \u002F | 35.42% | 21.94% | **51.25%** | 21.79% |\n| gpt-4o-mini | 46.55% | 19.12% | 35.27% | 37.77% | **56.90%** | 20.85% | 54.08% | 19.44% |\n| MultiHop-RAG | | | | | | | | |\n| Phi-3.5-mini-instruct | 42.72% | 31.34% | \u002F | \u002F | 27.03% | 11.78% | **49.96%** | 28.44% |\n| GLM-Edge-1.5B-Chat | 44.44% | 24.26% | \u002F | \u002F | \u002F | \u002F | **51.41%** | 23.44% |\n| Qwen2.5-3B-Instruct | 39.48% | 31.69% | \u002F | \u002F | 21.91% | 13.73% | **48.55%** | 33.10% |\n| MiniCPM3-4B | 39.24% | 31.42% | \u002F | \u002F | 19.48% | 10.41% | **47.77%** | 26.88% |\n| gpt-4o-mini | 53.60% | 27.19% | 60.92% | 16.86% | 64.91% | 19.37% | **68.43%** | 19.41% |\n\n\nIn the table, \u002F means the method struggles to generate effective responses.\n\n## Reproduce\nAll the code can be found in the `.\u002Freproduce` directory.\n\n## Code Structure\n\n```python\n├── dataset\n│   └── LiHua-World\n│       ├── README.md\n│       ├── README_CN.md\n│       ├── data\n│       │   ├── LiHuaWorld.zip\n│       └── qa\n│           ├── query_set.csv\n│           └── query_set.json\n├── minirag\n│   ├── kg\n│   │   ├── __init__.py\n│   │   ├── neo4j_impl.py\n│   │   └── oracle_impl.py\n│   ├── __init__.py\n│   ├── base.py\n│   ├── exceptions.py\n│   ├── llm.py\n│   ├── minirag.py\n│   ├── operate.py\n│   ├── prompt.py\n│   ├── storage.py\n│   └── utils.py\n├── reproduce\n│   ├── Step_0_index.py\n│   └── Step_1_QA.py\n├── LICENSE\n├── main.py\n├── README.md\n├── README_CN.md\n├── requirements.txt\n├── setup.py\n```\n\n## Dataset: LiHua-World\n\n![LiHuaWorld](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_a1139bf868fc.jpg)\n\nLiHua-World is a dataset specifically designed for on-device RAG scenarios, containing one year of chat records from a virtual user named LiHua. The dataset includes three types of questions: single-hop, multi-hop, and summary, with each question paired with manually annotated answers and supporting documents. For more details, please refer to the [README of LiHua-World](.\u002Fdataset\u002FLiHua-World\u002FREADME.md) dataset.\n\n## Star History\n\n\u003Ca href=\"https:\u002F\u002Fstar-history.com\u002F#HKUDS\u002FMiniRAG&Date\">\n \u003Cpicture>\n   \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_ddbee7729233.png&theme=dark\" \u002F>\n   \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_ddbee7729233.png\" \u002F>\n   \u003Cimg alt=\"Star History Chart\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_ddbee7729233.png\" \u002F>\n \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n## Contribution\n\nThank you to all our contributors!\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fgraphs\u002Fcontributors\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_02d6700442ff.png\" \u002F>\n\u003C\u002Fa>\n\n\n## Acknowledgements\nYou may refer to related work that serves as foundations for our framework and code repository,\n[nano-graphrag](https:\u002F\u002Fgithub.com\u002Fgusye1234\u002Fnano-graphrag) and [LightRAG](https:\u002F\u002Fgithub.com\u002FHKUDS\u002FLightRAG). Thanks for their wonderful works.\n\n## 🌟Citation\n\n```python\n@article{fan2025minirag,\n  title={MiniRAG: Towards Extremely Simple Retrieval-Augmented Generation},\n  author={Fan, Tianyu and Wang, Jingyuan and Ren, Xubin and Huang, Chao},\n  journal={arXiv preprint arXiv:2501.06713},\n  year={2025}\n}\n```\n\n**Thank you for your interest in our work!**\n","# MiniRAG：迈向极简的检索增强生成\n\n![MiniRAG](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_093d2c6f1134.jpg)\n\n\u003Ca href=\".\u002FCommunication.md\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F💬Feishu-Group-07c160?style=for-the-badge&logoColor=white&labelColor=1a1a2e\">\u003C\u002Fa>\n\u003Ca href=\".\u002FCommunication.md\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FWeChat-Group-07c160?style=for-the-badge&logo=wechat&logoColor=white&labelColor=1a1a2e\">\u003C\u002Fa>\n\n\n代码仓库：**MiniRAG：迈向极简的检索增强生成**\n\u003Cbr \u002F>\n\n[范天宇](https:\u002F\u002Ftianyufan0504.github.io\u002F)、[王景元](https:\u002F\u002Fscholar.google.com\u002Fcitations?user=BGT3Gb8AAAAJ&hl=en)、[任旭斌](https:\u002F\u002Fren-xubin.github.io\u002F)、[黄超](https:\u002F\u002Fsites.google.com\u002Fview\u002Fchaoh)* (*通讯作者)\u003Cbr \u002F>\n\u003C\u002Fdiv>\n\n\u003Ca href='https:\u002F\u002Farxiv.org\u002Fabs\u002F2501.06713'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FarXiv-2501.06713-b31b1b'>\n\n\n## 🌍 README 翻译\n\n[中文说明](.\u002FREADME_CN.md) | [日本語](.\u002FREADME_JA.md)\n\n\n\n## 🎉 新闻\n- [x] [2025.02.27]🎯📢现在你可以使用 `pip install minirag-hku` 来运行我们的代码了！\n- [x] [2025.02.14]🎯📢现在 MiniRAG 支持 10 多种异构图数据库，包括 Neo4j、PostgreSQL、TiDB 等。情人节快乐！🌹🌹🌹\n- [x] [2025.02.05]🎯📢我们的团队发布了 [VideoRAG](https:\u002F\u002Fgithub.com\u002FHKUDS\u002FVideoRAG)，用于理解超长上下文视频。\n- [x] [2025.02.01]🎯📢现在 MiniRAG 支持 API 和 Docker 部署。更多详情请参阅 [这里](.\u002Fminirag\u002Fapi\u002FREADME.md)。\n\n## TLDR\nMiniRAG 是一个极简的检索增强生成框架，它通过异构图索引和轻量级拓扑增强检索，使小型模型也能获得良好的 RAG 性能。\n\n## 摘要\n对高效、轻量级检索增强生成（RAG）系统的需求日益增长，这凸显了在现有 RAG 框架中部署小型语言模型（SLM）时面临的重大挑战。当前的方法由于 SLM 的语义理解和文本处理能力有限，性能会严重下降，从而阻碍了其在资源受限场景中的广泛应用。为了解决这些根本性限制，我们提出了 **MiniRAG**，这是一种专为极致简单性和效率而设计的新型 RAG 系统。**MiniRAG** 引入了两项关键技术革新：(1) 一种语义感知的异构图索引机制，将文本片段和命名实体整合到统一的结构中，从而减少对复杂语义理解的依赖；(2) 一种轻量级的拓扑增强检索方法，利用图结构进行高效的知识发现，而无需高级的语言能力。我们的大量实验表明，即使使用 SLM，**MiniRAG** 也能达到与基于 LLM 的方法相当的性能，同时仅需 25% 的存储空间。此外，我们还贡献了一个全面的基准数据集 LiHua-World，用于在复杂的查询条件下评估设备端轻量级 RAG 系统。\n\n## MiniRAG 框架\n\n![MiniRAG](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_77e97ada5d5a.jpg)\n\nMiniRAG 采用了一种精简的工作流程，其核心组件是异构图索引和基于图的轻量级知识检索。这种架构解决了设备端 RAG 系统所面临的独特挑战，兼顾了效率和效果。\n\n## 安装\n\n* 从源码安装（推荐）\n\n```bash\ncd MiniRAG\npip install -e .\n```\n* 从 PyPI 安装（我们的代码基于 [LightRAG](https:\u002F\u002Fgithub.com\u002FHKUDS\u002FLightRAG)，因此可以直接安装）\n\n```bash\npip install lightrag-hku\n```\n\n## 快速开始\n* 所有代码都可以在 `.\u002Freproduce` 中找到。\n* 下载你需要的数据集。\n* 将数据集放入 `.\u002Fdataset` 目录。\n* 注意：我们已经将 LiHua-World 数据集放在 `.\u002Fdataset\u002FLiHua-World\u002Fdata\u002F` 中，文件名为 `LiHuaWorld.zip`。如果你想使用其他数据集，可以将其放入 `.\u002Fdataset\u002Fxxx`。\n\n然后使用以下 Bash 命令来索引数据集：\n```bash\npython .\u002Freproduce\u002FStep_0_index.py\npython .\u002Freproduce\u002FStep_1_QA.py\n```\n\n或者，使用 `.\u002Fmain.py` 中的代码来初始化 MiniRAG。\n\n### 整体性能表\n| 模型 | NaiveRAG | | GraphRAG | | LightRAG | | **MiniRAG** | |\n|-------|----------|----------|-----------|----------|-----------|----------|----------|----------|\n| | acc↑ | err↓ | acc↑ | err↓ | acc↑ | err↓ | acc↑ | err↓ |\n| LiHua-World | | | | | | | | |\n| Phi-3.5-mini-instruct | 41.22% | 23.20% | \u002F | \u002F | 39.81% | 25.39% | **53.29%** | 23.35% |\n| GLM-Edge-1.5B-Chat | 42.79% | 24.76% | \u002F | \u002F | 35.74% | 25.86% | **52.51%** | 25.71% |\n| Qwen2.5-3B-Instruct | 43.73% | 24.14% | \u002F | \u002F | 39.18% | 28.68% | **48.75%** | 26.02% |\n| MiniCPM3-4B | 43.42% | 17.08% | \u002F | \u002F | 35.42% | 21.94% | **51.25%** | 21.79% |\n| gpt-4o-mini | 46.55% | 19.12% | 35.27% | 37.77% | **56.90%** | 20.85% | 54.08% | 19.44% |\n| MultiHop-RAG | | | | | | | | |\n| Phi-3.5-mini-instruct | 42.72% | 31.34% | \u002F | \u002F | 27.03% | 11.78% | **49.96%** | 28.44% |\n| GLM-Edge-1.5B-Chat | 44.44% | 24.26% | \u002F | \u002F | \u002F | \u002F | **51.41%** | 23.44% |\n| Qwen2.5-3B-Instruct | 39.48% | 31.69% | \u002F | \u002F | 21.91% | 13.73% | **48.55%** | 33.10% |\n| MiniCPM3-4B | 39.24% | 31.42% | \u002F | \u002F | 19.48% | 10.41% | **47.77%** | 26.88% |\n| gpt-4o-mini | 53.60% | 27.19% | 60.92% | 16.86% | 64.91% | 19.37% | **68.43%** | 19.41% |\n\n\n表格中，“\u002F”表示该方法难以生成有效响应。\n\n## 复现\n所有代码都可以在 `.\u002Freproduce` 目录下找到。\n\n## 代码结构\n\n```python\n├── dataset\n│   └── LiHua-World\n│       ├── README.md\n│       ├── README_CN.md\n│       ├── data\n│       │   ├── LiHuaWorld.zip\n│       └── qa\n│           ├── query_set.csv\n│           └── query_set.json\n├── minirag\n│   ├── kg\n│   │   ├── __init__.py\n│   │   ├── neo4j_impl.py\n│   │   └── oracle_impl.py\n│   ├── __init__.py\n│   ├── base.py\n│   ├── exceptions.py\n│   ├── llm.py\n│   ├── minirag.py\n│   ├── operate.py\n│   ├── prompt.py\n│   ├── storage.py\n│   └── utils.py\n├── reproduce\n│   ├── Step_0_index.py\n│   └── Step_1_QA.py\n├── LICENSE\n├── main.py\n├── README.md\n├── README_CN.md\n├── requirements.txt\n├── setup.py\n```\n\n## 数据集：LiHua-World\n\n![LiHuaWorld](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_a1139bf868fc.jpg)\n\nLiHua-World 是一个专门为设备端 RAG 场景设计的数据集，包含一位名为 LiHua 的虚拟用户一年的聊天记录。该数据集包括单跳、多跳和摘要三种类型的提问，每道题都配有手动标注的答案和相关文档。更多详细信息，请参阅 [LiHua-World 数据集的 README](.\u002Fdataset\u002FLiHua-World\u002FREADME.md)。\n\n## 星标历史\n\n\u003Ca href=\"https:\u002F\u002Fstar-history.com\u002F#HKUDS\u002FMiniRAG&Date\">\n \u003Cpicture>\n   \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_ddbee7729233.png&theme=dark\" \u002F>\n   \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_ddbee7729233.png\" \u002F>\n   \u003Cimg alt=\"星标历史图表\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_ddbee7729233.png\" \u002F>\n \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n## 贡献\n\n感谢所有贡献者！\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fgraphs\u002Fcontributors\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_readme_02d6700442ff.png\" \u002F>\n\u003C\u002Fa>\n\n\n## 致谢\n您可以参考作为我们框架和代码库基础的相关工作，\n[nano-graphrag](https:\u002F\u002Fgithub.com\u002Fgusye1234\u002Fnano-graphrag) 和 [LightRAG](https:\u002F\u002Fgithub.com\u002FHKUDS\u002FLightRAG)。感谢他们出色的工作。\n\n## 🌟引用\n```python\n@article{fan2025minirag,\n  title={MiniRAG：迈向极其简单的检索增强生成},\n  author={Fan, Tianyu and Wang, Jingyuan and Ren, Xubin and Huang, Chao},\n  journal={arXiv 预印本 arXiv:2501.06713},\n  year={2025}\n}\n```\n\n**感谢您对我们工作的关注！**","# MiniRAG 快速上手指南\n\nMiniRAG 是一个极简的检索增强生成（RAG）框架，专为小语言模型（SLM）设计。通过异构图索引和轻量级拓扑增强检索技术，它能在资源受限的场景下实现高效的知識发现，仅需大型模型方法 25% 的存储空间即可达到相当的性能。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**: Linux, macOS 或 Windows\n*   **Python 版本**: 推荐 Python 3.8 及以上版本\n*   **前置依赖**:\n    *   `pip` 包管理工具\n    *   (可选) 若需使用特定图数据库（如 Neo4j, PostgreSQL, TiDB 等），请提前部署相应服务。MiniRAG 已支持 10+ 种异构图数据库。\n\n## 安装步骤\n\n您可以通过 PyPI 直接安装，这是最便捷的方式。MiniRAG 的代码基于 LightRAG 构建。\n\n**方式一：通过 PyPI 安装（推荐）**\n\n```bash\npip install minirag-hku\n```\n\n> **注意**：根据项目更新日志，官方推荐使用 `minirag-hku` 包名进行安装。若遇到网络问题，可使用国内镜像源加速：\n> ```bash\n> pip install minirag-hku -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n> ```\n\n**方式二：源码安装**\n\n如果您需要修改源码或体验最新功能，可以选择从源码安装：\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG.git\ncd MiniRAG\npip install -e .\n```\n\n## 基本使用\n\n以下是使用 MiniRAG 进行数据索引和问答的最简流程。\n\n### 1. 准备数据\n\n将您的数据集放置在 `.\u002Fdataset` 目录下。\n*   项目已内置测试数据集 **LiHua-World**，位于 `.\u002Fdataset\u002FLiHua-World\u002Fdata\u002FLiHuaWorld.zip`。\n*   若使用自定义数据集，请将其放入 `.\u002Fdataset\u002Fxxx` 目录中。\n\n### 2. 运行索引与问答\n\n项目提供了复现脚本，按顺序执行以下两个步骤即可完成从索引构建到问答的全过程：\n\n**第一步：构建索引**\n该步骤将读取数据集并构建语义感知的异构图索引。\n\n```bash\npython .\u002Freproduce\u002FStep_0_index.py\n```\n\n**第二步：执行问答**\n该步骤将加载索引并使用轻量级拓扑增强检索回答预设问题。\n\n```bash\npython .\u002Freproduce\u002FStep_1_QA.py\n```\n\n### 3. 代码初始化示例\n\n您也可以在 Python 代码中直接初始化 MiniRAG 实例进行开发：\n\n```python\nfrom minirag import MiniRAG\n\n# 初始化 MiniRAG\nrag = MiniRAG(\n    working_dir=\".\u002Fdata_demo\", # 工作目录，用于存储索引\n    # 其他参数可根据需要配置\n)\n\n# 插入文档\nrag.insert(\"您的文档内容或文件路径\")\n\n# 执行查询\nresponse = rag.query(\"您的问题\")\nprint(response)\n```\n\n> **提示**：更多高级用法（如 API 部署、Docker 运行、自定义图数据库配置）请参考项目根目录下的 `.\u002Fminirag\u002Fapi\u002FREADME.md` 及相关文档。","某初创教育科技公司希望在低成本边缘设备（如树莓派）上部署本地化的历史知识问答助手，服务于网络不稳定的乡村学校。\n\n### 没有 MiniRAG 时\n- **模型能力受限**：受限于硬件算力只能使用小语言模型（SLM），但其语义理解能力弱，面对复杂历史人物关系查询时经常答非所问或产生幻觉。\n- **检索效率低下**：传统向量检索依赖高维语义匹配，小模型难以精准捕捉“李华与张三是同窗”这类隐含的逻辑关联，导致关键知识点漏检。\n- **资源占用过高**：为了弥补效果差距，团队曾尝试蒸馏大模型或增加冗余索引，导致存储需求激增，远超边缘设备的 25% 剩余空间预算。\n- **部署维护困难**：复杂的 RAG 流水线需要频繁调用外部大模型 API 进行重排序，在网络波动环境下系统响应极不稳定，几乎无法落地。\n\n### 使用 MiniRAG 后\n- **小模型焕发新生**：MiniRAG 通过异构图谱索引将文本块与实体（如人名、地名）统一结构化，让小模型无需深度语义理解也能基于图结构精准推理人物关系。\n- **拓扑增强检索**：利用轻量级的拓扑增强检索机制，系统能顺着知识图谱的边快速发现关联知识，显著提升了复杂多跳查询的准确率。\n- **极致节省资源**：得益于高效的图索引设计，整体存储空间压缩至原有方案的 25%，成功在低配边缘设备上流畅运行。\n- **架构极简部署**：去除了对大型重排序模型的依赖，整个检索生成流程变得极度简化，支持离线稳定运行，完美适配弱网环境。\n\nMiniRAG 通过图谱结构化与轻量检索的创新结合，成功打破了小语言模型在资源受限场景下无法构建高质量 RAG 系统的瓶颈。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHKUDS_MiniRAG_093d2c6f.jpg","HKUDS","✨Data Intelligence Lab@HKU✨","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FHKUDS_fc32cc87.jpg",null,"https:\u002F\u002Fsites.google.com\u002Fview\u002Fchaoh","https:\u002F\u002Fgithub.com\u002FHKUDS",[79,83,87,91,95],{"name":80,"color":81,"percentage":82},"Python","#3572A5",93,{"name":84,"color":85,"percentage":86},"JavaScript","#f1e05a",4.5,{"name":88,"color":89,"percentage":90},"Jupyter Notebook","#DA5B0B",1.3,{"name":92,"color":93,"percentage":94},"HTML","#e34c26",1,{"name":96,"color":97,"percentage":98},"Dockerfile","#384d54",0.2,1837,240,"2026-04-06T06:24:17","MIT","未说明",{"notes":105,"python":103,"dependencies":106},"README 中未明确列出具体的操作系统、GPU、内存及 Python 版本要求。该工具支持通过 pip 直接安装（minirag-hku 或 lightrag-hku），并支持多种异构图数据库（如 Neo4j, PostgreSQL, TiDB 等）。支持 API 和 Docker 部署。主要设计用于小型语言模型（SLMs）在资源受限场景下的运行，强调轻量级和高效。",[107,108,109,110],"lightrag-hku (或 minirag-hku)","Neo4j (可选，用于图数据库)","PostgreSQL (可选，用于图数据库)","TiDB (可选，用于图数据库)",[35,14,112],"其他",[114,115,116],"large-language-models","rag","retrieval-augmented-generation","2026-03-27T02:49:30.150509","2026-04-07T00:48:25.695990",[120,125,130,135,140,145,150],{"id":121,"question_zh":122,"answer_zh":123,"source_url":124},20526,"索引时显示加载了 0 条数据（Load KV ... with 0 data），导致无法检索，如何解决？","这通常是因为数据集文件未被正确解压。请确保您已对下载的数据集压缩包进行了**解压缩**操作，并检查 `DATA_PATH` 目录下是否存在 `.txt` 文件。如果目录为空或未解压，系统将无法读取任何数据进行索引。","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fissues\u002F28",{"id":126,"question_zh":127,"answer_zh":128,"source_url":129},20527,"运行索引（indexing）或实体提取的速度非常慢，甚至卡住不动，是什么原因？","速度慢通常是因为本地部署的小模型（SLM）输出不稳定，导致无法提取到合适的实体或关系，系统因此陷入反复重试提取的循环。\n解决方案：\n1. **切换推理后端**：建议使用 **vLLM** 部署模型，其稳定性和速度通常优于直接使用 Transformers。\n2. **使用 API 服务**：将模型部署为线上服务直接调用 API，可显著提升速度。\n3. **调试输出**：打印模型的原始输出，检查是否因格式错误导致提取失败。","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fissues\u002F68",{"id":131,"question_zh":132,"answer_zh":133,"source_url":134},20528,"使用小模型（如 1.5B 或 3B）提取实体和关系时，经常生成未在提示词中定义的实体类型（如生成了 'product' 而非指定的 'organization'），这正常吗？","这是正常现象。小语言模型（SLM）的指令遵循能力受限于参数量，很难完全避免生成预设列表之外的新类型。\nMiniRAG 的设计并不假设 SLM 能完美提取指定类型。提示词中指定的类型列表仅作为“种子类型”引导模型生成接近人类预期的结果，系统后续会处理这些提取到的实体，即使它们超出了预定义列表。","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fissues\u002F45",{"id":136,"question_zh":137,"answer_zh":138,"source_url":139},20529,"运行代码时报错 `'NetworkXStorage' object has no attribute 'get_neighbors_within_k_hops'` 或 `'QueryParam' object has no attribute ...`，如何解决？","这类错误通常是由于代码版本不一致或缺少最新修复导致的。\n1. 请确保您拉取的是仓库的**最新代码**。\n2. 维护者已在近期提交中修复了 `QueryParam` 缺少属性以及 `NetworkXStorage` 方法未定义的问题。\n3. 如果问题依旧，尝试重新安装依赖或清理缓存后重新运行。","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fissues\u002F25",{"id":141,"question_zh":142,"answer_zh":143,"source_url":144},20530,"更换了更强的模型（如从 1.5B 换到 4B）后，评估准确率反而很低，可能是什么原因？","如果更换模型后效果不佳，很可能是索引阶段（indexing）出了问题，导致知识库未正确构建。\n排查步骤：\n1. 检查 `kv_store_llm_response_cache.json` 文件是否为空。如果有生成结果，该文件不应为空。\n2. 打印模型的生成结果，观察是否有内容输出。\n3. 如果在写入缓存前数据正常但缓存为空，请检查写入逻辑。\n通常是因为新模型的输出格式与解析逻辑不匹配，导致提取失败。","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fissues\u002F58",{"id":146,"question_zh":147,"answer_zh":148,"source_url":149},20531,"MiniRAG 是否支持像 LightRAG 那样的增量更新（Incremental Update）功能？","目前的 `insert` 函数基本支持增量添加，但与 LightRAG 的管道机制有所不同：\n1. 现有逻辑中没有专门跟踪文档或分块状态（status）的机制。\n2. 如果新文档为现有实体添加了更多细节，旧实体**不会自动更新**，除非手动删除旧数据后重新插入。\n3. 目前暂无类似 `apipeline_enqueue_documents` 的后台队列处理原生支持，需自行管理文档去重和更新逻辑。","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fissues\u002F46",{"id":151,"question_zh":152,"answer_zh":153,"source_url":154},20532,"代码是否支持中文数据集？运行时出现 `shapes (0,384) and (4,384) not aligned` 错误怎么办？","代码支持中文数据集。出现维度对齐错误（shapes not aligned）通常是因为知识库中没有成功插入数据（即节点数为 0）。\n解决方法：\n1. 确认 `rag.insert` 阶段是否成功执行。\n2. 检查数据路径下是否有正确的 `.txt` 文件。\n3. 如果日志显示 `Writing graph with 0 nodes`，说明文本未被读取或提取失败，请检查文件编码及模型对中文的处理能力。","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fissues\u002F26",[156,161],{"id":157,"version":158,"summary_zh":159,"released_at":160},126528,"v0.0.2","带有 API、PyPI 等功能的 MiniRAG","2025-02-27T09:11:30",{"id":162,"version":163,"summary_zh":164,"released_at":165},126529,"v0.0.1","**完整更新日志**: https:\u002F\u002Fgithub.com\u002FHKUDS\u002FMiniRAG\u002Fcommits\u002Fv0.0.1","2025-01-16T05:04:45"]