首页
/ AI Engineering Hub:从 OCR、RAG 到多智能体系统的完整学习路径与项目实战索引

AI Engineering Hub:从 OCR、RAG 到多智能体系统的完整学习路径与项目实战索引

2026-09-05 12:36:29作者:乔或婵

AI Engineering Hub 是一个面向 LLM、RAG 与 AI Agent 开发的开源项目合集,仓库内按"入门—进阶—高级"三级难度组织了 90 余个可运行的实战项目,从本地 OCR、基础 RAG 到微调推理模型与生产级智能体系统一应俱全。读完本文,你将掌握这个仓库的组织逻辑与选型依据,能沿 README.md 的分级清单找到适合自己阶段的项目,并理解其代表项目(如基于 LlamaIndex Workflow 的 RAG、基于 CrewAI + LitServe 的 Agentic RAG API)的源码结构与运行方式。

仓库定位:一个以"项目"为单位的 AI 工程学习库

仓库主文档 README.md 对项目的定位是"93+ Production-Ready Projects",覆盖所有技能层级,并提供三条明确的导航路径:

  • 零基础入门:先阅读 AI Engineering Roadmap,获得从 Python 基础到生产级 AI 的完整学习路线图;
  • 动手实践:从 Beginner Projects 的 OCR 应用与简单 RAG 起步;
  • 进阶与精通:进入 Intermediate 的 Agent 工作流与 MCP 项目,再到 Advanced 的微调与生产系统。

从仓库实际目录结构看,项目目录数已增长到 113 个,超出了 README 标注的 93 个,说明该仓库处于持续更新中;README 中的项目清单可视为"精选主干",实际目录中还包括 grpo-finetuning-qwen3colbert-ragopenai-swarm-ollama 等尚未进入主 README 清单的新增内容。

README 同时声明仓库采用 MIT License(见 LICENSE),贡献流程为 Fork → 新分支 → Pull Request;需要注意 README 中引用的 attention-is-all-you-need-implnvidia-demo 两个目录及 CONTRIBUTING.md 在当前仓库快照中并不存在,阅读清单时以实际存在的目录为准。

入门层(Beginner):单组件、可本地运行的最小闭环

入门项目的设计原则是"聚焦单一组件、实现直接",README 将其分为 OCR & Vision、Chat Interfaces & UI、Basic RAG、Multimodal & Media、Other Tools 五类。

OCR & Vision:本地视觉模型的四种实现

入门视觉项目均围绕"本地多模态模型 + Streamlit/Gradio 界面"展开,覆盖不同的开源模型选型:

项目 模型 侧重点
LaTeX OCR with Llama Llama 3.2 Vision 将 LaTeX 公式图片转换为代码
Llama OCR Llama 3.2 100% 本地 OCR 应用(Streamlit)
Gemma-3 OCR Gemma-3 结构化文本抽取
Qwen 2.5 VL OCR Qwen 2.5 VL 通用文本抽取

四个项目对比的是同一任务(图片到文本/代码)在不同开源视觉模型上的表现,适合作为模型选型的第一组实验。

Basic RAG:以 simple-rag-workflow 为例理解最小 RAG 管线

基础 RAG 类包括 Simple RAG WorkflowDocument Chat RAGFastest RAG StackGitHub RAGModernBERT RAGLlama 4 RAG。其中 Simple RAG Workflow 是最小可运行的本地 RAG 参考实现,环境要求为 Python 3.10+ 与 Ollama,运行步骤为:

# 1. 安装 Ollama(macOS / Linux 相同)
curl -fsSL https://ollama.com/install.sh | sh
# 2. 拉取模型
ollama pull llama3.2
# 3. 保持 Ollama 服务在后台运行
ollama serve

然后运行 workflow.ipynb 查看效果。其核心逻辑在 workflow.py 中,值得逐段拆解:

class RAGWorkflow(Workflow):
    def __init__(self, model_name="llama3.2", embedding_model="BAAI/bge-small-en-v1.5"):
        ...
        self.llm = Ollama(model=model_name)                       # 本地 LLM
        self.embed_model = HuggingFaceEmbedding(model_name=embedding_model)
        Settings.llm = self.llm                                   # 全局配置
        Settings.embed_model = self.embed_model
  • 入口与索引构建ingest 步骤,L30-L39):通过 SimpleDirectoryReader(dirname).load_data() 加载目录文档,再用 VectorStoreIndex.from_documents 建立向量索引,返回 StopEvent 结束本次运行;
  • 检索retrieve 步骤,L41-L57):index.as_retriever(similarity_top_k=2) 取相似度最高的 2 个节点,包装为 RetrieverEvent 流向下一步。索引为空时会打印提示并中止,避免无意义的生成;
  • 合成synthesize 步骤,L59-L65):使用 CompactAndRefine(streaming=True, verbose=True) 将查询与检索节点逐条压缩、精炼成最终回答,并支持流式输出;
  • 对外暴露两个便捷方法:ingest_documents(directory) 负责入库、query(query_text) 负责完整检索-生成(L67-L79)。

从源码结构看,该实现完整覆盖了"加载 → 向量化 → 检索 → 合成"四段式 RAG 管线,且默认参数(llama3.2BAAI/bge-small-en-v1.5top_k=2)全部可在 RAGWorkflow 构造函数中调整,是修改和扩展成本最低的起点。

进阶层(Intermediate):多组件系统与 Agentic 化改造

进阶项目的主线是把"检索"从单步流程升级为"智能体决策",同时引入 MCP 协议将能力外部化。

Agentic RAG:CrewAI + Web Search Fallback

