This pull request introduces a new Gradio-based UI interface for Dora-rs
addressing issue #884 , providing both text and voice input
capabilities. Below are the most significant changes:
### Configuration:
*
[`node-hub/dora-gradio/demo.yml`](diffhunk://#diff-165f450ebc9fb4385dba716890aa15af1a7cbb3497242c456087792820c45bf6R1-R14):
Added a demo YAML configuration file to showcase how to set up the Dora
Gradio UI node and connect it with other nodes.
### Implementation:
*
[`node-hub/dora-gradio/dora_gradio/main.py`](diffhunk://#diff-c93bc18b7e40bb164ad2e094d5f051cb8df51909c385bc8f534cc2a54ee5d1a3R1-R133):
Implemented the main functionality of the Dora Gradio UI, including text
and voice input handling, real-time audio transcription using Whisper,
and integration with the Dora framework.
This PR makes it possible to benchmark inference speed based on
inference engine.
In my case I was able to detect that for GGUF, the model runs twice as
fast as on transformers based config for qwen2.5 0.5B:
| path | date | average_duration (s) | max_duration (s) | min_duration
(s) | median_duration (s) | median_frequency | average_speed (tokens/s)
| max_speed (tokens/s) | min_speed (tokens/s) | median_speed (tokens/s)
| total_tokens |
|---------------------------|---------------------|----------------------|------------------|------------------|---------------------|------------------|---------------------------|-----------------------|-----------------------|---------------------------|--------------|
| dora-llama-cpp-python | 2025-03-17 15:45:25 | 0.03 | 0.09 | 0.03 |
0.03 | 37.76 | 222.73 | 233.59 | 69.38 | 226.54 | 6 |
| dora-transformers | 2025-03-17 16:20:33 | 0.07 | 0.40 | 0.05 | 0.06 |
16.15 | 96.37 | 111.81 | 15.14 | 96.90 | 6 |