## Description
This Pull Request implements four new features in the langflow Workflow
project:
- Copy and Paste feature for multiple nodes
- Undo and Redo feature for node actions
### Copy and Paste Feature
The Copy and Paste feature allows users to select multiple nodes by
holding down the `Shift` key and dragging the mouse over the nodes, copy
them using the `Ctrl+C` keyboard shortcut, and paste them into a
different location within the workflow by leaving the mouse pointer at
the desired location and pressing `Ctrl+V`.
### Undo and Redo Feature
The Undo and Redo feature allows users to undo and redo actions on the
workflow nodes using the `Ctrl+Z` and `Ctrl+Shift+Z` keyboard shortcuts,
respectively. When a user undoes an action, the state of the nodes in
the workflow is reverted to the previous state. Similarly, when a user
redoes an action, the state of the nodes is restored to the previous
state that was undone.
## How to Test
To test these features, follow the below steps:
1. Run the `langflow` application.
2. Add a few nodes to the workflow.
3. Select one or more nodes by holding down the `Shift` key and dragging
the mouse over the nodes.
4. Press `Ctrl+C` to copy the selected nodes.
5. Leave the mouse pointer at a different location in the workflow and
press `Ctrl+V` to paste the copied nodes.
6. Use the `Ctrl+Z` and `Ctrl+Shift+Z` keyboard shortcuts to undo and
redo actions on the nodes in the workflow.
feat(api): add predict request and response schemas
refactor(interface): rename get_result_and_steps to get_result_and_thought and remove async prefix
fix(interface): use get_result_and_thought instead of async_get_result_and_steps in process_graph_cached
The `ZeroShotAgent` instantiation in `JsonAgent`, `CSVAgent`, `VectorStoreAgent`, `SQLAgent`, and `MalfoyAgent` classes were updated to include a `# type: ignore` comment to suppress type checking errors.
refactor(test_cache.py): update import statements and function names
test(cache): add tests for load_or_build_langchain_object, build_langchain_object_with_caching, build_graph, and cache size limit