init batch tutorial

This commit is contained in:
zachary62
2025-03-31 22:10:36 -04:00
parent 70a557cf4a
commit 11f808ee8d
9 changed files with 895 additions and 54 deletions
@@ -9,51 +9,51 @@
<img src="https://img.shields.io/discord/1346833819172601907?logo=discord&style=flat">
</a>
Pocket Flow 是一个[100行代码](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)的极简主义 LLM 框架
Pocket Flow 是一个[仅有100行代码](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)的极简主义LLM框架
- **轻量级**:仅100行代码。零臃肿,零依赖,零供应商锁定。
- **表达力强**拥有你喜爱的一切——([](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[智能体](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html)、[工作流](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html)、[RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html)等等。
- **表达力强**包含你喜爱的一切——([](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[智能体](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html)、[工作流](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html)、[RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html)等等。
- **[智能体编程](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**:让AI智能体(如Cursor AI)构建智能体—生产力提升10倍!
- **[智能体编程](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**:让AI智能体(如Cursor AI)构建智能体—生产力提升10倍!
- 安装:```pip install pocketflow```或直接复制[源代码](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)(仅100行)。
- 安装方式```pip install pocketflow```或直接复制[源代码](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)(仅100行)。
- 了解更多,请查看[文档](https://the-pocket.github.io/PocketFlow/)。了解动机,阅读[故事](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just)。
- 了解更多,请查看[文档](https://the-pocket.github.io/PocketFlow/)。了解开发动机,阅读[故事](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just)。
- 🎉 加入我们的[Discord](https://discord.gg/hUHHE9Sa6T)
- 🎉 加入我们的[Discord社区](https://discord.gg/hUHHE9Sa6T)
- 🎉 感谢[@zvictor](https://www.github.com/zvictor)、[@jackylee941130](https://www.github.com/jackylee941130)和[@ZebraRoy](https://www.github.com/ZebraRoy),我们现在有了[TypeScript版本](https://github.com/The-Pocket/PocketFlow-Typescript)
## 为什么选择Pocket Flow
当前的LLM框架过于臃肿...LLM框架只需要100行代码!
当前的LLM框架过于臃肿... LLM框架只需要100行代码就够了
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/meme.jpg" width="400"/>
| | **抽象** | **应用特定包装器** | **供应商特定包装器** | **代码行数** | **大小** |
| | **抽象概念** | **特定应用包装器** | **特定厂商包装器** | **代码行数** | **大小** |
|----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:|
| LangChain | 智能体, 链 | 很多 <br><sup><sub>(例如问答摘要)</sub></sup> | 很多 <br><sup><sub>(例如OpenAI, Pinecone等)</sub></sup> | 405K | +166MB |
| CrewAI | 智能体, 链 | 很多 <br><sup><sub>(例如FileReadTool, SerperDevTool)</sub></sup> | 很多 <br><sup><sub>(例如OpenAI, Anthropic, Pinecone等)</sub></sup> | 18K | +173MB |
| SmolAgent | 智能体 | 一些 <br><sup><sub>(例如CodeAgent, VisitWebTool)</sub></sup> | 一些 <br><sup><sub>(例如DuckDuckGo, Hugging Face等)</sub></sup> | 8K | +198MB |
| LangGraph | 智能体, 图 | 一些 <br><sup><sub>(例如语义搜索)</sub></sup> | 一些 <br><sup><sub>(例如PostgresStore, SqliteSaver等) </sub></sup> | 37K | +51MB |
| AutoGen | 智能体 | 一些 <br><sup><sub>(例如,工具智能体,聊天智能体)</sub></sup> | 很多 <sup><sub>[可选]<br> (例如OpenAI, Pinecone等)</sub></sup> | 7K <br><sup><sub>(仅核心)</sub></sup> | +26MB <br><sup><sub>(仅核心)</sub></sup> |
| LangChain | 智能体, 链 | 很多 <br><sup><sub>(例如问答, 摘要)</sub></sup> | 很多 <br><sup><sub>(例如OpenAI, Pinecone等)</sub></sup> | 405K | +166MB |
| CrewAI | 智能体, 链 | 很多 <br><sup><sub>(例如FileReadTool, SerperDevTool)</sub></sup> | 很多 <br><sup><sub>(例如OpenAI, Anthropic, Pinecone等)</sub></sup> | 18K | +173MB |
| SmolAgent | 智能体 | 一些 <br><sup><sub>(例如CodeAgent, VisitWebTool)</sub></sup> | 一些 <br><sup><sub>(例如DuckDuckGo, Hugging Face等)</sub></sup> | 8K | +198MB |
| LangGraph | 智能体, 图 | 一些 <br><sup><sub>(例如语义搜索)</sub></sup> | 一些 <br><sup><sub>(例如PostgresStore, SqliteSaver等) </sub></sup> | 37K | +51MB |
| AutoGen | 智能体 | 一些 <br><sup><sub>(例如Tool Agent, Chat Agent)</sub></sup> | 很多 <sup><sub>[可选]<br> (例如OpenAI, Pinecone等)</sub></sup> | 7K <br><sup><sub>(仅核心)</sub></sup> | +26MB <br><sup><sub>(仅核心)</sub></sup> |
| **PocketFlow** | **图** | **无** | **无** | **100** | **+56KB** |
</div>
## Pocket Flow如何工作?
这[100行代码](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)捕了LLM框架的核心抽象:图!
这[100行代码](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)捕了LLM框架的核心抽象:图!
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/abstraction.png" width="900"/>
</div>
<br>
从此出发,很容易实现流行的设计模式,如([](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[智能体](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html)、[工作流](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html)、[RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html)等。
基于此,易于实现流行的设计模式,如([](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[智能体](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html)、[工作流](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html)、[RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html)等。
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/design.png" width="900"/>
@@ -65,30 +65,30 @@ Pocket Flow 是一个仅[100行代码](https://github.com/The-Pocket/PocketFlow/
| 名称 | 难度 | 描述 |
| :-------------: | :-------------: | :--------------------- |
| [聊天](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆ <br> ** | 具有对话历史的基础聊天机器人 |
| [结构化输出](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆ <br> ** | 通过提示从简历中提取结构化数据 |
| [工作流](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆ <br> ** | 一个包含大纲、内容写作和风格应用的写作工作流 |
| [智能体](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆ <br> ** | 一个能够搜索网络并回答问题的研究智能体 |
| [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆ <br> ** | 一个简单的检索增强生成过程 |
| [映射-归约](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ☆☆☆ <br> ** | 使用映射-归约模式进行批量评估的简历资格处理器 |
| [流式处理](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆ <br> ** | 具有用户中断功能的实时LLM流式演示 |
| [聊天护栏](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆ <br> ** | 处理与旅行相关查询的旅行顾问聊天机器人 |
| [多智能体](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆ <br> *初级* | 一个用于两个智能体之间异步通信的禁忌词游戏 |
| [监督者](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆ <br> *初级* | 研究智能体变得不可靠...让我们构建一个监督程 |
| [并行](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆ <br> *初级* | 展示3倍加速的并行执行演示 |
| [聊天](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆ <br> ** | 带有会话历史的基础聊天机器人 |
| [结构化输出](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆ <br> ** | 通过提示从简历中提取结构化数据 |
| [工作流](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆ <br> ** | 能够概述、撰写内容并应用样式的写作工作流 |
| [智能体](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆ <br> ** | 能够搜索网络并回答问题的研究智能体 |
| [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆ <br> ** | 简单的检索增强生成过程 |
| [Map-Reduce](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ☆☆☆ <br> ** | 使用map-reduce模式进行批量评估的简历资格处理器 |
| [流式处理](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆ <br> ** | 具有用户中断功能的实时LLM流式演示 |
| [聊天护栏](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆ <br> ** | 处理与旅行相关查询的旅行顾问聊天机器人 |
| [多智能体](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆ <br> *初级* | 两个智能体之间进行异步通信的禁忌词游戏 |
| [监督者](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆ <br> *初级* | 研究智能体变得不可靠...让我们构建一个监督程 |
| [并行处理](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆ <br> *初级* | 展示3倍加速的并行执行演示 |
| [并行流](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch-flow) | ★☆☆ <br> *初级* | 使用多个过滤器展示8倍加速的并行图像处理演示 |
| [多数投票](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆ <br> *初级* | 通过聚合多个解决方案尝试提高推理准确性 |
| [多数投票](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆ <br> *初级* | 通过汇总多个解决方案尝试提高推理准确性 |
| [思考](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-thinking) | ★☆☆ <br> *初级* | 通过思维链解决复杂推理问题 |
| [记忆](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-memory) | ★☆☆ <br> *初级* | 具有短期和长期记忆的聊天机器人 |
| [MCP](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-mcp) | ★☆☆ <br> *初级* | 使用模型上下文协议进行数值运算的智能体 |
</div>
👀 想看更多极简教程?[创建一个issue](https://github.com/The-Pocket/PocketFlow/issues/new)
👀 想看更多初学者教程?[创建一个issue](https://github.com/The-Pocket/PocketFlow/issues/new)
## 如何使用Pocket Flow
🚀 通过**智能体编程**——最快的LLM应用开发范式,其中*人类设计**智能体编码*
🚀 通过**智能体编程**——最快的LLM应用开发范式,*人类设计**智能体编码*
<br>
<div align="center">
@@ -105,15 +105,15 @@ Pocket Flow 是一个仅[100行代码](https://github.com/The-Pocket/PocketFlow/
| 应用名称 | 难度 | 主题 | 人类设计 | 智能体代码 |
| :-------------: | :-------------: | :---------------------: | :---: | :---: |
| [用Cursor构建Cursor](https://github.com/The-Pocket/Tutorial-Cursor) <br> <sup><sub>我们很快就会达到奇点...</sup></sub> | ★★★ <br> *高级* | [智能体](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html) | [设计文档](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/docs/design.md) | [流程代码](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/flow.py)
| [询AI Paul Graham](https://github.com/The-Pocket/Tutorial-YC-Partner) <br> <sup><sub>咨询AI版Paul Graham,以防你未被录取</sup></sub> | ★★☆ <br> *中级* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) <br> [映射-归约](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [设计文档](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [流程代码](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py)
| [Youtube摘要](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) <br> <sup><sub> 像对五岁孩子一样向你解释YouTube视频 </sup></sub> | ★☆☆ <br> *初级* | [映射-归约](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [设计文档](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [流程代码](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py)
| [冷启动生成器](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) <br> <sup><sub> 即时破冰器,让冷门线索变热 </sup></sub> | ★☆☆ <br> *初级* | [映射-归约](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [网络搜索](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [设计文档](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [流程代码](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
| [AIPaul Graham](https://github.com/The-Pocket/Tutorial-YC-Partner) <br> <sup><sub>如果你无法联系到真人,可以询问AI版Paul Graham</sup></sub> | ★★☆ <br> *中级* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) <br> [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [设计文档](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [流程代码](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py)
| [Youtube总结](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) <br> <sup><sub> 像解释给5岁小孩一样解释YouTube视频 </sup></sub> | ★☆☆ <br> *初级* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [设计文档](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [流程代码](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py)
| [冷启动开场白生成器](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) <br> <sup><sub> 即时破冰话题,将冷门线索变热 </sup></sub> | ★☆☆ <br> *初级* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [网络搜索](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [设计文档](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [流程代码](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
</div>
- 想学习**智能体编程**
- 查看[我的YouTube](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1),了解上述应用如何制作的视频教程!
- 查看[我的YouTube频道](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1)获取关于上述应用制作的视频教程!
- 想构建自己的LLM应用?阅读这篇[文章](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)!从[这个模板](https://github.com/The-Pocket/PocketFlow-Template-Python)开始!
@@ -0,0 +1,120 @@
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/title.png" width="600"/>
</div>
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
[![Docs](https://img.shields.io/badge/docs-latest-blue)](https://the-pocket.github.io/PocketFlow/)
<a href="https://discord.gg/hUHHE9Sa6T">
<img src="https://img.shields.io/discord/1346833819172601907?logo=discord&style=flat">
</a>
Pocket Flow est un framework LLM minimaliste de [100 lignes](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)
- **Léger**: Seulement 100 lignes. Zéro surcharge, zéro dépendances, zéro verrouillage de fournisseur.
- **Expressif**: Tout ce que vous aimez—([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agents](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Workflow](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html), et plus encore.
- **[Programmation Agentique](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**: Laissez les Agents IA (par exemple, Cursor AI) construire des Agents—productivité multipliée par 10 !
- Pour installer, ```pip install pocketflow``` ou copiez simplement le [code source](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) (seulement 100 lignes).
- Pour en savoir plus, consultez la [documentation](https://the-pocket.github.io/PocketFlow/). Pour comprendre la motivation, lisez l'[histoire](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just).
- 🎉 Rejoignez notre [discord](https://discord.gg/hUHHE9Sa6T) !
- 🎉 Merci à [@zvictor](https://www.github.com/zvictor), [@jackylee941130](https://www.github.com/jackylee941130) et [@ZebraRoy](https://www.github.com/ZebraRoy), nous avons maintenant une [version TypeScript](https://github.com/The-Pocket/PocketFlow-Typescript) !
## Pourquoi Pocket Flow ?
Les frameworks LLM actuels sont surchargés... Vous n'avez besoin que de 100 lignes pour un framework LLM !
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/meme.jpg" width="400"/>
| | **Abstraction** | **Wrappers spécifiques aux applications** | **Wrappers spécifiques aux fournisseurs** | **Lignes** | **Taille** |
|----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:|
| LangChain | Agent, Chain | Nombreux <br><sup><sub>(ex., QA, Résumé)</sub></sup> | Nombreux <br><sup><sub>(ex., OpenAI, Pinecone, etc.)</sub></sup> | 405K | +166MB |
| CrewAI | Agent, Chain | Nombreux <br><sup><sub>(ex., FileReadTool, SerperDevTool)</sub></sup> | Nombreux <br><sup><sub>(ex., OpenAI, Anthropic, Pinecone, etc.)</sub></sup> | 18K | +173MB |
| SmolAgent | Agent | Quelques <br><sup><sub>(ex., CodeAgent, VisitWebTool)</sub></sup> | Quelques <br><sup><sub>(ex., DuckDuckGo, Hugging Face, etc.)</sub></sup> | 8K | +198MB |
| LangGraph | Agent, Graph | Quelques <br><sup><sub>(ex., Recherche Sémantique)</sub></sup> | Quelques <br><sup><sub>(ex., PostgresStore, SqliteSaver, etc.) </sub></sup> | 37K | +51MB |
| AutoGen | Agent | Quelques <br><sup><sub>(ex., Tool Agent, Chat Agent)</sub></sup> | Nombreux <sup><sub>[Optionnel]<br> (ex., OpenAI, Pinecone, etc.)</sub></sup> | 7K <br><sup><sub>(core-only)</sub></sup> | +26MB <br><sup><sub>(core-only)</sub></sup> |
| **PocketFlow** | **Graph** | **Aucun** | **Aucun** | **100** | **+56KB** |
</div>
## Comment fonctionne Pocket Flow ?
Les [100 lignes](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) capturent l'abstraction principale des frameworks LLM : le Graphe !
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/abstraction.png" width="900"/>
</div>
<br>
À partir de là, il est facile d'implémenter des modèles de conception populaires comme ([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agents](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Workflow](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html), etc.
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/design.png" width="900"/>
</div>
<br>
✨ Voici les tutoriels de base :
<div align="center">
| Nom | Difficulté | Description |
| :-------------: | :-------------: | :--------------------- |
| [Chat](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆ <br> *Débutant* | Un chatbot de base avec historique de conversation |
| [Sortie Structurée](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆ <br> *Débutant* | Extraction de données structurées à partir de CV par prompt |
| [Workflow](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆ <br> *Débutant* | Un workflow d'écriture qui structure, écrit du contenu et applique un style |
| [Agent](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆ <br> *Débutant* | Un agent de recherche qui peut effectuer des recherches sur le web et répondre aux questions |
| [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆ <br> *Débutant* | Un processus simple de génération augmentée par récupération |
| [Map-Reduce](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ☆☆☆ <br> *Débutant* | Un processeur de qualification de CV utilisant le modèle map-reduce pour l'évaluation par lots |
| [Streaming](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆ <br> *Débutant* | Une démo de streaming LLM en temps réel avec capacité d'interruption utilisateur |
| [Garde-fou de Chat](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆ <br> *Débutant* | Un chatbot conseiller de voyage qui ne traite que les requêtes liées au voyage |
| [Multi-Agent](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆ <br> *Intermédiaire* | Un jeu de Taboo pour la communication asynchrone entre deux agents |
| [Superviseur](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆ <br> *Intermédiaire* | L'agent de recherche devient peu fiable... Construisons un processus de supervision |
| [Parallèle](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆ <br> *Intermédiaire* | Une démo d'exécution parallèle qui montre une accélération 3x |
| [Flux Parallèle](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch-flow) | ★☆☆ <br> *Intermédiaire* | Une démo de traitement d'image parallèle montrant une accélération 8x avec plusieurs filtres |
| [Vote à la majorité](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆ <br> *Intermédiaire* | Améliore la précision du raisonnement en agrégeant plusieurs tentatives de solution |
| [Réflexion](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-thinking) | ★☆☆ <br> *Intermédiaire* | Résout des problèmes de raisonnement complexes grâce à la Chaîne de Pensée |
| [Mémoire](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-memory) | ★☆☆ <br> *Intermédiaire* | Un chatbot avec mémoire à court et long terme |
| [MCP](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-mcp) | ★☆☆ <br> *Intermédiaire* | Agent utilisant le Protocole de Contexte de Modèle pour des opérations numériques |
</div>
👀 Vous voulez voir d'autres tutoriels pour débutants ? [Créez une issue!](https://github.com/The-Pocket/PocketFlow/issues/new)
## Comment utiliser Pocket Flow ?
🚀 Grâce à la **Programmation Agentique**—le paradigme de développement d'applications LLM le plus rapide—où *les humains conçoivent* et *les agents codent* !
<br>
<div align="center">
<a href="https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to" target="_blank">
<img src="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F423a39af-49e8-483b-bc5a-88cc764350c6_1050x588.png" width="700" alt="IMAGE ALT TEXT" style="cursor: pointer;">
</a>
</div>
<br>
✨ Voici des exemples d'applications LLM plus complexes :
<div align="center">
| Nom de l'application | Difficulté | Sujets | Conception Humaine | Code Agent |
| :-------------: | :-------------: | :---------------------: | :---: | :---: |
| [Construire Cursor avec Cursor](https://github.com/The-Pocket/Tutorial-Cursor) <br> <sup><sub>Nous atteindrons bientôt la singularité ...</sup></sub> | ★★★ <br> *Avancé* | [Agent](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html) | [Document de conception](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/docs/design.md) | [Code Flow](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/flow.py)
| [Demandez à l'IA Paul Graham](https://github.com/The-Pocket/Tutorial-YC-Partner) <br> <sup><sub>Demandez à l'IA Paul Graham, au cas où vous n'êtes pas accepté</sup></sub> | ★★☆ <br> *Moyen* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) <br> [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [Document de conception](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [Code Flow](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py)
| [Résumeur Youtube](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) <br> <sup><sub> Explique les vidéos YouTube comme si vous aviez 5 ans </sup></sub> | ★☆☆ <br> *Intermédiaire* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [Document de conception](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [Code Flow](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py)
| [Générateur d'Introduction](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) <br> <sup><sub> Des brise-glaces instantanés qui transforment les prospects froids en prospects chauds </sup></sub> | ★☆☆ <br> *Intermédiaire* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [Recherche Web](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [Document de conception](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [Code Flow](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
</div>
- Vous voulez apprendre la **Programmation Agentique** ?
- Consultez [ma chaîne YouTube](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1) pour des tutoriels vidéo sur la façon dont certaines applications ci-dessus sont créées !
- Vous souhaitez créer votre propre application LLM ? Lisez cet [article](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to) ! Commencez avec [ce modèle](https://github.com/The-Pocket/PocketFlow-Template-Python) !
- Vous voulez apprendre les étapes détaillées ? Lisez ce [Guide](https://the-pocket.github.io/PocketFlow/guide.html) !
@@ -0,0 +1,120 @@
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/title.png" width="600"/>
</div>
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
[![Docs](https://img.shields.io/badge/docs-latest-blue)](https://the-pocket.github.io/PocketFlow/)
<a href="https://discord.gg/hUHHE9Sa6T">
<img src="https://img.shields.io/discord/1346833819172601907?logo=discord&style=flat">
</a>
Pocket Flow ist ein [100-Zeilen](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) minimalistisches LLM-Framework
- **Leichtgewichtig**: Nur 100 Zeilen. Keine Aufblähung, keine Abhängigkeiten, keine Anbieter-Bindung.
- **Ausdrucksstark**: Alles, was du liebst—([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agenten](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Workflow](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) und mehr.
- **[Agentisches Programmieren](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**: Lass KI-Agenten (z.B. Cursor AI) Agenten bauen—10-fache Produktivitätssteigerung!
- Zur Installation, ```pip install pocketflow``` oder kopiere einfach den [Quellcode](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) (nur 100 Zeilen).
- Um mehr zu erfahren, schau dir die [Dokumentation](https://the-pocket.github.io/PocketFlow/) an. Um die Motivation zu verstehen, lies die [Geschichte](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just).
- 🎉 Tritt unserem [Discord](https://discord.gg/hUHHE9Sa6T) bei!
- 🎉 Dank [@zvictor](https://www.github.com/zvictor), [@jackylee941130](https://www.github.com/jackylee941130) und [@ZebraRoy](https://www.github.com/ZebraRoy) haben wir jetzt eine [TypeScript-Version](https://github.com/The-Pocket/PocketFlow-Typescript)!
## Warum Pocket Flow?
Aktuelle LLM-Frameworks sind aufgebläht... Du brauchst nur 100 Zeilen für ein LLM-Framework!
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/meme.jpg" width="400"/>
| | **Abstraktion** | **App-spezifische Wrapper** | **Anbieter-spezifische Wrapper** | **Zeilen** | **Größe** |
|----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:|
| LangChain | Agent, Chain | Viele <br><sup><sub>(z.B. QA, Zusammenfassung)</sub></sup> | Viele <br><sup><sub>(z.B. OpenAI, Pinecone, usw.)</sub></sup> | 405K | +166MB |
| CrewAI | Agent, Chain | Viele <br><sup><sub>(z.B. FileReadTool, SerperDevTool)</sub></sup> | Viele <br><sup><sub>(z.B. OpenAI, Anthropic, Pinecone, usw.)</sub></sup> | 18K | +173MB |
| SmolAgent | Agent | Einige <br><sup><sub>(z.B. CodeAgent, VisitWebTool)</sub></sup> | Einige <br><sup><sub>(z.B. DuckDuckGo, Hugging Face, usw.)</sub></sup> | 8K | +198MB |
| LangGraph | Agent, Graph | Einige <br><sup><sub>(z.B. Semantische Suche)</sub></sup> | Einige <br><sup><sub>(z.B. PostgresStore, SqliteSaver, usw.) </sub></sup> | 37K | +51MB |
| AutoGen | Agent | Einige <br><sup><sub>(z.B. Tool Agent, Chat Agent)</sub></sup> | Viele <sup><sub>[Optional]<br> (z.B. OpenAI, Pinecone, usw.)</sub></sup> | 7K <br><sup><sub>(nur Kern)</sub></sup> | +26MB <br><sup><sub>(nur Kern)</sub></sup> |
| **PocketFlow** | **Graph** | **Keine** | **Keine** | **100** | **+56KB** |
</div>
## Wie funktioniert Pocket Flow?
Die [100 Zeilen](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) erfassen die Kernabstraktion von LLM-Frameworks: Graph!
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/abstraction.png" width="900"/>
</div>
<br>
Von dort aus ist es einfach, beliebte Designmuster wie ([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agenten](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Workflow](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) usw. zu implementieren.
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/design.png" width="900"/>
</div>
<br>
✨ Hier sind grundlegende Tutorials:
<div align="center">
| Name | Schwierigkeit | Beschreibung |
| :-------------: | :-------------: | :--------------------- |
| [Chat](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆ <br> *Dummy* | Ein einfacher Chatbot mit Konversationsverlauf |
| [Strukturierte Ausgabe](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆ <br> *Dummy* | Extrahieren strukturierter Daten aus Lebensläufen durch Prompting |
| [Workflow](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆ <br> *Dummy* | Ein Schreibworkflow, der Gliederungen erstellt, Inhalte schreibt und Styling anwendet |
| [Agent](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆ <br> *Dummy* | Ein Recherche-Agent, der im Web suchen und Fragen beantworten kann |
| [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆ <br> *Dummy* | Ein einfacher Retrieval-augmented Generation-Prozess |
| [Map-Reduce](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ☆☆☆ <br> *Dummy* | Ein Lebenslauf-Qualifikationsprozessor mit Map-Reduce-Muster für Batch-Auswertung |
| [Streaming](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆ <br> *Dummy* | Eine Echtzeit-LLM-Streaming-Demo mit Benutzerunterbrechungsfähigkeit |
| [Chat-Absicherung](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆ <br> *Dummy* | Ein Reiseberater-Chatbot, der nur reisebezogene Anfragen verarbeitet |
| [Multi-Agent](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆ <br> *Anfänger* | Ein Tabu-Wortspiel für asynchrone Kommunikation zwischen zwei Agenten |
| [Supervisor](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆ <br> *Anfänger* | Forschungsagent wird unzuverlässig... Bauen wir einen Überwachungsprozess! |
| [Parallel](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆ <br> *Anfänger* | Eine parallele Ausführungs-Demo, die 3x Beschleunigung zeigt |
| [Parallel Flow](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch-flow) | ★☆☆ <br> *Anfänger* | Eine parallele Bildverarbeitungs-Demo, die 8x Beschleunigung mit mehreren Filtern zeigt |
| [Mehrheitsvotum](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆ <br> *Anfänger* | Verbessere die Reasoning-Genauigkeit durch Aggregation mehrerer Lösungsversuche |
| [Thinking](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-thinking) | ★☆☆ <br> *Anfänger* | Löse komplexe Reasoning-Probleme durch Chain-of-Thought |
| [Memory](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-memory) | ★☆☆ <br> *Anfänger* | Ein Chatbot mit Kurz- und Langzeitgedächtnis |
| [MCP](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-mcp) | ★☆☆ <br> *Anfänger* | Agent, der das Model Context Protocol für numerische Operationen verwendet |
</div>
👀 Möchtest du andere Tutorials für Anfänger sehen? [Erstelle ein Issue!](https://github.com/The-Pocket/PocketFlow/issues/new)
## Wie verwendet man Pocket Flow?
🚀 Durch **Agentisches Programmieren**—das schnellste LLM-App-Entwicklungsparadigma, bei dem *Menschen designen* und *Agenten programmieren*!
<br>
<div align="center">
<a href="https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to" target="_blank">
<img src="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F423a39af-49e8-483b-bc5a-88cc764350c6_1050x588.png" width="700" alt="IMAGE ALT TEXT" style="cursor: pointer;">
</a>
</div>
<br>
✨ Hier sind Beispiele für komplexere LLM-Apps:
<div align="center">
| App-Name | Schwierigkeit | Themen | Menschliches Design | Agent-Code |
| :-------------: | :-------------: | :---------------------: | :---: | :---: |
| [Cursor mit Cursor bauen](https://github.com/The-Pocket/Tutorial-Cursor) <br> <sup><sub>Wir werden bald die Singularität erreichen ...</sup></sub> | ★★★ <br> *Fortgeschritten* | [Agent](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html) | [Design-Dokument](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/docs/design.md) | [Flow-Code](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/flow.py)
| [Frag KI Paul Graham](https://github.com/The-Pocket/Tutorial-YC-Partner) <br> <sup><sub>Frag KI Paul Graham, falls du nicht reinkommst</sup></sub> | ★★☆ <br> *Mittel* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) <br> [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [Design-Dokument](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [Flow-Code](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py)
| [Youtube-Zusammenfasser](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) <br> <sup><sub> Erklärt dir YouTube-Videos, als wärst du 5 </sup></sub> | ★☆☆ <br> *Anfänger* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [Design-Dokument](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [Flow-Code](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py)
| [Kaltakquise-Generator](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) <br> <sup><sub> Sofortige Eisbrecher, die kalte Leads heiß machen </sup></sub> | ★☆☆ <br> *Anfänger* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [Web-Suche](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [Design-Dokument](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [Flow-Code](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
</div>
- Willst du **Agentisches Programmieren** lernen?
- Schau dir [meinen YouTube-Kanal](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1) für Video-Tutorials an, wie einige der obigen Apps erstellt wurden!
- Willst du deine eigene LLM-App bauen? Lies diesen [Beitrag](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)! Beginne mit [dieser Vorlage](https://github.com/The-Pocket/PocketFlow-Template-Python)!
- Willst du die detaillierten Schritte lernen? Lies diesen [Leitfaden](https://the-pocket.github.io/PocketFlow/guide.html)!
@@ -0,0 +1,120 @@
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/title.png" width="600"/>
</div>
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
[![Docs](https://img.shields.io/badge/docs-latest-blue)](https://the-pocket.github.io/PocketFlow/)
<a href="https://discord.gg/hUHHE9Sa6T">
<img src="https://img.shields.io/discord/1346833819172601907?logo=discord&style=flat">
</a>
Pocket Flowは[100行](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)のミニマリストLLMフレームワークです
- **軽量**: わずか100行。余分なもの一切なし、依存関係なし、ベンダーロックインなし。
- **表現力**: あなたが好きなもの全て—([マルチ-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[エージェント](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html)、[ワークフロー](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html)、[RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html)など。
- **[エージェンティックコーディング](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**: AIエージェント(例:Cursor AI)にエージェントを構築させる—生産性が10倍に!
- インストールするには、```pip install pocketflow```または[ソースコード](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)をコピーするだけです(わずか100行)。
- 詳細については[ドキュメント](https://the-pocket.github.io/PocketFlow/)をご覧ください。動機について学ぶには、[ストーリー](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just)をお読みください。
- 🎉 私たちの[Discord](https://discord.gg/hUHHE9Sa6T)に参加してください!
- 🎉 [@zvictor](https://www.github.com/zvictor)、[@jackylee941130](https://www.github.com/jackylee941130)、[@ZebraRoy](https://www.github.com/ZebraRoy)のおかげで、[TypeScriptバージョン](https://github.com/The-Pocket/PocketFlow-Typescript)もできました!
## なぜPocket Flow
現在のLLMフレームワークは膨大すぎます... LLMフレームワークには100行だけで十分です!
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/meme.jpg" width="400"/>
| | **抽象化** | **アプリ固有のラッパー** | **ベンダー固有のラッパー** | **行数** | **サイズ** |
|----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:|
| LangChain | エージェント、チェーン | 多数 <br><sup><sub>(例:QA、要約)</sub></sup> | 多数 <br><sup><sub>(例:OpenAI、Pineconeなど)</sub></sup> | 405K | +166MB |
| CrewAI | エージェント、チェーン | 多数 <br><sup><sub>(例:FileReadTool、SerperDevTool)</sub></sup> | 多数 <br><sup><sub>(例:OpenAI、Anthropic、Pineconeなど)</sub></sup> | 18K | +173MB |
| SmolAgent | エージェント | いくつか <br><sup><sub>(例:CodeAgent、VisitWebTool)</sub></sup> | いくつか <br><sup><sub>(例:DuckDuckGo、Hugging Faceなど)</sub></sup> | 8K | +198MB |
| LangGraph | エージェント、グラフ | いくつか <br><sup><sub>(例:セマンティック検索)</sub></sup> | いくつか <br><sup><sub>(例:PostgresStore、SqliteSaverなど) </sub></sup> | 37K | +51MB |
| AutoGen | エージェント | いくつか <br><sup><sub>(例:ツールエージェント、チャットエージェント)</sub></sup> | 多数 <sup><sub>[オプション]<br> (例:OpenAI、Pineconeなど)</sub></sup> | 7K <br><sup><sub>(コアのみ)</sub></sup> | +26MB <br><sup><sub>(コアのみ)</sub></sup> |
| **PocketFlow** | **グラフ** | **なし** | **なし** | **100** | **+56KB** |
</div>
## Pocket Flowはどのように動作しますか?
[100行](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)のコードはLLMフレームワークの核となる抽象化を捉えています:グラフ!
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/abstraction.png" width="900"/>
</div>
<br>
そこから、([マルチ-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[エージェント](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html)、[ワークフロー](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html)、[RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html)などの人気のあるデザインパターンを簡単に実装できます。
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/design.png" width="900"/>
</div>
<br>
✨ 以下は基本的なチュートリアルです:
<div align="center">
| 名前 | 難易度 | 説明 |
| :-------------: | :-------------: | :--------------------- |
| [チャット](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆ <br> *超簡単* | 会話履歴を持つ基本的なチャットボット |
| [構造化出力](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆ <br> *超簡単* | プロンプトによる履歴書からの構造化データの抽出 |
| [ワークフロー](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆ <br> *超簡単* | 概要を作成し、コンテンツを書き、スタイルを適用するライティングワークフロー |
| [エージェント](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆ <br> *超簡単* | ウェブを検索して質問に答えることができる研究エージェント |
| [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆ <br> *超簡単* | シンプルな検索拡張生成プロセス |
| [マップ-リデュース](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ☆☆☆ <br> *超簡単* | バッチ評価のためのマップリデュースパターンを使用した履歴書資格処理 |
| [ストリーミング](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆ <br> *超簡単* | ユーザー中断機能を備えたリアルタイムLLMストリーミングデモ |
| [チャットガードレール](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆ <br> *超簡単* | 旅行関連のクエリのみを処理する旅行アドバイザーチャットボット |
| [マルチエージェント](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆ <br> *初級* | 2つのエージェント間の非同期通信のためのタブーワードゲーム |
| [スーパーバイザー](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆ <br> *初級* | 研究エージェントが信頼性に欠ける場合... 監視プロセスを構築しましょう |
| [並列](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆ <br> *初級* | 3倍の速度向上を示す並列実行デモ |
| [並列フロー](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch-flow) | ★☆☆ <br> *初級* | 複数のフィルターで8倍の速度向上を示す並列画像処理デモ |
| [多数決](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆ <br> *初級* | 複数の解決策を集約して推論精度を向上させる |
| [思考](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-thinking) | ★☆☆ <br> *初級* | 思考連鎖を通じて複雑な推論問題を解決する |
| [メモリ](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-memory) | ★☆☆ <br> *初級* | 短期および長期記憶を持つチャットボット |
| [MCP](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-mcp) | ★☆☆ <br> *初級* | 数値演算のためのモデルコンテキストプロトコルを使用するエージェント |
</div>
👀 他の超簡単なチュートリアルが見たいですか?[課題を作成してください!](https://github.com/The-Pocket/PocketFlow/issues/new)
## Pocket Flowの使い方は?
🚀 **エージェンティックコーディング**を通じて—最速のLLMアプリ開発パラダイムで、*人間が設計し*、*エージェントがコードを書く*!
<br>
<div align="center">
<a href="https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to" target="_blank">
<img src="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F423a39af-49e8-483b-bc5a-88cc764350c6_1050x588.png" width="700" alt="IMAGE ALT TEXT" style="cursor: pointer;">
</a>
</div>
<br>
✨ 以下はより複雑なLLMアプリの例です:
<div align="center">
| アプリ名 | 難易度 | トピック | 人間による設計 | エージェントによるコード |
| :-------------: | :-------------: | :---------------------: | :---: | :---: |
| [Cursorを使ってCursorを構築](https://github.com/The-Pocket/Tutorial-Cursor) <br> <sup><sub>もうすぐシンギュラリティに到達します...</sup></sub> | ★★★ <br> *上級* | [エージェント](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html) | [設計書](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/docs/design.md) | [フローコード](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/flow.py)
| [AI Paul Grahamに質問する](https://github.com/The-Pocket/Tutorial-YC-Partner) <br> <sup><sub>もし入れなかった場合は、AI Paul Grahamに聞いてみましょう</sup></sub> | ★★☆ <br> *中級* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) <br> [マップリデュース](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [設計書](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [フローコード](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py)
| [Youtubeサマライザー](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) <br> <sup><sub> 5歳児にもわかるようにYouTube動画を説明 </sup></sub> | ★☆☆ <br> *初級* | [マップリデュース](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [設計書](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [フローコード](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py)
| [コールドオープナージェネレーター](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) <br> <sup><sub> 冷たいリードを熱くする即席アイスブレーカー </sup></sub> | ★☆☆ <br> *初級* | [マップリデュース](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [Web検索](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [設計書](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [フローコード](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
</div>
- **エージェンティックコーディング**を学びたいですか?
- 上記のアプリがどのように作られたかのビデオチュートリアルについては、[私のYouTube](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1)をチェックしてください!
- 自分のLLMアプリを構築したいですか?この[投稿](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)を読んでください![このテンプレート](https://github.com/The-Pocket/PocketFlow-Template-Python)から始めましょう!
- 詳細な手順を学びたいですか?この[ガイド](https://the-pocket.github.io/PocketFlow/guide.html)を読んでください!
@@ -0,0 +1,120 @@
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/title.png" width="600"/>
</div>
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
[![Docs](https://img.shields.io/badge/docs-latest-blue)](https://the-pocket.github.io/PocketFlow/)
<a href="https://discord.gg/hUHHE9Sa6T">
<img src="https://img.shields.io/discord/1346833819172601907?logo=discord&style=flat">
</a>
Pocket Flow는 [100줄](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)의 미니멀리스트 LLM 프레임워크입니다
- **경량화**: 단 100줄. 불필요한 요소 없음, 종속성 없음, 벤더 락인 없음.
- **표현력**: 당신이 좋아하는 모든 것—([다중-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[에이전트](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [워크플로우](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) 등.
- **[에이전틱 코딩](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**: AI 에이전트(예: Cursor AI)가 에이전트를 구축하도록—생산성 10배 향상!
- 설치하려면, ```pip install pocketflow```또는 [소스 코드](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)(단 100줄)를 복사하세요.
- 더 알아보려면, [문서](https://the-pocket.github.io/PocketFlow/)를 확인하세요. 개발 동기를 알아보려면, [이야기](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just)를 읽어보세요.
- 🎉 우리의 [디스코드](https://discord.gg/hUHHE9Sa6T)에 참여하세요!
- 🎉 [@zvictor](https://www.github.com/zvictor), [@jackylee941130](https://www.github.com/jackylee941130), [@ZebraRoy](https://www.github.com/ZebraRoy) 덕분에 이제 [TypeScript 버전](https://github.com/The-Pocket/PocketFlow-Typescript)이 있습니다!
## 왜 Pocket Flow인가?
현재 LLM 프레임워크들은 너무 비대합니다... LLM 프레임워크는 100줄만 필요합니다!
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/meme.jpg" width="400"/>
| | **추상화** | **앱 특화 래퍼** | **벤더 특화 래퍼** | **코드 줄 수** | **크기** |
|----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:|
| LangChain | 에이전트, 체인 | 다수 <br><sup><sub>(예: QA, 요약)</sub></sup> | 다수 <br><sup><sub>(예: OpenAI, Pinecone 등)</sub></sup> | 405K | +166MB |
| CrewAI | 에이전트, 체인 | 다수 <br><sup><sub>(예: FileReadTool, SerperDevTool)</sub></sup> | 다수 <br><sup><sub>(예: OpenAI, Anthropic, Pinecone 등)</sub></sup> | 18K | +173MB |
| SmolAgent | 에이전트 | 일부 <br><sup><sub>(예: CodeAgent, VisitWebTool)</sub></sup> | 일부 <br><sup><sub>(예: DuckDuckGo, Hugging Face 등)</sub></sup> | 8K | +198MB |
| LangGraph | 에이전트, 그래프 | 일부 <br><sup><sub>(예: 시맨틱 검색)</sub></sup> | 일부 <br><sup><sub>(예: PostgresStore, SqliteSaver 등) </sub></sup> | 37K | +51MB |
| AutoGen | 에이전트 | 일부 <br><sup><sub>(예: Tool Agent, Chat Agent)</sub></sup> | 다수 <sup><sub>[선택사항]<br> (예: OpenAI, Pinecone 등)</sub></sup> | 7K <br><sup><sub>(핵심만)</sub></sup> | +26MB <br><sup><sub>(핵심만)</sub></sup> |
| **PocketFlow** | **그래프** | **없음** | **없음** | **100** | **+56KB** |
</div>
## Pocket Flow는 어떻게 작동하나요?
[100줄](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)은 LLM 프레임워크의 핵심 추상화를 담고 있습니다: 그래프!
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/abstraction.png" width="900"/>
</div>
<br>
이를 기반으로 ([다중-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[에이전트](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [워크플로우](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) 등과 같은 인기 있는 디자인 패턴을 쉽게 구현할 수 있습니다.
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/design.png" width="900"/>
</div>
<br>
✨ 아래는 기본 튜토리얼입니다:
<div align="center">
| 이름 | 난이도 | 설명 |
| :-------------: | :-------------: | :--------------------- |
| [채팅](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆ <br> *초보* | 대화 기록이 있는 기본 채팅 봇 |
| [구조화된 출력](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆ <br> *초보* | 프롬프트를 통해 이력서에서 구조화된 데이터 추출 |
| [워크플로우](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆ <br> *초보* | 개요 작성, 콘텐츠 작성, 스타일 적용을 수행하는 글쓰기 워크플로우 |
| [에이전트](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆ <br> *초보* | 웹을 검색하고 질문에 답할 수 있는 연구 에이전트 |
| [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆ <br> *초보* | 간단한 검색 증강 생성 프로세스 |
| [맵-리듀스](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ☆☆☆ <br> *초보* | 배치 평가를 위한 맵-리듀스 패턴을 사용하는 이력서 자격 처리기 |
| [스트리밍](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆ <br> *초보* | 사용자 중단 기능이 있는 실시간 LLM 스트리밍 데모 |
| [채팅 가드레일](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆ <br> *초보* | 여행 관련 쿼리만 처리하는 여행 어드바이저 챗봇 |
| [다중 에이전트](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆ <br> *초급* | 두 에이전트 간의 비동기 통신을 위한 금기어 게임 |
| [감독자](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆ <br> *초급* | 연구 에이전트가 신뢰할 수 없게 되었습니다... 감독 프로세스를 구축해 봅시다 |
| [병렬](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆ <br> *초급* | 3배 속도 향상을 보여주는 병렬 실행 데모 |
| [병렬 플로우](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch-flow) | ★☆☆ <br> *초급* | 여러 필터로 8배 속도 향상을 보여주는 병렬 이미지 처리 데모 |
| [다수결 투표](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆ <br> *초급* | 여러 솔루션 시도를 집계하여 추론 정확도 향상 |
| [사고](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-thinking) | ★☆☆ <br> *초급* | 사고 체인을 통한 복잡한 추론 문제 해결 |
| [메모리](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-memory) | ★☆☆ <br> *초급* | 단기 및 장기 메모리가 있는 채팅 봇 |
| [MCP](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-mcp) | ★☆☆ <br> *초급* | 수치 연산을 위한 모델 컨텍스트 프로토콜을 사용하는 에이전트 |
</div>
👀 초보자를 위한 다른 튜토리얼을 보고 싶으신가요? [이슈를 생성하세요!](https://github.com/The-Pocket/PocketFlow/issues/new)
## Pocket Flow를 어떻게 사용하나요?
🚀 **에이전틱 코딩**을 통해—가장 빠른 LLM 앱 개발 패러다임-*인간이 설계*하고 *에이전트가 코딩*합니다!
<br>
<div align="center">
<a href="https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to" target="_blank">
<img src="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F423a39af-49e8-483b-bc5a-88cc764350c6_1050x588.png" width="700" alt="IMAGE ALT TEXT" style="cursor: pointer;">
</a>
</div>
<br>
✨ 아래는 더 복잡한 LLM 앱의 예시입니다:
<div align="center">
| 앱 이름 | 난이도 | 주제 | 인간 설계 | 에이전트 코드 |
| :-------------: | :-------------: | :---------------------: | :---: | :---: |
| [Cursor로 Cursor 만들기](https://github.com/The-Pocket/Tutorial-Cursor) <br> <sup><sub>우리는 곧 특이점에 도달할 것입니다...</sup></sub> | ★★★ <br> *고급* | [에이전트](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html) | [설계 문서](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/docs/design.md) | [플로우 코드](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/flow.py)
| [AI Paul Graham에게 물어보기](https://github.com/The-Pocket/Tutorial-YC-Partner) <br> <sup><sub>입학하지 못한 경우를 대비해 AI Paul Graham에게 물어보세요</sup></sub> | ★★☆ <br> *중급* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) <br> [맵 리듀스](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [설계 문서](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [플로우 코드](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py)
| [유튜브 요약기](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) <br> <sup><sub> 유튜브 비디오를 5세 아이에게 설명하듯이 설명해 줍니다 </sup></sub> | ★☆☆ <br> *초급* | [맵 리듀스](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [설계 문서](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [플로우 코드](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py)
| [콜드 오프너 생성기](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) <br> <sup><sub> 차가운 리드를 뜨겁게 만드는 즉각적인 아이스브레이커 </sup></sub> | ★☆☆ <br> *초급* | [맵 리듀스](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [웹 검색](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [설계 문서](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [플로우 코드](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
</div>
- **에이전틱 코딩**을 배우고 싶으신가요?
- 위의 앱 중 일부가 어떻게 만들어졌는지 비디오 튜토리얼을 보려면 [내 YouTube](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1)를 확인하세요!
- 자신만의 LLM 앱을 만들고 싶으신가요? 이 [포스트](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)를 읽어보세요! [이 템플릿](https://github.com/The-Pocket/PocketFlow-Template-Python)으로 시작하세요!
- 자세한 단계를 배우고 싶으신가요? 이 [가이드](https://the-pocket.github.io/PocketFlow/guide.html)를 읽어보세요!
@@ -0,0 +1,120 @@
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/title.png" width="600"/>
</div>
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
[![Docs](https://img.shields.io/badge/docs-latest-blue)](https://the-pocket.github.io/PocketFlow/)
<a href="https://discord.gg/hUHHE9Sa6T">
<img src="https://img.shields.io/discord/1346833819172601907?logo=discord&style=flat">
</a>
Pocket Flow é um framework LLM minimalista de [100 linhas](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)
- **Leve**: Apenas 100 linhas. Zero inchaço, zero dependências, zero bloqueio de fornecedor.
- **Expressivo**: Tudo o que você ama—([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agentes](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Fluxo de Trabalho](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html), e mais.
- **[Codificação Agêntica](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**: Deixe os Agentes de IA (por exemplo, Cursor AI) construírem Agentes—aumento de produtividade de 10x!
- Para instalar, ```pip install pocketflow``` ou apenas copie o [código-fonte](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) (apenas 100 linhas).
- Para saber mais, consulte a [documentação](https://the-pocket.github.io/PocketFlow/). Para entender a motivação, leia a [história](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just).
- 🎉 Junte-se ao nosso [discord](https://discord.gg/hUHHE9Sa6T)!
- 🎉 Graças a [@zvictor](https://www.github.com/zvictor), [@jackylee941130](https://www.github.com/jackylee941130) e [@ZebraRoy](https://www.github.com/ZebraRoy), agora temos uma [versão TypeScript](https://github.com/The-Pocket/PocketFlow-Typescript)!
## Por que Pocket Flow?
Os frameworks LLM atuais são inchados... Você só precisa de 100 linhas para um Framework LLM!
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/meme.jpg" width="400"/>
| | **Abstração** | **Wrappers Específicos de App** | **Wrappers Específicos de Fornecedor** | **Linhas** | **Tamanho** |
|----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:|
| LangChain | Agente, Cadeia | Muitos <br><sup><sub>(ex., QA, Sumarização)</sub></sup> | Muitos <br><sup><sub>(ex., OpenAI, Pinecone, etc.)</sub></sup> | 405K | +166MB |
| CrewAI | Agente, Cadeia | Muitos <br><sup><sub>(ex., FileReadTool, SerperDevTool)</sub></sup> | Muitos <br><sup><sub>(ex., OpenAI, Anthropic, Pinecone, etc.)</sub></sup> | 18K | +173MB |
| SmolAgent | Agente | Alguns <br><sup><sub>(ex., CodeAgent, VisitWebTool)</sub></sup> | Alguns <br><sup><sub>(ex., DuckDuckGo, Hugging Face, etc.)</sub></sup> | 8K | +198MB |
| LangGraph | Agente, Grafo | Alguns <br><sup><sub>(ex., Busca Semântica)</sub></sup> | Alguns <br><sup><sub>(ex., PostgresStore, SqliteSaver, etc.) </sub></sup> | 37K | +51MB |
| AutoGen | Agente | Alguns <br><sup><sub>(ex., Agente de Ferramentas, Agente de Chat)</sub></sup> | Muitos <sup><sub>[Opcional]<br> (ex., OpenAI, Pinecone, etc.)</sub></sup> | 7K <br><sup><sub>(apenas núcleo)</sub></sup> | +26MB <br><sup><sub>(apenas núcleo)</sub></sup> |
| **PocketFlow** | **Grafo** | **Nenhum** | **Nenhum** | **100** | **+56KB** |
</div>
## Como funciona o Pocket Flow?
As [100 linhas](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) capturam a abstração central dos frameworks LLM: Grafo!
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/abstraction.png" width="900"/>
</div>
<br>
A partir daí, é fácil implementar padrões de design populares como ([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agentes](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Fluxo de Trabalho](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html), etc.
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/design.png" width="900"/>
</div>
<br>
✨ Abaixo estão tutoriais básicos:
<div align="center">
| Nome | Dificuldade | Descrição |
| :-------------: | :-------------: | :--------------------- |
| [Chat](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆ <br> *Iniciante* | Um chatbot básico com histórico de conversas |
| [Saída Estruturada](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆ <br> *Iniciante* | Extraindo dados estruturados de currículos por prompt |
| [Fluxo de Trabalho](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆ <br> *Iniciante* | Um fluxo de escrita que esboça, escreve conteúdo e aplica estilo |
| [Agente](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆ <br> *Iniciante* | Um agente de pesquisa que pode buscar na web e responder perguntas |
| [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆ <br> *Iniciante* | Um processo simples de Geração Aumentada por Recuperação |
| [Map-Reduce](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ☆☆☆ <br> *Iniciante* | Um processador de qualificação de currículo usando o padrão map-reduce para avaliação em lote |
| [Streaming](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆ <br> *Iniciante* | Uma demonstração de streaming LLM em tempo real com capacidade de interrupção pelo usuário |
| [Guarda-rail de Chat](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆ <br> *Iniciante* | Um chatbot de consultoria de viagens que processa apenas consultas relacionadas a viagens |
| [Multi-Agente](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆ <br> *Intermediário* | Um jogo de palavras Tabu para comunicação assíncrona entre dois agentes |
| [Supervisor](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆ <br> *Intermediário* | O agente de pesquisa está ficando não confiável... Vamos construir um processo de supervisão|
| [Paralelo](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆ <br> *Intermediário* | Uma demonstração de execução paralela que mostra aceleração de 3x |
| [Fluxo Paralelo](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch-flow) | ★☆☆ <br> *Intermediário* | Uma demonstração de processamento de imagem paralela mostrando aceleração de 8x com múltiplos filtros |
| [Voto por Maioria](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆ <br> *Intermediário* | Melhore a precisão do raciocínio agregando múltiplas tentativas de solução |
| [Pensamento](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-thinking) | ★☆☆ <br> *Intermediário* | Resolva problemas de raciocínio complexos através da Cadeia de Pensamento |
| [Memória](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-memory) | ★☆☆ <br> *Intermediário* | Um chatbot com memória de curto e longo prazo |
| [MCP](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-mcp) | ★☆☆ <br> *Intermediário* | Agente usando Protocolo de Contexto de Modelo para operações numéricas |
</div>
👀 Quer ver outros tutoriais para iniciantes? [Crie uma issue!](https://github.com/The-Pocket/PocketFlow/issues/new)
## Como Usar Pocket Flow?
🚀 Através da **Codificação Agêntica**—o paradigma mais rápido de desenvolvimento de aplicativos LLM—onde *humanos projetam* e *agentes codificam*!
<br>
<div align="center">
<a href="https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to" target="_blank">
<img src="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F423a39af-49e8-483b-bc5a-88cc764350c6_1050x588.png" width="700" alt="IMAGE ALT TEXT" style="cursor: pointer;">
</a>
</div>
<br>
✨ Abaixo estão exemplos de aplicativos LLM mais complexos:
<div align="center">
| Nome do App | Dificuldade | Tópicos | Design Humano | Código do Agente |
| :-------------: | :-------------: | :---------------------: | :---: | :---: |
| [Construir Cursor com Cursor](https://github.com/The-Pocket/Tutorial-Cursor) <br> <sup><sub>Logo chegaremos à singularidade ...</sup></sub> | ★★★ <br> *Avançado* | [Agente](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html) | [Doc de Design](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/docs/design.md) | [Código Flow](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/flow.py)
| [Pergunte ao AI Paul Graham](https://github.com/The-Pocket/Tutorial-YC-Partner) <br> <sup><sub>Pergunte ao AI Paul Graham, caso você não seja aceito</sup></sub> | ★★☆ <br> *Médio* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) <br> [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [Doc de Design](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [Código Flow](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py)
| [Resumidor de Youtube](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) <br> <sup><sub> Explica vídeos do YouTube como se você tivesse 5 anos </sup></sub> | ★☆☆ <br> *Iniciante* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [Doc de Design](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [Código Flow](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py)
| [Gerador de Aberturas Frias](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) <br> <sup><sub> Quebra-gelos instantâneos que transformam leads frios em quentes </sup></sub> | ★☆☆ <br> *Iniciante* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [Busca Web](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [Doc de Design](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [Código Flow](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
</div>
- Quer aprender **Codificação Agêntica**?
- Confira [meu YouTube](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1) para tutorial em vídeo sobre como alguns aplicativos acima são feitos!
- Quer construir seu próprio aplicativo LLM? Leia este [post](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)! Comece com [este modelo](https://github.com/The-Pocket/PocketFlow-Template-Python)!
- Quer aprender os passos detalhados? Leia este [Guia](https://the-pocket.github.io/PocketFlow/guide.html)!
@@ -0,0 +1,120 @@
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/title.png" width="600"/>
</div>
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
[![Docs](https://img.shields.io/badge/docs-latest-blue)](https://the-pocket.github.io/PocketFlow/)
<a href="https://discord.gg/hUHHE9Sa6T">
<img src="https://img.shields.io/discord/1346833819172601907?logo=discord&style=flat">
</a>
Pocket Flow — это минималистичный фреймворк для LLM, состоящий всего из [100 строк](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)
- **Легкий**: Всего 100 строк. Никакого избыточного кода, никаких зависимостей, никакой привязки к поставщикам.
- **Выразительный**: Всё, что вы любите — ([Мульти-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Агенты](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Рабочие процессы](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) и многое другое.
- **[Агентное программирование](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**: Позвольте ИИ-агентам (например, Cursor AI) создавать других агентов — повышение продуктивности в 10 раз!
- Для установки выполните ```pip install pocketflow``` или просто скопируйте [исходный код](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) (всего 100 строк).
- Чтобы узнать больше, ознакомьтесь с [документацией](https://the-pocket.github.io/PocketFlow/). Чтобы понять мотивацию, прочитайте [историю создания](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just).
- 🎉 Присоединяйтесь к нашему [Discord-серверу](https://discord.gg/hUHHE9Sa6T)!
- 🎉 Благодаря [@zvictor](https://www.github.com/zvictor), [@jackylee941130](https://www.github.com/jackylee941130) и [@ZebraRoy](https://www.github.com/ZebraRoy), у нас теперь есть [версия на TypeScript](https://github.com/The-Pocket/PocketFlow-Typescript)!
## Почему Pocket Flow?
Текущие фреймворки для LLM перегружены... Для фреймворка LLM вам нужно всего 100 строк!
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/meme.jpg" width="400"/>
| | **Абстракция** | **Специфичные обертки для приложений** | **Специфичные обертки для вендоров** | **Строк кода** | **Размер** |
|----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:|
| LangChain | Agent, Chain | Много <br><sup><sub>(напр., QA, Summarization)</sub></sup> | Много <br><sup><sub>(напр., OpenAI, Pinecone и т.д.)</sub></sup> | 405K | +166MB |
| CrewAI | Agent, Chain | Много <br><sup><sub>(напр., FileReadTool, SerperDevTool)</sub></sup> | Много <br><sup><sub>(напр., OpenAI, Anthropic, Pinecone и т.д.)</sub></sup> | 18K | +173MB |
| SmolAgent | Agent | Несколько <br><sup><sub>(напр., CodeAgent, VisitWebTool)</sub></sup> | Несколько <br><sup><sub>(напр., DuckDuckGo, Hugging Face и т.д.)</sub></sup> | 8K | +198MB |
| LangGraph | Agent, Graph | Несколько <br><sup><sub>(напр., Semantic Search)</sub></sup> | Несколько <br><sup><sub>(напр., PostgresStore, SqliteSaver и т.д.) </sub></sup> | 37K | +51MB |
| AutoGen | Agent | Несколько <br><sup><sub>(напр., Tool Agent, Chat Agent)</sub></sup> | Много <sup><sub>[Опционально]<br> (напр., OpenAI, Pinecone и т.д.)</sub></sup> | 7K <br><sup><sub>(только ядро)</sub></sup> | +26MB <br><sup><sub>(только ядро)</sub></sup> |
| **PocketFlow** | **Graph** | **Нет** | **Нет** | **100** | **+56KB** |
</div>
## Как работает Pocket Flow?
[100 строк](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) охватывают основную абстракцию фреймворков LLM: Граф!
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/abstraction.png" width="900"/>
</div>
<br>
Отсюда легко реализовать популярные шаблоны проектирования, такие как ([Мульти-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Агенты](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Рабочие процессы](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) и т.д.
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/design.png" width="900"/>
</div>
<br>
✨ Ниже представлены базовые руководства:
<div align="center">
| Название | Сложность | Описание |
| :-------------: | :-------------: | :--------------------- |
| [Чат](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆ <br> *Простейший* | Базовый чат-бот с историей разговора |
| [Структурированный вывод](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆ <br> *Простейший* | Извлечение структурированных данных из резюме с помощью промптов |
| [Рабочий процесс](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆ <br> *Простейший* | Рабочий процесс создания текста, который составляет план, пишет контент и применяет стилистику |
| [Агент](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆ <br> *Простейший* | Исследовательский агент, который может искать в интернете и отвечать на вопросы |
| [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆ <br> *Простейший* | Простой процесс генерации с извлечением (Retrieval-augmented Generation) |
| [Map-Reduce](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ☆☆☆ <br> *Простейший* | Обработчик квалификаций резюме с использованием паттерна map-reduce для пакетной оценки |
| [Потоковая обработка](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆ <br> *Простейший* | Демонстрация потоковой обработки LLM в реальном времени с возможностью прерывания |
| [Ограничения чата](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆ <br> *Простейший* | Чат-бот для путешествий, обрабатывающий только запросы, связанные с путешествиями |
| [Мульти-агент](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆ <br> *Начальный* | Игра в Табу для асинхронного общения между двумя агентами |
| [Супервизор](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆ <br> *Начальный* | Исследовательский агент становится ненадежным... Построим процесс надзора |
| [Параллельное выполнение](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆ <br> *Начальный* | Демонстрация параллельного выполнения с ускорением в 3 раза |
| [Параллельный поток](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch-flow) | ★☆☆ <br> *Начальный* | Демонстрация параллельной обработки изображений с ускорением в 8 раз при использовании нескольких фильтров |
| [Голосование большинством](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆ <br> *Начальный* | Повышение точности рассуждений путем объединения нескольких попыток решения |
| [Мышление](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-thinking) | ★☆☆ <br> *Начальный* | Решение сложных задач рассуждения с помощью цепочки мыслей (Chain-of-Thought) |
| [Память](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-memory) | ★☆☆ <br> *Начальный* | Чат-бот с краткосрочной и долгосрочной памятью |
| [MCP](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-mcp) | ★☆☆ <br> *Начальный* | Агент с использованием протокола контекста модели (Model Context Protocol) для числовых операций |
</div>
👀 Хотите увидеть другие руководства для начинающих? [Создайте задачу!](https://github.com/The-Pocket/PocketFlow/issues/new)
## Как использовать Pocket Flow?
🚀 Через **Агентное программирование** — самую быструю парадигму разработки LLM-приложений, где *люди проектируют*, а *агенты программируют*!
<br>
<div align="center">
<a href="https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to" target="_blank">
<img src="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F423a39af-49e8-483b-bc5a-88cc764350c6_1050x588.png" width="700" alt="IMAGE ALT TEXT" style="cursor: pointer;">
</a>
</div>
<br>
✨ Ниже представлены примеры более сложных LLM-приложений:
<div align="center">
| Название приложения | Сложность | Темы | Дизайн от человека | Код от агента |
| :-------------: | :-------------: | :---------------------: | :---: | :---: |
| [Создаем Cursor с помощью Cursor](https://github.com/The-Pocket/Tutorial-Cursor) <br> <sup><sub>Скоро достигнем сингулярности ...</sup></sub> | ★★★ <br> *Продвинутый* | [Агент](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html) | [Дизайн-документ](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/docs/design.md) | [Код потока](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/flow.py)
| [Спроси AI Пола Грэма](https://github.com/The-Pocket/Tutorial-YC-Partner) <br> <sup><sub>Спроси AI Пола Грэма, если не попал в программу</sup></sub> | ★★☆ <br> *Средний* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) <br> [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [Дизайн-документ](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [Код потока](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py)
| [Youtube Summarizer](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) <br> <sup><sub> Объясняет YouTube-видео так, как будто вам 5 лет </sup></sub> | ★☆☆ <br> *Начальный* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [Дизайн-документ](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [Код потока](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py)
| [Генератор "холодных" открытий](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) <br> <sup><sub> Мгновенные ледоколы, превращающие холодные контакты в горячие </sup></sub> | ★☆☆ <br> *Начальный* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [Веб-поиск](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [Дизайн-документ](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [Код потока](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
</div>
- Хотите изучить **Агентное программирование**?
- Посмотрите [мой YouTube-канал](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1) для видеоуроков о том, как были созданы некоторые вышеуказанные приложения!
- Хотите создать свое собственное LLM-приложение? Прочитайте эту [статью](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)! Начните с [этого шаблона](https://github.com/The-Pocket/PocketFlow-Template-Python)!
- Хотите узнать подробные шаги? Прочитайте это [Руководство](https://the-pocket.github.io/PocketFlow/guide.html)!
@@ -0,0 +1,120 @@
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/title.png" width="600"/>
</div>
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
[![Docs](https://img.shields.io/badge/docs-latest-blue)](https://the-pocket.github.io/PocketFlow/)
<a href="https://discord.gg/hUHHE9Sa6T">
<img src="https://img.shields.io/discord/1346833819172601907?logo=discord&style=flat">
</a>
Pocket Flow es un framework minimalista para LLM de [100 líneas](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py)
- **Ligero**: Solo 100 líneas. Cero redundancia, cero dependencias, cero bloqueo de proveedor.
- **Expresivo**: Todo lo que te gusta—([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agentes](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Flujo de trabajo](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html), y más.
- **[Programación Agéntica](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**: Deja que los Agentes de IA (por ejemplo, Cursor AI) construyan Agentes—¡potencia tu productividad 10 veces!
- Para instalar, ```pip install pocketflow``` o simplemente copia el [código fuente](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) (solo 100 líneas).
- Para saber más, consulta la [documentación](https://the-pocket.github.io/PocketFlow/). Para conocer la motivación, lee la [historia](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just).
- 🎉 ¡Únete a nuestro [discord](https://discord.gg/hUHHE9Sa6T)!
- 🎉 Gracias a [@zvictor](https://www.github.com/zvictor), [@jackylee941130](https://www.github.com/jackylee941130) y [@ZebraRoy](https://www.github.com/ZebraRoy), ¡ahora tenemos una [versión TypeScript](https://github.com/The-Pocket/PocketFlow-Typescript)!
## ¿Por qué Pocket Flow?
Los frameworks LLM actuales están sobrecargados... ¡Solo necesitas 100 líneas para un Framework LLM!
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/meme.jpg" width="400"/>
| | **Abstracción** | **Envoltorios específicos de aplicación** | **Envoltorios específicos de proveedor** | **Líneas** | **Tamaño** |
|----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:|
| LangChain | Agente, Cadena | Muchos <br><sup><sub>(p.ej., QA, Resumen)</sub></sup> | Muchos <br><sup><sub>(p.ej., OpenAI, Pinecone, etc.)</sub></sup> | 405K | +166MB |
| CrewAI | Agente, Cadena | Muchos <br><sup><sub>(p.ej., FileReadTool, SerperDevTool)</sub></sup> | Muchos <br><sup><sub>(p.ej., OpenAI, Anthropic, Pinecone, etc.)</sub></sup> | 18K | +173MB |
| SmolAgent | Agente | Algunos <br><sup><sub>(p.ej., CodeAgent, VisitWebTool)</sub></sup> | Algunos <br><sup><sub>(p.ej., DuckDuckGo, Hugging Face, etc.)</sub></sup> | 8K | +198MB |
| LangGraph | Agente, Grafo | Algunos <br><sup><sub>(p.ej., Búsqueda Semántica)</sub></sup> | Algunos <br><sup><sub>(p.ej., PostgresStore, SqliteSaver, etc.) </sub></sup> | 37K | +51MB |
| AutoGen | Agente | Algunos <br><sup><sub>(p.ej., Tool Agent, Chat Agent)</sub></sup> | Muchos <sup><sub>[Opcional]<br> (p.ej., OpenAI, Pinecone, etc.)</sub></sup> | 7K <br><sup><sub>(solo núcleo)</sub></sup> | +26MB <br><sup><sub>(solo núcleo)</sub></sup> |
| **PocketFlow** | **Grafo** | **Ninguno** | **Ninguno** | **100** | **+56KB** |
</div>
## ¿Cómo funciona Pocket Flow?
Las [100 líneas](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) capturan la abstracción central de los frameworks LLM: ¡Grafo!
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/abstraction.png" width="900"/>
</div>
<br>
A partir de ahí, es fácil implementar patrones de diseño populares como ([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agentes](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Flujo de trabajo](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html), etc.
<br>
<div align="center">
<img src="https://github.com/The-Pocket/.github/raw/main/assets/design.png" width="900"/>
</div>
<br>
✨ A continuación se presentan tutoriales básicos:
<div align="center">
| Nombre | Dificultad | Descripción |
| :-------------: | :-------------: | :--------------------- |
| [Chat](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆ <br> *Novato* | Un bot de chat básico con historial de conversación |
| [Salida Estructurada](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆ <br> *Novato* | Extracción de datos estructurados de currículums mediante prompts |
| [Flujo de Trabajo](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆ <br> *Novato* | Un flujo de escritura que esquematiza, escribe contenido y aplica estilo |
| [Agente](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆ <br> *Novato* | Un agente de investigación que puede buscar en la web y responder preguntas |
| [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆ <br> *Novato* | Un proceso simple de Generación aumentada por Recuperación |
| [Map-Reduce](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ☆☆☆ <br> *Novato* | Un procesador de calificación de currículums usando el patrón map-reduce para evaluación por lotes |
| [Streaming](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆ <br> *Novato* | Una demo de streaming LLM en tiempo real con capacidad de interrupción por el usuario |
| [Chat con Barreras](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆ <br> *Novato* | Un chatbot asesor de viajes que solo procesa consultas relacionadas con viajes |
| [Multi-Agente](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆ <br> *Principiante* | Un juego de palabras tabú para comunicación asíncrona entre dos agentes |
| [Supervisor](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆ <br> *Principiante* | El agente de investigación se está volviendo poco fiable... ¡Construyamos un proceso de supervisión! |
| [Paralelo](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆ <br> *Principiante* | Una demo de ejecución paralela que muestra una aceleración de 3x |
| [Flujo Paralelo](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch-flow) | ★☆☆ <br> *Principiante* | Una demo de procesamiento de imágenes en paralelo que muestra una aceleración de 8x con múltiples filtros |
| [Voto por Mayoría](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆ <br> *Principiante* | Mejora la precisión del razonamiento agregando múltiples intentos de solución |
| [Pensamiento](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-thinking) | ★☆☆ <br> *Principiante* | Resuelve problemas de razonamiento complejos a través de Cadena de Pensamiento |
| [Memoria](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-memory) | ★☆☆ <br> *Principiante* | Un bot de chat con memoria a corto y largo plazo |
| [MCP](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-mcp) | ★☆☆ <br> *Principiante* | Agente que usa el Protocolo de Contexto de Modelo para operaciones numéricas |
</div>
👀 ¿Quieres ver otros tutoriales para novatos? [¡Crea un issue!](https://github.com/The-Pocket/PocketFlow/issues/new)
## ¿Cómo usar Pocket Flow?
🚀 A través de **Programación Agéntica** — el paradigma de desarrollo de aplicaciones LLM más rápido — donde *los humanos diseñan* y *los agentes programan*!
<br>
<div align="center">
<a href="https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to" target="_blank">
<img src="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F423a39af-49e8-483b-bc5a-88cc764350c6_1050x588.png" width="700" alt="IMAGE ALT TEXT" style="cursor: pointer;">
</a>
</div>
<br>
✨ A continuación hay ejemplos de aplicaciones LLM más complejas:
<div align="center">
| Nombre de la App | Dificultad | Temas | Diseño Humano | Código de Agente |
| :-------------: | :-------------: | :---------------------: | :---: | :---: |
| [Construir Cursor con Cursor](https://github.com/The-Pocket/Tutorial-Cursor) <br> <sup><sub>Pronto llegaremos a la singularidad...</sup></sub> | ★★★ <br> *Avanzado* | [Agente](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html) | [Doc de Diseño](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/docs/design.md) | [Código de Flujo](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/flow.py)
| [Pregunta a IA Paul Graham](https://github.com/The-Pocket/Tutorial-YC-Partner) <br> <sup><sub>Pregunta a IA Paul Graham, en caso de que no entres</sup></sub> | ★★☆ <br> *Medio* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html) <br> [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [Doc de Diseño](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [Código de Flujo](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py)
| [Resumidor de Youtube](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) <br> <sup><sub> Te explica videos de YouTube como si tuvieras 5 años </sup></sub> | ★☆☆ <br> *Principiante* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [Doc de Diseño](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [Código de Flujo](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py)
| [Generador de Introducción Fría](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) <br> <sup><sub> Rompehielos instantáneos que calientan contactos fríos </sup></sub> | ★☆☆ <br> *Principiante* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) <br> [Búsqueda Web](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [Doc de Diseño](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [Código de Flujo](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
</div>
- ¿Quieres aprender **Programación Agéntica**?
- ¡Consulta [mi YouTube](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1) para tutoriales en video sobre cómo se hicieron algunas aplicaciones anteriores!
- ¿Quieres construir tu propia aplicación LLM? ¡Lee este [post](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)! ¡Comienza con [esta plantilla](https://github.com/The-Pocket/PocketFlow-Template-Python)!
- ¿Quieres aprender los pasos detallados? ¡Lee esta [Guía](https://the-pocket.github.io/PocketFlow/guide.html)!