gradio/.changeset/beige-parrots-sink.md
Yuichiro Tachibana (Tsuchiya) c77f05abb6
Fix the Queue to call API endpoints without internal HTTP routing (#5165)
* [WIP] Replace the HTTP call to /api/predict with a function call

* Extract shared logics into route_utils.*

* Fix Queue.call_prediction() to return the output dict and raise exceptions

* Remove run_predict()

* Create route_utils.call_process_api()

* Check Blocks.api_open and return 404 if it's false

* Refactoring on queueing.py

* Refactoring on queueing.py, renaming data to body

* Fix the if block of availability check in the predict() endpoint handler

* Put the code of clearning pending streams into route_utils.call_process_api

* Format gradio/routes.py

* Fix queueing.Queue.reset_iterators() not to call an HTTP endpoint

* Remove ququeing.Queue.queue_client, which is no longer used

* Fix with static type analysis

* Remove gradio.utils.AsyncRequest, which is no longer used

* add changeset

* Remove PEP604-syntax which is not supported by Python<3.10

* Fix gradio/queueing.py

* Remove AsyncRequest test cases

* Fix queueing and routes test cases

* Fix

* Replace Queue.server_url with .server_app and remove methods related to the old .server_url

* Revert `gradio_api_url` because building the document fails

* Add __future__.annotations to route_utils.py

* Update gradio/queueing.py

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>

* Format

* Mark the `gradio_api_url` parameter of `mount_gradio_app()` deprecated

* Fix Queue.call_prediction to convert the output to a plain object

* Add a `except asyncio.CancelledError` handler to avoid printing stack trace for task cancellation

* Move the call of `route_utils.restore_session_state` into `route_utils.call_process_api`

* exception class

---------

Co-authored-by: gradio-pr-bot <gradio-pr-bot@users.noreply.github.com>
Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
2023-09-05 15:33:15 -07:00

96 B

gradio
minor

feat:Fix the Queue to call API endpoints without internal HTTP routing