From 66c26b8744df6671a95d1fe8bf378484317288f3 Mon Sep 17 00:00:00 2001 From: rairai77 Date: Mon, 10 Mar 2025 16:52:45 -0700 Subject: [PATCH] added configurator script and fixed inconsistent spacing in config.example.toml --- config/config.example.toml | 4 +-- configure.py | 59 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+), 2 deletions(-) create mode 100644 configure.py diff --git a/config/config.example.toml b/config/config.example.toml index c1d51f00..4c9c92fb 100644 --- a/config/config.example.toml +++ b/config/config.example.toml @@ -7,13 +7,13 @@ max_tokens = 4096 temperature = 0.0 # [llm] #AZURE OPENAI: -# api_type= 'azure' +# api_type = 'azure' # model = "YOUR_MODEL_NAME" #"gpt-4o-mini" # base_url = "{YOUR_AZURE_ENDPOINT.rstrip('/')}/openai/deployments/{AZURE_DEPOLYMENT_ID}" # api_key = "AZURE API KEY" # max_tokens = 8096 # temperature = 0.0 -# api_version="AZURE API VERSION" #"2024-08-01-preview" +# api_version = "AZURE API VERSION" #"2024-08-01-preview" # Optional configuration for specific LLM models [llm.vision] diff --git a/configure.py b/configure.py new file mode 100644 index 00000000..20fb19cf --- /dev/null +++ b/configure.py @@ -0,0 +1,59 @@ +""" +OpenManus Configurator +""" + +def main(): + lines = ["[llm]"] + + def get_or_default(prompt, default): + value = input(prompt + " (" + default + "): ").strip() + return value if value else default + + print("__________________________________________________________") + print("OpenManus Configuration") + print("__________________________________________________________") + print("") + print("Please enter the following information to configure OpenManus") + print("") + print("") + lines.append( + f"api_type = \"{get_or_default('API Type, openai or azure', 'openai')}\"" + ) + # Azure needs a version too + if lines[-1] == "azure": + lines.append( + f"api_version = \"{get_or_default('API Version', '2024-08-01-preview')}\"" + ) + lines.append(f"model = \"{get_or_default('Model', 'claude-3-5-sonnet')}\"") + lines.append( + f"base_url = \"{get_or_default('Base URL', 'https://api.openai.com/v1')}\"" + ) + lines.append(f"api_key = \"{get_or_default('API Key',"sk-...")}\"") + lines.append(f"max_tokens = {get_or_default('Max Tokens', '4096')}") + lines.append(f"temperature = {get_or_default('Temperature', '0.0')}") + + if input("Do you want to configure a vision model? Y/n (n)") == "Y": + lines.append("") + lines.append("[llm.vision]") + lines.append( + f"api_type = \"{get_or_default('API Type, openai or azure', 'openai')}\"" + ) + # Azure needs a version too + if lines[-1] == "azure": + lines.append( + f"api_version = \"{get_or_default('API Version', '2024-08-01-preview')}\"" + ) + lines.append(f"model = \"{get_or_default('Model', 'claude-3-5-sonnet')}\"") + lines.append( + f"base_url = \"{get_or_default('Base URL', 'https://api.openai.com/v1')}\"" + ) + lines.append(f"api_key = \"{get_or_default('API Key',"sk-...")}\"") + lines.append(f"max_tokens = {get_or_default('Max Tokens', '4096')}") + lines.append(f"temperature = {get_or_default('Temperature', '0.0')}") + + with open("config/config.toml", "w", encoding="utf-8") as file: + file.writelines("\n".join(lines)) + + +if __name__ == "__main__": + main()