Agentic RAG 是这一层的代表项目:用 CrewAI 编排检索智能体,当文档库检索不到答案时回退到 FireCrawl 网页搜索,并支持 DeepSeek-R1 或本地 Llama 3.2 两种模型后端。其 README 给出的安装与启动命令为:

pip install crewai crewai-tools chonkie[semantic] markitdown qdrant-client fastembed
streamlit run app_deep_seek.py   # 使用 deep-seek-r1
streamlit run app_llama3.2.py    # 使用本地 Llama 3.2

配套的 deploy-agentic-rag 则演示了如何把 Agentic RAG 私有化部署为 HTTP API。其 server.py 中,AgenticRAGAPI 继承 LitServe 的 ls.LitAPI

class AgenticRAGAPI(ls.LitAPI):
    def setup(self, device):
        researcher_agent = Agent(
            role="Researcher",
            goal="Research about the user's query and generate insights",
            tools=[SerperDevTool()],   # 联网搜索工具
            # llm=llm                  # 可选:LLM(model="ollama/qwen3") 走本地模型
        )
        writer_agent = Agent(role="Writer", goal="...write a concise and informative response...")
        self.crew = Crew(agents=[...], tasks=[...], verbose=True)

    def predict(self, query):
        return self.crew.kickoff(inputs={"query": query})

需要注意的运行前提(见文件头部注释,L1-L13):需将 .env.example 复制为 .env 并填入 SERPER_API_KEYOPENAI_API_KEY;如希望全本地运行,可执行 ollama pull qwen3 后取消 llm=LLM(model="ollama/qwen3") 注释。

其他进阶方向

MCP(Model Context Protocol):智能体与外部工具的连接层

README 将 MCP 单列一类并给出 10 个项目,可按用途归为四组:

模型对比与评估

进阶层还内置一组"同一任务、不同模型"的对比实验,全部基于 RAG 任务与 Opik 评估框架:Llama 4 vs DeepSeek-R1Qwen3 vs DeepSeek-R1O3 vs Claude CodeSonnet4 vs O4Sonnet4 vs Qwen3-CoderCode Model ComparisonGPT-OSS vs Qwen3,以及端到端评估方法论示例 Evaluation and Observability。每个项目都附带 eval-data/(评估问题集)与 evaluation.ipynb,可直接复现对比流程。

高级层(Advanced):微调、复杂系统与生产部署

微调与模型开发

高级 Agent 系统

这一组项目强调"多阶段流水线 + 外部记忆 + 合规约束":Multi-Agent Deep Researcher(MCP 驱动的深度研究)、Multiplatform Deep Researcher(BrightData 多平台研究)、Web Browsing Agent(CrewAI + Stagehand 浏览器自动化)、Paralegal Agent Crew(带 RAG 的法律辅助智能体)、FireCrawl Agent(带网页搜索回退的纠正式 RAG)、Context Engineering Workflow(TensorLake + Zep 研究助手)、Documentation Writer FlowParlant Conversational Agent(合规驱动的对话智能体)、Stock Portfolio Analysis Agent(含 React 前端)、Guidelines vs Traditional Prompt(结构化指南对比)。

MCP 基础设施与生产系统

学习路线:README 指出的 10 步进阶路径

ai-engineering-roadmap/README.md 给出了与本仓库项目相互印证的学习主线,其"Learning Path Summary"为:

  1. Foundation:Python 基础(推荐 Harvard CS50p,9 周);
  2. AI Basics:AI with Python(DeepLearning.AI 4 小时课程);
  3. Mathematics:线性代数 / 概率 / 统计(Khan Academy 播放列表);
  4. Understanding LLMs:3Blue1Brown 神经网络可视化系列;
  5. Research:Andrej Karpathy "Neural Networks: Zero to Hero",从零构建神经网络;
  6. Agents:先读 Anthropic《Building Effective Agents》,理解"可组合模式"而非复杂框架;
  7. Application:CrewAI 多智能体系统课程;
  8. Integration:MCP 协议(配套指南含 10+ 动手项目);
  9. Practice:本仓库的 75+(现已 90+)项目实战;
  10. Mastery:Chip Huyen《AI Engineering》书籍,深入生产级 AI 工程。

这条路线与仓库的难度分级严格对应:第 4–5 步对应理解层,第 6–8 步对应 Intermediate 的 Agent/MCP 项目,第 9 步直接落到本仓库,第 10 步则由 Advanced 生产系统项目承接。

使用方式与选型建议

获取仓库:

git clone https://gitcode.com/GitHub_Trending/ai/ai-engineering-hub.git

基于前文的项目结构,给出三条可操作的选型建议:

  • 只有一台能跑 Ollama 的机器:从 simple-rag-workflowollama pull llama3.2 + ollama serve 即可运行)或任一本地 OCR 项目起步,全部离线闭环;
  • 想理解智能体编排:按 agentic_ragdeploy-agentic-raghotel-booking-crew 的顺序,依次覆盖"检索增强 → API 化部署 → 多工具多智能体"三个层次,三者均为 CrewAI 技术栈,学习曲线连续;
  • 想自建 MCP 工具生态:优先通读 mcp-agentic-ragcursor_linkup_mcpserver.py,它们展示了工具注册与检索逻辑分离的最小模板。

仓库整体采用 MIT License(LICENSE),每个项目目录自带独立 README、依赖声明(pyproject.tomlrequirements.txt)与示例 Notebook,可独立复制、改造并集成进自己的项目。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
33
18
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.12 K
2.72 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
528
590
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
904
1.82 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
854
1.34 K
docsdocs
暂无描述
Markdown
889
5.78 K
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.52 K
1.01 K
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.33 K
1.45 K
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
983
503
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
540
384