gpt4free/g4f/gui/__init__.py

43 lines
1.2 KiB
Python
Raw Normal View History

from ..errors import MissingRequirementsError
2023-10-06 21:52:17 +03:00
2024-04-06 17:21:22 +03:00
try:
from .server.app import app
from .server.website import Website
from .server.backend import Backend_Api
import_error = None
except ImportError as e:
import_error = e
def run_gui(host: str = '0.0.0.0', port: int = 8080, debug: bool = False) -> None:
2024-04-06 17:21:22 +03:00
if import_error is not None:
raise MissingRequirementsError(f'Install "gui" requirements | pip install -U g4f[gui]\n{import_error}')
2024-03-17 12:51:08 +03:00
if debug:
2024-04-06 17:21:22 +03:00
from g4f import debug
debug.logging = True
2023-10-06 21:52:17 +03:00
config = {
'host' : host,
'port' : port,
'debug': debug
}
2023-10-06 21:52:17 +03:00
site = Website(app)
for route in site.routes:
app.add_url_rule(
route,
view_func = site.routes[route]['function'],
methods = site.routes[route]['methods'],
)
2023-10-06 21:52:17 +03:00
backend_api = Backend_Api(app)
for route in backend_api.routes:
app.add_url_rule(
route,
view_func = backend_api.routes[route]['function'],
methods = backend_api.routes[route]['methods'],
)
2023-10-06 21:52:17 +03:00
print(f"Running on port {config['port']}")
app.run(**config)
2023-10-12 04:35:11 +03:00
print(f"Closing port {config['port']}")