diff --git a/README.md b/README.md index 83ee302..ca14e51 100644 --- a/README.md +++ b/README.md @@ -87,9 +87,17 @@ Pocket Flow is also a *learning resource*, as current frameworks abstract too mu ## How Does it Work? -The [100 lines](pocketflow/__init__.py) capture what we see as the core abstraction of most LLM frameworks: a **Nested Directed Graph** that breaks down tasks into multiple (LLM) steps, with branching and recursion for agent-like decision-making. From there, it’s easy to layer on more complex features. +The [100 lines](pocketflow/__init__.py) capture what we see as the core abstraction of most LLM frameworks: **Nested Directed Graph** that breaks down tasks into multiple (LLM) steps, with branching and recursion for agent-like decision-making. +
+ +
+From there, it’s easy to layer on more complex features. + +
+ +
- To learn more details, please check out documentation: https://the-pocket.github.io/PocketFlow/ @@ -99,6 +107,4 @@ The [100 lines](pocketflow/__init__.py) capture what we see as the core abstract - More coming soon ... Let us know you’d love to see! -
- -
+ diff --git a/assets/abstraction.png b/assets/abstraction.png new file mode 100644 index 0000000..4e90d49 Binary files /dev/null and b/assets/abstraction.png differ diff --git a/assets/graph.png b/assets/graph.png deleted file mode 100644 index 7af4977..0000000 Binary files a/assets/graph.png and /dev/null differ diff --git a/assets/paradigm.png b/assets/paradigm.png new file mode 100644 index 0000000..ac3346d Binary files /dev/null and b/assets/paradigm.png differ diff --git a/docs/guide.md b/docs/guide.md index 0491aae..9204ae8 100644 --- a/docs/guide.md +++ b/docs/guide.md @@ -10,9 +10,30 @@ nav_order: 1 {: .important } > Use LLMs to help with system design and implementation wherever possible. +## Recommended LLM Project Structure: + +``` +my_project/ +├── utils/ +│ ├── __init__.py +│ ├── call_llm.py +│ └── search_web.py +├── tests/ +│ ├── __init__.py +│ ├── test_flow.py +│ └── test_nodes.py +├── main.py +├── flow.py +├── requirements.txt +└── design.md +``` + + +## System Design Steps: + 1. **Understand Requirements** - - Clarify the app’s needs and workflow. - - Determine data access (e.g., from files or databases). + - Clarify the app’s needs and requirements. + - Determine data access (e.g., from files or databases). 2. **High-Level Flow Design** - Represent the process as a *Nested Directed Graph*.