| # 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\_\_ |
|
|
|
|