| # Table of Contents | |
| * [run](#run) | |
| * [CodeGeneratorAtomicFlow](#CodeGeneratorAtomicFlow) | |
| * [CodeGeneratorAtomicFlow](#CodeGeneratorAtomicFlow.CodeGeneratorAtomicFlow) | |
| * [\_\_init\_\_](#CodeGeneratorAtomicFlow.CodeGeneratorAtomicFlow.__init__) | |
| * [instantiate\_from\_config](#CodeGeneratorAtomicFlow.CodeGeneratorAtomicFlow.instantiate_from_config) | |
| * [run](#CodeGeneratorAtomicFlow.CodeGeneratorAtomicFlow.run) | |
| * [\_\_init\_\_](#__init__) | |
| <a id="run"></a> | |
| # run | |
| <a id="CodeGeneratorAtomicFlow"></a> | |
| # CodeGeneratorAtomicFlow | |
| <a id="CodeGeneratorAtomicFlow.CodeGeneratorAtomicFlow"></a> | |
| ## CodeGeneratorAtomicFlow Objects | |
| ```python | |
| class CodeGeneratorAtomicFlow(ChatAtomicFlow) | |
| ``` | |
| This class wraps around the Chat API to generate code from a goal. One thing worth noting is that we need to | |
| make sure the code generator does not write repetitive code that is present in the library, so we need to inject | |
| the function signatures in the library to the system prompts. | |
| *Input Interface Non Initialized*: | |
| - `goal` | |
| - `code_library` | |
| - `memory_files` | |
| *Input Interface Initialized*: | |
| - `goal` | |
| - `code_library` | |
| - `memory_files` | |
| *Output Interface*: | |
| - `code` | |
| - `language_of_code` | |
| *Configuration Parameters*: | |
| - Also refer to ChatAtomicFlow (https://huggingface.co/aiflows/ChatFlowModule/blob/main/ChatAtomicFlow.py) | |
| - `input_interface_non_initialized`: The input interface when the conversation is not initialized. | |
| - `input_interface_initialized`: The input interface when the conversation is initialized. | |
| - `output_interface`: The output interface. | |
| - `backend`: The backend to use for the Chat API. | |
| - `system_message_prompt_template`: The template for the system message prompt. | |
| - `human_message_prompt_template`: The template for the human message prompt. | |
| - `init_human_message_prompt_template`: The initial human message prompt. | |
| <a id="CodeGeneratorAtomicFlow.CodeGeneratorAtomicFlow.__init__"></a> | |
| #### \_\_init\_\_ | |
| ```python | |
| def __init__(**kwargs) | |
| ``` | |
| Initialize the CodeGeneratorAtomicFlow. | |
| **Arguments**: | |
| - `kwargs` (`Any`): Keyword arguments. | |
| <a id="CodeGeneratorAtomicFlow.CodeGeneratorAtomicFlow.instantiate_from_config"></a> | |
| #### instantiate\_from\_config | |
| ```python | |
| @classmethod | |
| def instantiate_from_config(cls, config) | |
| ``` | |
| Instantiate a CodeGeneratorAtomicFlow from a configuration. | |
| **Arguments**: | |
| - `config` (`Dict[str, Any]`): Configuration dictionary. | |
| **Returns**: | |
| `CodeGeneratorAtomicFlow`: Instantiated CodeGeneratorAtomicFlow. | |
| <a id="CodeGeneratorAtomicFlow.CodeGeneratorAtomicFlow.run"></a> | |
| #### run | |
| ```python | |
| def run(input_data: Dict[str, Any]) -> Dict[str, Any] | |
| ``` | |
| Run the flow. | |
| **Arguments**: | |
| - `input_data` (`Dict[str, Any]`): Input data. | |
| **Returns**: | |
| `Dict[str, Any]`: Output data. | |
| <a id="__init__"></a> | |
| # \_\_init\_\_ | |