From 568502e881a9693d4dc8e4d6ea873b2e98b7706f Mon Sep 17 00:00:00 2001 From: endolith Date: Sun, 23 Mar 2025 23:49:29 -0400 Subject: [PATCH 1/2] Remove unreachable server initialization Server in async_main is not reachable because we already checked for `args["serve"]` in main() --- interpreter/cli.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/interpreter/cli.py b/interpreter/cli.py index 5b81e4622a..0d38d526e6 100644 --- a/interpreter/cli.py +++ b/interpreter/cli.py @@ -186,12 +186,6 @@ async def async_load_interpreter(args): async def async_main(args): global global_interpreter - if args["serve"]: - global_interpreter = await async_load_interpreter(args) - print("Starting server...") - global_interpreter.server() - return - if ( args["input"] is None and sys.stdin.isatty() From 737d603f4fab50d83331594b03a0cb7af04e3ad1 Mon Sep 17 00:00:00 2001 From: endolith Date: Mon, 24 Mar 2025 00:11:09 -0400 Subject: [PATCH 2/2] Print helpful OpenAI-compatible server info MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Example: ````shell (oi_dev) λ interpreter --serve --model gpt-4o-mini --auto-run Starting OpenAI-compatible server... ============================================================ Open Interpreter API Server ============================================================ To use with an OpenAI-compatible client, configure: - API Base: http://127.0.0.1:8000 - API Path: /chat/completions - API Key: (any value, authentication not required) - Model name: (any value, ignored) NOTE: The server will use the model configured in --model Currently using: gpt-4o-mini ============================================================ ```` --- interpreter/interpreter.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/interpreter/interpreter.py b/interpreter/interpreter.py index 29c93e7abc..695b2e80a9 100644 --- a/interpreter/interpreter.py +++ b/interpreter/interpreter.py @@ -1073,6 +1073,21 @@ def server(self): # Create and start server server = Server(self) try: + host = server.host + port = server.port + + print("\n" + "=" * 60) + print(f"Open Interpreter API Server") + print("=" * 60) + print("\nTo use with an OpenAI-compatible client, configure:") + print(f" - API Base: http://{host}:{port}") + print(f" - API Path: /chat/completions") + print(f" - API Key: (any value, authentication not required)") + print(f" - Model name: (any value, ignored)") + print("\nNOTE: The server will use the model configured in --model") + print(f" Currently using: {self.model}") + print("=" * 60 + "\n") + server.run() except KeyboardInterrupt: print("\nShutting down server...")