
| | **Abstraction** | **App-Specific Wrappers** | **Vendor-Specific Wrappers** | **Lines** | **Size** |
|----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:|
| LangChain | Agent, Chain | Many
(e.g., QA, Summarization) | Many
(e.g., OpenAI, Pinecone, etc.) | 405K | +166MB |
| LlamaIndex | Agent, Graph | Native
for RAG
(Summarization, KG Indexing) | Many
[Optional]
(e.g., OpenAI, Pinecone, etc.) | 77K
(core-only) | +189MB
(core-only) |
| CrewAI | Agent, Chain | Many
(e.g., FileReadTool, SerperDevTool) | Many
(e.g., OpenAI, Anthropic, Pinecone, etc.) | 18K | +173MB |
| Haystack | Agent, Graph | Many
(e.g., QA, Summarization) | Many
(e.g., OpenAI, Anthropic, Pinecone, etc.) | 31K | +195MB |
| SmolAgent | Agent | Some
(e.g., CodeAgent, VisitWebTool) | Some
(e.g., DuckDuckGo, Hugging Face, etc.) | 8K | +198MB |
| LangGraph | Agent, Graph | Some
(e.g., Semantic Search) | Some
(e.g., PostgresStore, SqliteSaver, etc.) | 37K | +51MB |
| AutoGen | Agent | Some
(e.g., Tool Agent, Chat Agent) | Many
[Optional]
(e.g., OpenAI, Pinecone, etc.) | 7K
(core-only) | +26MB
(core-only) |
| **PocketFlow** | **Graph** | **None** | **None** | **100** | **+56KB** |
Pocket Flow also makes an excellent educational resource by revealing exactly how an LLM framework works under the hood—without the heavy abstractions of larger libraries.
## How does Pocket Flow work?
The [100 lines](pocketflow/__init__.py) capture the core abstraction of LLM frameworks: Graph!
| Formal App Name | Informal One-Liner |Difficulty | Learning Objectives |
| :------------- | :------------- | :-------------: | :--------------------- |
| [Ask AI Paul Graham](https://github.com/The-Pocket/Tutorial-YC-Partner) | Ask AI Paul Graham, in case you don't get in | ★★☆
*Medium* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html)
[Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html)
[Text-to-Speech](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) |
| [Youtube Summarizer](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple) | Explain YouTube Videos to you like you're 5 | ★☆☆
*Beginner* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) |
| [Cold Opener Generator](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization) | Instant icebreakers that turn cold leads hot | ★☆☆
*Beginner* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html)
[Web Search](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) |
- Want to learn how I built these LLM Apps? Check out [my YouTube](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1)!
- Want to create your own Python project? Start with [this template](https://github.com/The-Pocket/PocketFlow-Template-Python)!