gradio / client /python /CHANGELOG.md
mindmime's picture
Upload folder using huggingface_hub
a03b3ba verified

A newer version of the Gradio SDK is available: 4.36.1

Upgrade

gradio_client

0.8.1

Features

0.8.0

Fixes

  • #6846 48d6534 - Add show_api parameter to events, and fix gr.load(). Also makes some minor improvements to the "view API" page when running on Spaces. Thanks @abidlabs!
  • #6767 7bb561a - Rewriting parts of the README and getting started guides for 4.0. Thanks @abidlabs!

0.7.3

Fixes

  • #6693 34f9431 - Python client properly handles hearbeat and log messages. Also handles responses longer than 65k. Thanks @freddyaboulton!

0.7.2

Features

Fixes

0.7.1

Fixes

0.7.0

Features

0.7.0-beta.2

Features

0.7.0-beta.1

Features

0.7.0-beta.0

Features

0.6.1

Fixes

0.6.0

Highlights

new FileExplorer component (#5672 e4a307ed6)

Thanks to a new capability that allows components to communicate directly with the server without passing data via the value, we have created a new FileExplorer component.

This component allows you to populate the explorer by passing a glob, but only provides the selected file(s) in your prediction function.

Users can then navigate the virtual filesystem and select files which will be accessible in your predict function. This component will allow developers to build more complex spaces, with more flexible input options.

output

For more information check the FileExplorer documentation.

Thanks @aliabid94!

0.5.3

Features

0.5.2

Features

0.5.1

Features

0.5.0

Highlights

Enable streaming audio in python client (#5248 390624d8)

The gradio_client now supports streaming file outputs 🌊

No new syntax! Connect to a gradio demo that supports streaming file outputs and call predict or submit as you normally would.

import gradio_client as grc
client = grc.Client("gradio/stream_audio_out")

# Get the entire generated audio as a local file
client.predict("/Users/freddy/Pictures/bark_demo.mp4", api_name="/predict")

job = client.submit("/Users/freddy/Pictures/bark_demo.mp4", api_name="/predict")

# Get the entire generated audio as a local file
job.result()

# Each individual chunk
job.outputs()

Thanks @freddyaboulton!

Fixes

0.4.0

Highlights

Client.predict will now return the final output for streaming endpoints (#5057 35856f8b)

This is a breaking change (for gradio_client only)!

Previously, Client.predict would only return the first output of an endpoint that streamed results. This was causing confusion for developers that wanted to call these streaming demos via the client.

We realize that developers using the client don't know the internals of whether a demo streams or not, so we're changing the behavior of predict to match developer expectations.

Using Client.predict will now return the final output of a streaming endpoint. This will make it even easier to use gradio apps via the client.

Thanks @freddyaboulton!

Features

Fixes

0.3.0

Highlights

Create Discord Bots from Gradio Apps 🤖 (#4960 46e4ef67)

We're excited to announce that Gradio can now automatically create a discord bot from any gr.ChatInterface app.

It's as easy as importing gradio_client, connecting to the app, and calling deploy_discord!

🦙 Turning Llama 2 70b into a discord bot 🦙

import gradio_client as grc
grc.Client("ysharma/Explore_llamav2_with_TGI").deploy_discord(to_id="llama2-70b-discord-bot")

Getting started with template spaces

To help get you started, we have created an organization on Hugging Face called gradio-discord-bots with template spaces you can use to turn state of the art LLMs powered by Gradio to discord bots.

Currently we have template spaces for:

But once again, you can deploy ANY gr.ChatInterface app exposed on the internet! So don't hesitate to try it on your own Chatbots.

❗️ Additional Note ❗️: Technically, any gradio app that exposes an api route that takes in a single string and outputs a single string can be deployed to discord. But gr.ChatInterface apps naturally lend themselves to discord's chat functionality so we suggest you start with those.

Thanks @freddyaboulton!

New Features:

  • Endpoints that return layout components are now properly handled in the submit and view_api methods. Output layout components are not returned by the API but all other components are (excluding gr.State). By @freddyaboulton in PR 4871

Bug Fixes:

No changes to highlight

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

0.2.9

New Features:

No changes to highlight

Bug Fixes:

Breaking Changes:

No changes to highlight.

Full Changelog:

  • Pinned dependencies to major versions to reduce the likelihood of a broken gradio_client due to changes in downstream dependencies by @abidlabs in PR 4885

0.2.8

New Features:

Bug Fixes:

  • Fix bug where space duplication would error if the demo has cpu-basic hardware by @freddyaboulton in PR 4583
  • Fixes and optimizations to URL/download functions by @akx in PR 4695

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

0.2.7

New Features:

  • The output directory for files downloaded via the Client can now be set by the output_dir parameter in Client by @abidlabs in PR 4501

Bug Fixes:

  • The output directory for files downloaded via the Client are now set to a temporary directory by default (instead of the working directory in some cases) by @abidlabs in PR 4501

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

0.2.6

New Features:

No changes to highlight.

Bug Fixes:

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

0.2.5

New Features:

No changes to highlight.

Bug Fixes:

  • Fixes parameter names not showing underscores by @abidlabs in PR 4230
  • Fixes issue in which state was not handled correctly if serialize=False by @abidlabs in PR 4230

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

0.2.4

Bug Fixes:

  • Fixes missing serialization classes for several components: Barplot, Lineplot, Scatterplot, AnnotatedImage, Interpretation by @abidlabs in PR 4167

Documentation Changes:

No changes to highlight.

Testing and Infrastructure Changes:

No changes to highlight.

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

Contributors Shoutout:

No changes to highlight.

0.2.3

New Features:

No changes to highlight.

Bug Fixes:

Documentation Changes:

No changes to highlight.

Testing and Infrastructure Changes:

No changes to highlight.

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

Contributors Shoutout:

No changes to highlight.

0.2.2

New Features:

No changes to highlight.

Bug Fixes:

Other Changes:

Breaking Changes:

No changes to highlight.

0.2.1

New Features:

No changes to highlight.

Bug Fixes:

Removes extraneous State component info from the Client.view_api() method by @abidlabs in PR 4107

Documentation Changes:

No changes to highlight.

Testing and Infrastructure Changes:

Separates flaky tests from non-flaky tests by @abidlabs in PR 4107

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

Contributors Shoutout:

No changes to highlight.

0.1.4

New Features:

Bug Fixes:

  • Fixed bug where unnamed routes where displayed with api_name instead of fn_index in view_api by @freddyaboulton in PR 3972

Documentation Changes:

No changes to highlight.

Testing and Infrastructure Changes:

No changes to highlight.

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

Contributors Shoutout:

No changes to highlight.

0.1.3

New Features:

No changes to highlight.

Bug Fixes:

  • Fixed bug where Video components in latest gradio were not able to be deserialized by @freddyaboulton in PR 3860

Documentation Changes:

No changes to highlight.

Testing and Infrastructure Changes:

No changes to highlight.

Breaking Changes:

No changes to highlight.

Full Changelog:

No changes to highlight.

Contributors Shoutout:

No changes to highlight.

0.1.2

First public release of the Gradio Client library! The gradio_client Python library that makes it very easy to use any Gradio app as an API.

As an example, consider this Hugging Face Space that transcribes audio files that are recorded from the microphone.

Using the gradio_client library, we can easily use the Gradio as an API to transcribe audio files programmatically.

Here's the entire code to do it:

from gradio_client import Client

client = Client("abidlabs/whisper")
client.predict("audio_sample.wav")

>> "This is a test of the whisper speech recognition model."

Read more about how to use the gradio_client library here: https://gradio.app/getting-started-with-the-python-client/