Skip to main content

A Python package for replicating Gradio applications

Project description

sambanova_gradio

is a Python package that makes it very easy for developers to create machine learning apps that are powered by sambanova's Inference API.

Installation

Install this package: pip install sambanova-gradio

That's it!

Basic Usage

Just like if you were to use the sambanova API, you should first save your sambanova API token to this environment variable:

export SAMBANOVA_API_KEY=<your token>

Then in a Python file, write:

import gradio as gr
import sambanova_gradio

gr.load(
    name='Meta-Llama-3.1-405B-Instruct',
    src=sambanova_gradio.registry,
).launch()

Run the Python file, and you should see a Gradio Interface connected to the model on sambanova!

ChatInterface

Customization

Once you can create a Gradio UI from a sambanova endpoint, you can customize it by setting your own input and output components, or any other arguments to gr.Interface. For example, the screenshot below was generated with:

import gradio as gr
import sambanova_gradio

gr.load(
    name='Meta-Llama-3.1-405B-Instruct',
    src=sambanova_gradio.registry,
    title='Sambanova-Gradio Integration',
    description="Chat with Meta-Llama-3.1-405B-Instruct model.",
    examples=["Explain quantum gravity to a 5-year old.", "How many R are there in the word Strawberry?"]
).launch()

ChatInterface with customizations

Composition

Or use your loaded Interface within larger Gradio Web UIs, e.g.

import gradio as gr
import sambanova_gradio

with gr.Blocks() as demo:
    with gr.Tab("405B"):
        gr.load('Meta-Llama-3.1-405B-Instruct', src=sambanova_gradio.registry)
    with gr.Tab("70B"):
        gr.load('Meta-Llama-3.1-70B-Instruct-8k', src=sambanova_gradio.registry)

demo.launch()

Under the Hood

The sambanova-gradio Python library has two dependencies: openai and gradio. It defines a "registry" function sambanova_gradio.registry, which takes in a model name and returns a Gradio app.

Supported Models in Sambanova Cloud

Model Context Length Output Length Dtype / Precision
Meta-Llama-3.1-8B-Instruct 4096 1000 BF16
Meta-Llama-3.1-8B-Instruct-8k 8192 1000 BF16
Meta-Llama-3.1-70B-Instruct 4096 1000 BF16
Meta-Llama-3.1-70B-Instruct-8k 8192 1000 BF16
Meta-Llama-3.1-405B-Instruct 4096 1000 BF16
Meta-Llama-3.1-405B-Instruct-8k 8192 1000 BF16

Note: if you are getting a 401 authentication error, then the sambanova API Client is not able to get the API token from the environment variable. This happened to me as well, in which case save it in your Python session, like this:

import os

os.environ["SAMBANOVA_API_KEY"] = ...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sambanova_gradio-0.1.8.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sambanova_gradio-0.1.8-py3-none-any.whl (4.2 kB view details)

Uploaded Python 3

File details

Details for the file sambanova_gradio-0.1.8.tar.gz.

File metadata

  • Download URL: sambanova_gradio-0.1.8.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.0

File hashes

Hashes for sambanova_gradio-0.1.8.tar.gz
Algorithm Hash digest
SHA256 41e16eb24f5b50fb0e462fc46d6372eb4003b43f25fb318f0076dd36b0442182
MD5 7661d6e44070e866821c80e09889b786
BLAKE2b-256 c822766bbf24b9fe287154967b722869147e7f5104aa974d575904c9fcac7df5

See more details on using hashes here.

File details

Details for the file sambanova_gradio-0.1.8-py3-none-any.whl.

File metadata

File hashes

Hashes for sambanova_gradio-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 004d761804eed80670256a4edb739edb94c1fc5f5538de336d6bd7413a5882d2
MD5 9ea0f575f6a23eb08f4e30f833f40e58
BLAKE2b-256 ad06b8a8ac204dd3064ad8e9316c50412bdbdc671ffea9b442a40290bb448ce6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page