Upload folder using huggingface_hub
Browse files
src/__pycache__/app.cpython-310.pyc
CHANGED
Binary files a/src/__pycache__/app.cpython-310.pyc and b/src/__pycache__/app.cpython-310.pyc differ
|
|
src/services/__pycache__/distributed_transcription_service.cpython-310.pyc
CHANGED
Binary files a/src/services/__pycache__/distributed_transcription_service.cpython-310.pyc and b/src/services/__pycache__/distributed_transcription_service.cpython-310.pyc differ
|
|
src/ui/__pycache__/gradio_ui.cpython-310.pyc
CHANGED
Binary files a/src/ui/__pycache__/gradio_ui.cpython-310.pyc and b/src/ui/__pycache__/gradio_ui.cpython-310.pyc differ
|
|
src/ui/gradio_ui.py
CHANGED
@@ -40,9 +40,64 @@ def create_gradio_interface():
|
|
40 |
gr.Blocks: Configured Gradio interface
|
41 |
"""
|
42 |
|
43 |
-
with gr.Blocks(title="
|
44 |
-
gr.Markdown("#
|
45 |
-
gr.Markdown("
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
46 |
|
47 |
# ==================== Podcast Download Tab ====================
|
48 |
with gr.Tab("Podcast Download"):
|
|
|
40 |
gr.Blocks: Configured Gradio interface
|
41 |
"""
|
42 |
|
43 |
+
with gr.Blocks(title="ModalTranscriberMCP") as demo:
|
44 |
+
gr.Markdown("# ποΈ ModalTranscriberMCP")
|
45 |
+
gr.Markdown("**Advanced Audio Transcription with Modal Cloud Computing & MCP Integration**")
|
46 |
+
|
47 |
+
# Performance Highlight
|
48 |
+
gr.Markdown("""
|
49 |
+
### β‘ **Supercharged by Modal Serverless GPU**
|
50 |
+
π **10-20x Faster Processing**: 1-hour audio transcribed in just 3-6 minutes
|
51 |
+
π― **Parallel GPU Processing**: Up to 10 concurrent GPU containers
|
52 |
+
βοΈ **Zero Infrastructure Management**: Fully serverless, pay-per-use
|
53 |
+
""", elem_classes=["performance-highlight"])
|
54 |
+
|
55 |
+
# MCP Usage Instructions
|
56 |
+
gr.Markdown("""
|
57 |
+
### π How to Use This MCP Server
|
58 |
+
|
59 |
+
This application provides both a **Web UI** and **MCP (Model Context Protocol) Tools** for AI assistants
|
60 |
+
|
61 |
+
A youtube video demo is below:
|
62 |
+
|
63 |
+
[](https://youtu.be/Ut5jw7Epb0o)
|
64 |
+
|
65 |
+
|
66 |
+
|
67 |
+
#### π Web Interface
|
68 |
+
- Use the tabs above to download podcasts and transcribe audio files
|
69 |
+
- Support for multi-platform downloads (Apple Podcasts, XiaoYuZhou)
|
70 |
+
- Advanced features: speaker diarization (requires Hugging Face Token), multiple output formats
|
71 |
+
- **High-speed processing**: Powered by Modal's distributed GPU infrastructure
|
72 |
+
|
73 |
+
#### π€ MCP Integration
|
74 |
+
**For AI Assistants (Claude, etc.):**
|
75 |
+
```
|
76 |
+
MCP Server URL: /api/mcp
|
77 |
+
Available Tools:
|
78 |
+
β’ transcribe_audio_file_tool - High-quality audio transcription
|
79 |
+
β’ download_apple_podcast_tool - Apple Podcasts audio download
|
80 |
+
β’ download_xyz_podcast_tool - XiaoYuZhou podcast download
|
81 |
+
β’ get_mp3_files_tool - Scan directories for audio files
|
82 |
+
β’ get_file_info_tool - Get file information
|
83 |
+
β’ read_text_file_segments_tool - Read large text files in chunks
|
84 |
+
```
|
85 |
+
|
86 |
+
**Connect via MCP Client:**
|
87 |
+
|
88 |
+
we deploy mcp server on modal, and we can use the url to connect to the gradio ui
|
89 |
+
the url is: http://richardsucran--gradio-mcp-ui-app-entry.modal.run
|
90 |
+
and json config is:
|
91 |
+
```json
|
92 |
+
{
|
93 |
+
"mcpServers": {
|
94 |
+
"podcast-mcp": {
|
95 |
+
"url": "http://richardsucran--gradio-mcp-ui-app-entry.modal.run/api/mcp"
|
96 |
+
}
|
97 |
+
}
|
98 |
+
}
|
99 |
+
```
|
100 |
+
""", elem_classes=["mcp-instructions"])
|
101 |
|
102 |
# ==================== Podcast Download Tab ====================
|
103 |
with gr.Tab("Podcast Download"):
|