update the guide

This commit is contained in:
zachary62 2025-03-10 16:35:46 -04:00
parent 4c2c2b1cb0
commit 1818d5e26e
1 changed files with 9 additions and 9 deletions

View File

@ -42,22 +42,22 @@ These system designs should be a collaboration between humans and AI assistants:
3. **Flow Design**: Outline how your system orchestrates steps. 3. **Flow Design**: Outline how your system orchestrates steps.
- Identify potential design patterns (e.g., Batch, Agent, RAG). - Identify potential design patterns (e.g., Batch, Agent, RAG).
- For each node, specify: - For each node, provide a high-level purpose description.
- **Purpose**: The high-level compute logic - Draw the Flow in mermaid diagram.
- **Type**: Regular node, Batch node, async node, or another type
- `exec`: The specific utility function to call (ideally, one function per node)
4. **Data Design**: Plan how data will be stored and updated. 4. **Data Design**: Plan how data will be stored and updated.
- For simple systems, use an in-memory dictionary. - For simple systems, use an in-memory dictionary.
- For more complex systems or when persistence is required, use a database. - For more complex systems or when persistence is required, use a database.
- For each node, specify: - **Remove Data Redundancy**: Don't store the same data. Use in-mem reference or foriegn key.
- For each node, design its access pattern:
- `type`: Decide between Regular, Batch, or Async
- `prep`: How the node reads data - `prep`: How the node reads data
- `exec`: Which utility function this node use
- `post`: How the node writes data - `post`: How the node writes data
5. **Implementation**: Implement nodes and flows based on the design. 5. **Implementation**: Implement the intial nodes and flows based on the design.
- Start with a simple, direct approach (avoid over-engineering and full-scale type checking or testing). - **"Keep it simple, stupid!** Avoid complex features and full-scale type checking.
- Let it FAIL FAST! Initially, refrain from adding `try` logic so you can quickly identify weak points in the system. - **FAIL FAST**! Refrain from `try` logic so you can quickly identify weak points in the system.
- Add logging throughout the code to facilitate debugging. - Add logging throughout the code to facilitate debugging.
6. **Optimization**: 6. **Optimization**: