MervinPraison / PraisonAI

PraisonAI application combines AutoGen and CrewAI or similar frameworks into a low-code solution for building and managing multi-agent LLM systems, focusing on simplicity, customisation, and efficient human-agent collaboration.
https://docs.praison.ai
MIT License
1.06k stars 159 forks source link

RuntimeError: StaticFiles directory 'public' does not exist. #55

Closed MervinPraison closed 2 weeks ago

MervinPraison commented 2 weeks ago

ERROR: Exception in ASGI application Traceback (most recent call last): File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/staticfiles.py", line 202, in check_config stat_result = await anyio.to_thread.run_sync(os.stat, self.directory) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/anyio/to_thread.py", line 33, in run_sync return await get_asynclib().run_sync_in_worker_thread( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 877, in run_sync_in_worker_thread return await future ^^^^^^^^^^^^ File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/asyncio/futures.py", line 287, in await yield self # This tells Task to wait for completion. ^^^^^^^^^^ File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/asyncio/tasks.py", line 349, in __wakeup future.result() File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/asyncio/futures.py", line 203, in result raise self._exception.with_traceback(self._exception_tb) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 807, in run result = context.run(func, *args) ^^^^^^^^^^^^^^^^^^^^^^^^ FileNotFoundError: [Errno 2] No such file or directory: 'public'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 426, in run_asgi result = await app( # type: ignore[func-returns-value] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in call return await self.app(scope, receive, send) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/engineio/async_drivers/asgi.py", line 74, in call await self.other_asgi_app(scope, receive, send) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in call await super().call(scope, receive, send) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/applications.py", line 123, in call await self.middleware_stack(scope, receive, send) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in call raise exc File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in call await self.app(scope, receive, _send) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/middleware/cors.py", line 85, in call await self.app(scope, receive, send) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 65, in call await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app raise exc File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app await app(scope, receive, sender) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/routing.py", line 756, in call await self.middleware_stack(scope, receive, send) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/routing.py", line 776, in app await route.handle(scope, receive, send) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/routing.py", line 485, in handle await self.app(scope, receive, send) File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/staticfiles.py", line 99, in call await self.check_config() File "/Users/praison/miniconda3/envs/praisonai/lib/python3.11/site-packages/starlette/staticfiles.py", line 204, in check_config raise RuntimeError( RuntimeError: StaticFiles directory 'public' does not exist. Settings updated

MervinPraison commented 2 weeks ago

Fixed in this release https://github.com/MervinPraison/PraisonAI/releases/tag/v0.0.32