[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-bakrianoo--mini-rag":3,"tool-bakrianoo--mini-rag":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 真正成长为懂上",147882,2,"2026-04-09T11:32: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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108111,"2026-04-08T11:23:26",[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},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":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"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":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":76,"owner_location":77,"owner_email":78,"owner_twitter":76,"owner_website":79,"owner_url":80,"languages":81,"stars":90,"forks":91,"last_commit_at":92,"license":93,"difficulty_score":94,"env_os":95,"env_gpu":96,"env_ram":97,"env_deps":98,"category_tags":112,"github_topics":113,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":120,"updated_at":121,"faqs":122,"releases":138},4996,"bakrianoo\u002Fmini-rag","mini-rag","An Educational Project (step by step) to teach how to build a production-ready app for RAG application.","mini-rag 是一个专为教育目的设计的开源项目，旨在通过循序渐进的方式，手把手教你构建一个可用于生产环境的 RAG（检索增强生成）问答应用。它解决了初学者在学习大模型应用开发时，往往只能看到零散代码片段、难以掌握从架构设计到部署全流程的痛点。\n\n该项目特别适合希望深入理解 RAG 技术原理的开发者、学生以及人工智能爱好者。不同于仅提供最终结果的库，mini-rag 将复杂的系统工程拆解为文件上传、数据清洗、向量数据库集成、语义搜索及大模型调用等十几个具体步骤。其独特的技术亮点在于配套了详细的视频教程（虽主要为阿拉伯语，但代码逻辑通用），并涵盖了 FastAPI 后端搭建、MongoDB 数据存储、Docker 容器化部署以及本地大模型（如 Ollama）接入等实战技能。通过跟随该项目，用户不仅能获得一个最小化的 RAG 实现代码，更能建立起构建高质量 AI 应用的完整知识体系，是入门企业级 AI 开发的理想实践指南。","# mini-rag\n\nThis is a minimal implementation of the RAG model for question answering.\n\n## The Course\n\nThis is an educational project where all of the codes where explained (step by step) via a set of `Arabic` youtube videos. Please check the list:\n\n| # | Title                                    | Link                                                                                                 | Codes                                              |\n|---|------------------------------------------|------------------------------------------------------------------------------------------------------|----------------------------------------------------|\n| 1 | About the Course ماذا ولمـــاذا          | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=Vv6e2Rb1Q6w&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj)         | NA                                                 |\n| 2 | What will we build ماذا سنبنى في المشروع | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=_l5S5CdxE-Q&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=2) | NA                                                 |\n| 3 | Setup your tools الأدوات الأساسية        | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=VSFbkFRAT4w&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=3) | NA                                                 |\n| 4 | Project Architecture                     | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=Ei_nBwBbFUQ&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=4) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-001) |\n| 5 | Welcome to FastAPI                       | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=cpOuCdzN_Mo&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=5) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-002) |\n| 6 | Nested Routes + Env Values               | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=CrR2Bz2Y7Hw&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=6) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-003) |\n| 7 | Uploading a File                         | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=5alMKCbFqWs&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=7) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-004) |\n| 8 | File Processing                         | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=gQgr2iwtSBw) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-005) |\n| 9 | Docker - MongoDB - Motor                         | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=2NOKWm0xJAk) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-006) |\n| 10 | Mongo Schemes and Models                        | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=zgcnnMJXXV8) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-007) |\n| 11 | Mongo Indexing                        | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=iO8FAmUVcjE) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-008) |\n| 12 | Data Pipeline Enhancements                        | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=4x1DuezZBDU) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-008) |\n| 13 | Checkpoint-1                        | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=7xIsZkCisPk) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-008) |\n| 14 | LLM Factory                        | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=5TKRIFtIQAY) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-008) |\n| 15 | Vector DB Factory                        | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=JtS9UkvF_10) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-009) |\n| 16 | Semantic Search                       | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=V3swQKokJW8) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-010) |\n| 17 | Augmented Answers                       | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=1Wx8BoM5pLU) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-011) |\n| 18 | Checkpoint-1 + Fix Issues                       | [Video](https:\u002F\u002Fyoutu.be\u002F6zG4Idxldvg) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-012) |\n| 19 | Ollama Local LLM Server                       | [Video](https:\u002F\u002Fyoutu.be\u002F-epZ1hAAtrs) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-012) |\n| 20 | From Mongo to Postgres + SQLAlchemy & Alembic                       | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=BVOq7Ek2Up0) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-013) |\n| 21 | The way to PgVector                       | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=g99yq5zlYAE) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-014) |\n| 22 | App Deployments 1\u002F2                       | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=7QRPnAbVssg) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-015) |\n| 22 | App Deployments 2\u002F2                       | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=qJ5Hdyc4hDc) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-015) |\n| 24 | Celery Workers 1\u002F2                       | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=pX-iWWT2TJo) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-016) |\n| 25 | Celery Workers 2\u002F2                       | [Video](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=SZ5Aznjf8Kc) | [branch](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-017) |\n\n\n\n\n## Requirements\n\n- Python 3.10\n\n#### Install Dependencies\n\n```bash\nsudo apt update\nsudo apt install libpq-dev gcc python3-dev\n```\n\n#### Install Python using MiniConda\n\n1) Download and install MiniConda from [here](https:\u002F\u002Fdocs.anaconda.com\u002Ffree\u002Fminiconda\u002F#quick-command-line-install)\n2) Create a new environment using the following command:\n```bash\n$ conda create -n mini-rag python=3.10\n```\n3) Activate the environment:\n```bash\n$ conda activate mini-rag\n```\n\n### (Optional) Setup you command line interface for better readability\n\n```bash\nexport PS1=\"\\[\\033[01;32m\\]\\u@\\h:\\w\\n\\[\\033[00m\\]\\$ \"\n```\n\n### (Optional) Run Ollama Local LLM Server using Colab + Ngrok\n\n- Check the [notebook](https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1KNi3-9KtP-k-93T3wRcmRe37mRmGhL9p?usp=sharing) + [Video](https:\u002F\u002Fyoutu.be\u002F-epZ1hAAtrs)\n\n## Installation\n\n### Install the required packages\n\n```bash\n$ pip install -r requirements.txt\n```\n\n### Setup the environment variables\n\n```bash\n$ cp .env.example .env\n```\n\n### Run Alembic Migration\n\n```bash\n$ alembic upgrade head\n```\n\nSet your environment variables in the `.env` file. Like `OPENAI_API_KEY` value.\n\n## Run Docker Compose Services\n\n```bash\n$ cd docker\n$ cp .env.example .env\n```\n\n- update `.env` with your credentials\n\n\n\n```bash\n$ cd docker\n$ sudo docker compose up -d\n```\n\n## Access Services\n\n- **FastAPI**: http:\u002F\u002Flocalhost:8000\n- **Flower Dashboard**: http:\u002F\u002Flocalhost:5555 (admin\u002Fpassword from env)\n- **Grafana**: http:\u002F\u002Flocalhost:3000\n- **Prometheus**: http:\u002F\u002Flocalhost:9090\n\n## Run the FastAPI server (Development Mode)\n\n```bash\n$ uvicorn main:app --reload --host 0.0.0.0 --port 5000\n```\n\n# Celery (Development Mode)\n\nFor development, you can run Celery services manually instead of using Docker:\n\nTo Run the **Celery worker**, you need to run the following command in a separate terminal:\n\n```bash\n$ python -m celery -A celery_app worker --queues=default,file_processing,data_indexing --loglevel=info\n```\n\nTo run the **Beat scheduler**, you can run the following command in a separate terminal:\n\n```bash\n$ python -m celery -A celery_app beat --loglevel=info\n```\n\nTo Run **Flower Dashboard**, you can run the following command in a separate terminal:\n\n```bash\n$ python -m celery -A celery_app flower --conf=flowerconfig.py\n```\n\n\nopen your browser and go to `http:\u002F\u002Flocalhost:5555` to see the dashboard.\n\n## POSTMAN Collection\n\nDownload the POSTMAN collection from [\u002Fassets\u002Fmini-rag-app.postman_collection.json](\u002Fassets\u002Fmini-rag-app.postman_collection.json)\n","# mini-rag\n\n这是一个用于问答任务的极简 RAG 模型实现。\n\n## 课程介绍\n\n这是一个教育项目，所有代码都通过一系列阿拉伯语 YouTube 视频进行了逐步讲解。请查看以下列表：\n\n| # | 标题                                    | 链接                                                                                                 | 代码                                              |\n|---|------------------------------------------|------------------------------------------------------------------------------------------------------|----------------------------------------------------|\n| 1 | 关于课程 ماذا ولمـــاذا          | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=Vv6e2Rb1Q6w&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj)         | NA                                                 |\n| 2 | 我们将构建什么 ماذا سنبنى في المشروع | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=_l5S5CdxE-Q&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=2) | NA                                                 |\n| 3 | 设置你的工具 الأدوات الأساسية        | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=VSFbkFRAT4w&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=3) | NA                                                 |\n| 4 | 项目架构                     | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=Ei_nBwBbFUQ&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=4) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-001) |\n| 5 | 欢迎来到 FastAPI                       | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=cpOuCdzN_Mo&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=5) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-002) |\n| 6 | 嵌套路由 + 环境变量               | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=CrR2Bz2Y7Hw&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=6) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-003) |\n| 7 | 文件上传                         | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=5alMKCbFqWs&list=PLvLvlVqNQGHCUR2p0b8a0QpVjDUg50wQj&index=7) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-004) |\n| 8 | 文件处理                         | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=gQgr2iwtSBw) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-005) |\n| 9 | Docker - MongoDB - Motor                         | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=2NOKWm0xJAk) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-006) |\n| 10 | MongoDB 模式和模型                        | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=zgcnnMJXXV8) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-007) |\n| 11 | MongoDB 索引                        | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=iO8FAmUVcjE) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-008) |\n| 12 | 数据管道增强                        | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=4x1DuezZBDU) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-008) |\n| 13 | 第一阶段检查                        | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=7xIsZkCisPk) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-008) |\n| 14 | LLM 工厂                        | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=5TKRIFtIQAY) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-008) |\n| 15 | 向量数据库工厂                        | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=JtS9UkvF_10) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-009) |\n| 16 | 语义搜索                       | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=V3swQKokJW8) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-010) |\n| 17 | 增强答案                       | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=1Wx8BoM5pLU) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-011) |\n| 18 | 第一阶段检查 + 问题修复                       | [视频](https:\u002F\u002Fyoutu.be\u002F6zG4Idxldvg) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-012) |\n| 19 | Ollama 本地 LLM 服务器                       | [视频](https:\u002F\u002Fyoutu.be\u002F-epZ1hAAtrs) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-012) |\n| 20 | 从 MongoDB 到 Postgres + SQLAlchemy & Alembic                       | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=BVOq7Ek2Up0) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-013) |\n| 21 | PgVector 的使用方法                       | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=g99yq5zlYAE) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-014) |\n| 22 | 应用部署 1\u002F2                       | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=7QRPnAbVssg) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-015) |\n| 22 | 应用部署 2\u002F2                       | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=qJ5Hdyc4hDc) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-015) |\n| 24 | Celery 工作者 1\u002F2                       | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=pX-iWWT2TJo) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-016) |\n| 25 | Celery 工作者 2\u002F2                       | [视频](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=SZ5Aznjf8Kc) | [分支](https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Ftree\u002Ftut-017) |\n\n\n\n\n## 系统要求\n\n- Python 3.10\n\n#### 安装依赖\n\n```bash\nsudo apt update\nsudo apt install libpq-dev gcc python3-dev\n```\n\n#### 使用 MiniConda 安装 Python\n\n1) 从[这里](https:\u002F\u002Fdocs.anaconda.com\u002Ffree\u002Fminiconda\u002F#quick-command-line-install)下载并安装 MiniConda。\n2) 使用以下命令创建一个新环境：\n```bash\n$ conda create -n mini-rag python=3.10\n```\n3) 激活环境：\n```bash\n$ conda activate mini-rag\n```\n\n### （可选）设置命令行界面以提高可读性\n\n```bash\nexport PS1=\"\\[\\033[01;32m\\]\\u@\\h:\\w\\n\\[\\033[00m\\]\\$ \"\n```\n\n### （可选）使用 Colab + Ngrok 运行 Ollama 本地 LLM 服务器\n\n- 查看[笔记本](https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1KNi3-9KtP-k-93T3wRcmRe37mRmGhL9p?usp=sharing) + [视频](https:\u002F\u002Fyoutu.be\u002F-epZ1hAAtrs)\n\n## 安装步骤\n\n### 安装所需包\n\n```bash\n$ pip install -r requirements.txt\n```\n\n### 设置环境变量\n\n```bash\n$ cp .env.example .env\n```\n\n### 运行 Alembic 迁移\n\n```bash\n$ alembic upgrade head\n```\n\n在 `.env` 文件中设置你的环境变量，例如 `OPENAI_API_KEY` 的值。\n\n## 运行 Docker Compose 服务\n\n```bash\n$ cd docker\n$ cp .env.example .env\n```\n\n- 使用你的凭据更新 `.env`\n\n\n\n```bash\n$ cd docker\n$ sudo docker compose up -d\n```\n\n## 访问服务\n\n- **FastAPI**: http:\u002F\u002Flocalhost:8000\n- **Flower 仪表盘**: http:\u002F\u002Flocalhost:5555（管理员\u002F密码来自环境变量）\n- **Grafana**: http:\u002F\u002Flocalhost:3000\n- **Prometheus**: http:\u002F\u002Flocalhost:9090\n\n## 运行 FastAPI 服务器（开发模式）\n\n```bash\n$ uvicorn main:app --reload --host 0.0.0.0 --port 5000\n```\n\n# Celery（开发模式）\n\n在开发环境中，您可以手动运行 Celery 服务，而无需使用 Docker：\n\n要运行 **Celery 工作进程**，您需要在另一个终端中执行以下命令：\n\n```bash\n$ python -m celery -A celery_app worker --queues=default,file_processing,data_indexing --loglevel=info\n```\n\n要运行 **Beat 调度器**，您可以在另一个终端中执行以下命令：\n\n```bash\n$ python -m celery -A celery_app beat --loglevel=info\n```\n\n要运行 **Flower 仪表板**，您可以在另一个终端中执行以下命令：\n\n```bash\n$ python -m celery -A celery_app flower --conf=flowerconfig.py\n```\n\n打开浏览器并访问 `http:\u002F\u002Flocalhost:5555`，即可查看仪表板。\n\n## Postman 集合\n\n请从 [\u002Fassets\u002Fmini-rag-app.postman_collection.json](\u002Fassets\u002Fmini-rag-app.postman_collection.json) 下载 Postman 集合。","# mini-rag 快速上手指南\n\nmini-rag 是一个极简的 RAG（检索增强生成）模型实现，专为问答系统设计。本项目配套了详细的视频教程（阿拉伯语），适合希望从零构建 RAG 系统的开发者学习。\n\n## 环境准备\n\n### 系统要求\n- **操作系统**: Linux (推荐 Ubuntu\u002FDebian) 或 macOS\n- **Python 版本**: Python 3.10\n- **容器工具**: Docker & Docker Compose (用于运行数据库和中间件)\n\n### 安装前置依赖\n在终端执行以下命令安装系统级依赖：\n\n```bash\nsudo apt update\nsudo apt install libpq-dev gcc python3-dev\n```\n\n### 配置 Python 环境 (推荐使用 Miniconda)\n1. 下载并安装 [Miniconda](https:\u002F\u002Fdocs.anaconda.com\u002Ffree\u002Fminiconda\u002F#quick-command-line-install)。\n   > **国内加速建议**：如果下载缓慢，可使用清华源镜像安装或配置 conda 镜像。\n2. 创建并激活虚拟环境：\n\n```bash\nconda create -n mini-rag python=3.10\nconda activate mini-rag\n```\n\n*(可选) 优化终端提示符以便阅读：*\n```bash\nexport PS1=\"\\[\\033[01;32m\\]\\u@\\h:\\w\\n\\[\\033[00m\\]\\$ \"\n```\n\n## 安装步骤\n\n### 1. 安装 Python 依赖\n在项目根目录下执行：\n\n```bash\npip install -r requirements.txt\n```\n> **提示**：国内用户建议使用 `-i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple` 参数加速安装。\n\n### 2. 配置环境变量\n复制示例配置文件并编辑：\n\n```bash\ncp .env.example .env\n```\n请在 `.env` 文件中填入必要的密钥，例如 `OPENAI_API_KEY`。如果你计划使用本地大模型（如 Ollama），请参考项目提供的 Colab Notebook 进行设置。\n\n### 3. 初始化数据库\n执行 Alembic 迁移以创建数据库表结构：\n\n```bash\nalembic upgrade head\n```\n\n### 4. 启动基础设施服务 (Docker)\n启动 PostgreSQL、Redis、Prometheus 等依赖服务：\n\n```bash\ncd docker\ncp .env.example .env\n# 编辑 docker\u002F.env 填入你的凭证\nsudo docker compose up -d\n```\n\n## 基本使用\n\n### 启动开发服务器\n在终端中运行 FastAPI 服务：\n\n```bash\nuvicorn main:app --reload --host 0.0.0.0 --port 5000\n```\n\n### 启动后台任务处理 (Celery)\nRAG 的文件处理和索引构建需要异步任务支持。请新开终端窗口分别运行以下命令：\n\n**1. 启动 Celery Worker:**\n```bash\npython -m celery -A celery_app worker --queues=default,file_processing,data_indexing --loglevel=info\n```\n\n**2. 启动定时任务调度器 (Beat):**\n```bash\npython -m celery -A celery_app beat --loglevel=info\n```\n\n**3. (可选) 启动监控面板 (Flower):**\n```bash\npython -m celery -A celery_app flower --conf=flowerconfig.py\n```\n\n### 访问服务\n服务启动后，可通过以下地址访问：\n\n- **API 文档 (FastAPI)**: http:\u002F\u002Flocalhost:8000\n- **任务监控 (Flower)**: http:\u002F\u002Flocalhost:5555 (默认账号密码见 `.env` 配置)\n- **系统监控 (Grafana)**: http:\u002F\u002Flocalhost:3000\n- **指标采集 (Prometheus)**: http:\u002F\u002Flocalhost:9090\n\n### 测试接口\n你可以下载项目的 Postman 集合 `\u002Fassets\u002Fmini-rag-app.postman_collection.json` 导入 Postman 进行快速测试，或直接通过 API 文档上传文件并发起问答请求。","某初创团队的技术主管希望为内部知识库构建一个智能问答系统，让新员工能快速查询公司技术文档，但团队缺乏从零搭建生产级 RAG 应用的完整经验。\n\n### 没有 mini-rag 时\n- **架构设计迷茫**：开发者不清楚如何规划从文件上传、数据清洗到向量存储的完整流水线，导致项目初期反复重构代码。\n- **组件集成困难**：在连接 FastAPI 后端、MongoDB 数据库和本地大模型（如 Ollama）时，因缺乏标准范式，频繁遭遇环境配置和接口对接报错。\n- **语义搜索失效**：自行实现的检索逻辑无法准确理解用户问题的语义，常常返回无关文档片段，导致回答质量低下。\n- **学习成本高昂**：团队成员需要分散精力去查阅零散的教程来理解索引优化、数据分块等关键概念，严重拖慢交付进度。\n\n### 使用 mini-rag 后\n- **路径清晰明确**：借助 mini-rag 提供的 19 步渐进式教程，团队直接复用了经过验证的项目架构，快速搭建起包含文件处理和数据管道的稳固底座。\n- **全栈流程打通**：利用其内置的 FastAPI 路由、MongoDB 模型定义及 Docker 配置示例，顺利实现了从本地 LLM 工厂到向量数据库的无缝集成。\n- **检索精准高效**：基于 mini-rag 中成熟的语义搜索和增强回答模块，系统能精准定位文档内容并生成高质量回复，显著提升了查询准确率。\n- **边做边学落地**：通过跟随配套的阿拉伯语视频讲解与代码分支对照，团队成员在实际编码中掌握了生产级应用的核心技巧，大幅降低了试错成本。\n\nmini-rag 不仅是一个最小化实现代码库，更是一份手把手的教学指南，帮助开发者跨越理论到实践的鸿沟，快速构建可落地的 RAG 应用。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fbakrianoo_mini-rag_5a52df04.png","bakrianoo","Abu Bakr Soliman","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fbakrianoo_eedc1781.jpg","Talented Engineer with more than 10 years' experience in the Machine Learning and Data Science fields. In addition to working as a web developer for 17 years.",null,"Sinai, Egypt","bakrianoo@gmail.com","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fbakrianoo\u002F","https:\u002F\u002Fgithub.com\u002Fbakrianoo",[82,86],{"name":83,"color":84,"percentage":85},"Python","#3572A5",99.2,{"name":87,"color":88,"percentage":89},"Mako","#7e858d",0.8,563,226,"2026-04-06T09:51:16","Apache-2.0",4,"Linux","未说明 (支持通过 Ollama 运行本地 LLM，具体显卡需求取决于所选模型)","未说明",{"notes":99,"python":100,"dependencies":101},"该项目主要基于 Linux 环境（安装指令包含 apt），需安装 libpq-dev 等系统库。支持两种部署方式：使用 Docker Compose 一键启动（包含 PostgreSQL, Redis, Grafana, Prometheus 等服务）或在开发模式下手动运行。数据库后端可从 MongoDB 迁移至 PostgreSQL + PgVector。若使用本地大模型，需额外部署 Ollama 服务。","3.10",[102,103,104,105,106,107,108,109,110,111],"FastAPI","Uvicorn","Celery","SQLAlchemy","Alembic","PgVector","Motor (MongoDB)","Ollama","Flower","Docker",[52,14],[114,115,116,117,118,119],"docker","education","fastapi","genai","python","rag","2026-03-27T02:49:30.150509","2026-04-09T22:44:04.072971",[123,128,133],{"id":124,"question_zh":125,"answer_zh":126,"source_url":127},22710,"运行应用时出现模块拼写错误（module typo error），提示找不到 utils.metrics 怎么办？","该问题是由于 src\u002Futils\u002F 目录下的文件名拼写错误导致的（原文件名为 mertics.py，应为 metrics.py）。维护者确认已在最新更新中修复了此文件名拼写错误。如果遇到此问题，请确保拉取最新代码，或手动将文件名从 mertics.py 重命名为 metrics.py。","https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Fissues\u002F25",{"id":129,"question_zh":130,"answer_zh":131,"source_url":132},22711,"使用 OpenAIProvider 时遇到 TypeError: __init__() got an unexpected keyword argument 'proxies' 错误如何解决？","这是因为 OpenAI Python 客户端版本过旧导致的兼容性问题。解决方法是更新 requirements.txt 文件中的 openai 库版本。请将版本号修改为：openai==1.70.0。维护者确认该修复已包含在最新的视频教程和代码更新中。","https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Fissues\u002F21",{"id":134,"question_zh":135,"answer_zh":136,"source_url":137},22712,"在 Mac 上运行 motor==3.4.0 时与新版 pymongo 发生冲突怎么办？","这是由于 motor 依赖的 pymongo 版本不兼容导致的。解决方案是将 pymongo 的版本锁定为 4.7.2。请在 requirements 文件中添加或修改配置为：pymongo==4.7.2，以确保与 motor==3.4.0 正常协作。","https:\u002F\u002Fgithub.com\u002Fbakrianoo\u002Fmini-rag\u002Fissues\u002F27",[139],{"id":140,"version":141,"summary_zh":142,"released_at":143},136402,"minirag-mongodv-v1","本次发布针对由 MongoDB 支持的 `miniRAG` 版本。","2024-12-02T07:17:31"]