| # Table of Contents |
|
|
| * [InteractiveCodeGenFlow](#InteractiveCodeGenFlow) |
| * [InteractiveCodeGenFlow](#InteractiveCodeGenFlow.InteractiveCodeGenFlow) |
| * [\_\_init\_\_](#InteractiveCodeGenFlow.InteractiveCodeGenFlow.__init__) |
| * [instantiate\_from\_config](#InteractiveCodeGenFlow.InteractiveCodeGenFlow.instantiate_from_config) |
| * [run](#InteractiveCodeGenFlow.InteractiveCodeGenFlow.run) |
| * [run](#run) |
| * [\_\_init\_\_](#__init__) |
|
|
| <a id="InteractiveCodeGenFlow"></a> |
|
|
| # InteractiveCodeGenFlow |
|
|
| <a id="InteractiveCodeGenFlow.InteractiveCodeGenFlow"></a> |
|
|
| ## InteractiveCodeGenFlow Objects |
|
|
| ```python |
| class InteractiveCodeGenFlow(SequentialFlow) |
| ``` |
|
|
| This flow writes code in an interactive manner. It is a sequential flow composed of: |
| 1. MemoryReading: reads in the code library. |
| 2. CodeGenerator: generates code based on the goal and functions in the code library. |
| 3. CodeFileEditor: writes the generated code to a temp file for the user to see, edit and provide feedback. |
| 4. ParseFeedback: opens up the temp file with vscode and parses the feedback from the user. |
|
|
| *Input Interface*: |
| - `goal` |
|
|
| *Output Interface*: |
| - `code` |
| - `feedback` |
| - `temp_code_file_location` |
|
|
|
|
| *Configuration Parameters*: |
| - `input_interface`: the input interface of the flow. |
| - `output_interface`: the output interface of the flow. |
| - `subflows_config`: the configuration of the subflows. |
| - `early_exit_key`: the key in the state dict that indicates whether the flow should exit early. |
| - `topology`: the topology of the subflows. |
|
|
| <a id="InteractiveCodeGenFlow.InteractiveCodeGenFlow.__init__"></a> |
|
|
| #### \_\_init\_\_ |
|
|
| ```python |
| def __init__(memory_files: Dict[str, Any], **kwargs) |
| ``` |
|
|
| This function initializes the flow. |
|
|
| **Arguments**: |
|
|
| - `memory_files` (`Dict[str, Any]`): the memory files that are used in the flow. |
| - `kwargs` (`Any`): the keyword arguments. |
|
|
| <a id="InteractiveCodeGenFlow.InteractiveCodeGenFlow.instantiate_from_config"></a> |
|
|
| #### instantiate\_from\_config |
|
|
| ```python |
| @classmethod |
| def instantiate_from_config(cls, config) |
| ``` |
|
|
| This function instantiates the flow from a configuration. |
|
|
| **Arguments**: |
|
|
| - `config` (`Dict[str, Any]`): the configuration of the flow. |
|
|
| **Returns**: |
|
|
| `Flow`: the instantiated flow. |
|
|
| <a id="InteractiveCodeGenFlow.InteractiveCodeGenFlow.run"></a> |
|
|
| #### run |
|
|
| ```python |
| def run(input_data: Dict[str, Any]) -> Dict[str, Any] |
| ``` |
|
|
| This function runs the flow. |
|
|
| **Arguments**: |
|
|
| - `input_data` (`Dict[str, Any]`): the input data to the flow. |
|
|
| **Returns**: |
|
|
| `Dict[str, Any]`: the output data from the flow. |
|
|
| <a id="run"></a> |
|
|
| # run |
|
|
| <a id="__init__"></a> |
|
|
| # \_\_init\_\_ |
|
|
|
|