Spaces:
Sleeping
A newer version of the Streamlit SDK is available:
1.55.0
title: probability-distributions
emoji: 🚀
colorFrom: pink
colorTo: pink
sdk: streamlit
sdk_version: 1.42.2
app_file: Home.py
pinned: false
Visualizing Probability Distributions in PyTorch
This repository contains a Streamlit app that visualizes various probability distributions in PyTorch. The app allows you to select a distribution and visualize its Probability Density Function (PDF) or Probability Mass Function (PMF).
Running the App Locally
Prerequisites
Make sure you have Python installed. Then, install the required dependencies:
pip install -r requirements.txt
Running the Streamlit App
streamlit run Home.py
Deploying on Hugging Face and Managing with GitHub
Step 1: Create a Hugging Face Space
Create a new Hugging Face Space for your Streamlit app. In this example, we assume the space is named probability-distributions.
Step 2: Add Hugging Face as a Remote
Check your existing remotes:
git remote -v
You should see something like this:
origin https://github.com/nipunbatra/streamlit-demo.git (fetch)
origin https://github.com/nipunbatra/streamlit-demo.git (push)
Now, add Hugging Face as a remote:
git remote add space git@hf.co:spaces/Nipun/probability-distributions
Verify that both remotes exist:
git remote -v
Output:
origin https://github.com/nipunbatra/streamlit-demo.git (fetch)
origin https://github.com/nipunbatra/streamlit-demo.git (push)
space git@hf.co:spaces/Nipun/probability-distributions (fetch)
space git@hf.co:spaces/Nipun/probability-distributions (push)
Step 3: Push Code to Both GitHub and Hugging Face
Instead of using hooks, we define a Git alias to push to both remotes:
git config --global alias.pushall '!git push origin main && git push space main'
Now, whenever you make changes, commit them and use:
git add .
git commit -m "Your commit message"
git pushall
This ensures that your changes are pushed to both GitHub and Hugging Face.
Explanation of Key Concepts
- Remote: A remote is a version of your repository stored on another server. Here,
originrefers to GitHub, andspacerefers to Hugging Face. - Branch: A branch represents a line of development in Git. Here, we are using the
mainbranch. git remote -v: Lists all remote repositories associated with the project.git push: Sends committed changes from your local branch to a remote repository.- Git Alias (
pushall): A custom shortcut to push changes to multiple remotes in one command.
With this setup, you can easily develop your app locally, push updates to GitHub for version control, and deploy to Hugging Face seamlessly.