| title | emoji | colorFrom | colorTo | sdk | sdk_version | python_version | app_file | fullWidth | header | disable_embedding | startup_duration_timeout | license | language | datasets | tags | short_description | thumbnail | pinned | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MergeUI |
🧬 |
purple |
pink |
gradio |
4.31.5 |
3.9 |
mergeui/web/gradio_app/main.py |
true |
mini |
false |
15m |
apache-2.0 |
|
|
|
All-in-one UI for merged LLMs in Hugging Face Hub |
true |
MergeUI is an open-source project that aims to provide a user-friendly interface for discovering and analyzing merged large language models (Merged LLMs) from the Hugging Face Hub. It is particularly focused on models that have been merged using MergeKit.
To run the project locally, you need to have the following installed:
Once you have the requirements installed, you can set up the project by running the following commands:
poetry installOnce the dependencies are installed, make sure to set up the environment variables by creating a .env file
cp .env.example .envTip
Find more about the environment variables in the settings.py file.
Next, we need to launch the database and Redis using Docker Compose:
docker compose up -dTip
run docker compose down to stop these services when you are done.
Note
This project use poetry with Poe the Poet plugin to run commands, run poe to see all available commands.
Once the setup is complete, we need to index the models from the Hugging Face Hub and store them in the database.
For indexing models we use RQ:
- First we need to launch some workers by running the following command in separate terminal tabs:
poe worker
- Next, we can start the indexing process by running:
poe index
- To monitor the indexing process, we can use the RQ dashboard by running:
rq-dashboard
Important
The indexing process takes few minutes to complete depending on your resources, number of workers and number
of merge models available.
Note
It takes around 6 minutes to index a graph of ~12k models and ~51k relationships using 64 workers.
Once the indexing process is complete, we can start our app using the following command:
uvicorn mergeui.main:app --port 8000 --log-level traceWarning
Set environment variable GRADIO_APP_DISABLED to true to disable Gradio app.
uvicorn mergeui.main:app --reload --port 8000 --log-level debuggradio mergeui/web/gradio_app/main.py # with reloading
python mergeui/web/gradio_app/main.py # without reloadingpoe bokeh_devThis project use pytest for testing, you can run the tests using the following command:
poe testMergeUI is a new project, and any contribution would make a difference! Whether you find a bug, have valuable feedback or suggestions, or simply want to get involved, we would love to hear from you!