Spaces:
Running on CPU Upgrade

File size: 3,946 Bytes
47d6cc1
7360ef0
fbf79e5
7360ef0
0a632f8
7360ef0
0a632f8
7360ef0
 
0a632f8
 
 
47d6cc1
 
 
 
 
 
 
 
 
a458c62
c44529f
ff9285c
1acb26d
70db785
4a1793c
79ad76f
 
9b618f0
31e34e6
7360ef0
f695033
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c919a10
70fbba8
 
31e34e6
d140e88
31e34e6
9b618f0
b6d2d51
91bb2ea
9ca9a0d
79ad76f
 
4a1793c
1acb26d
70db785
ff9285c
531b2a0
a458c62
43e0d33
cd6615a
32656c9
97e0f7f
890265a
 
 
 
 
 
 
 
 
 
 
 
 
33e7a65
f695033
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16d456d
0a632f8
b262a1b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
from app_lumaai import demo as demo_lumaai
from app_claude import demo as demo_claude
from app_cohere import demo as demo_cohere
from app_fal import demo as demo_fal
from app_fireworks import demo as demo_fireworks
from app_meta import demo as demo_meta
from app_perplexity import demo as demo_perplexity
from app_playai import demo as demo_playai
from app_replicate import demo as demo_replicate
from app_sambanova import demo as demo_sambanova
from app_together import demo as demo_together
from app_xai import demo as demo_grok
from app_crew import demo as demo_crew
from app_hyperbolic import demo as demo_hyperbolic
from app_gemini_coder import demo as demo_gemini_coder
from app_gemini import demo as demo_gemini
from app_hyperbolic_coder import demo as demo_hyperbolic_coder
from app_smolagents import demo as demo_smolagents
from app_groq import demo as demo_groq
from app_groq_coder import demo as demo_groq_coder
from app_openai_coder import demo as demo_openai_coder
from app_langchain import demo as demo_langchain
from app_mistral import demo as demo_mistral
from app_minimax import demo as demo_minimax
from app_minimax_coder import demo as demo_minimax_coder
from app_nvidia import demo as demo_nvidia
from app_deepseek import demo as demo_deepseek
from app_qwen import demo as demo_qwen
from app_qwen_coder import demo as demo_qwen_coder
from app_nvidia_coder import demo as demo_nvidia_coder
from app_openai import demo as demo_openai
from utils import get_app
import gradio as gr

# Create mapping of providers to their code snippets
PROVIDER_SNIPPETS = {
    "OpenAI Coder": """import gradio as gr
gr.load(
    name='openai:gpt-4-turbo',
    src=ai_gradio.registry,
    title='AI Chat',
    description='Chat with OpenAI GPT-4'
).launch()""",
    "Gemini Coder": """import gradio as gr
gr.load(
    name='gemini:gemini-1.5-flash',
    src=ai_gradio.registry,
    title='AI Chat',
    description='Chat with Gemini 1.5'
).launch()""",
    # Add similar snippets for other providers
}

# Create mapping of providers to their demos
PROVIDERS = {
    "OpenAI Coder": demo_openai_coder,
    "Gemini Coder": demo_gemini_coder,
    "OpenAI": demo_openai,
    "NVIDIA Coder": demo_nvidia_coder,
    "Hyperbolic Coder": demo_hyperbolic_coder,
    "Hyperbolic": demo_hyperbolic,
    "Groq Coder": demo_groq_coder,
    "Qwen Coder": demo_qwen_coder,
    "Qwen": demo_qwen,
    "DeepSeek Coder": demo_deepseek,
    "Minimax Coder": demo_minimax_coder,
    "NVIDIA": demo_nvidia,
    "Minimax": demo_minimax,
    "Mistral": demo_mistral,
    "Langchain Agent": demo_langchain,
    "Gemini": demo_gemini,
    "SmolAgents": demo_smolagents,
    "CrewAI": demo_crew,
    "LumaAI": demo_lumaai,
    "Grok": demo_grok,
    "Cohere": demo_cohere,
    "SambaNova": demo_sambanova,
    "Fireworks": demo_fireworks,
    "Together": demo_together,
    "Groq": demo_groq,
    "Meta Llama": demo_meta,
    "Replicate": demo_replicate,
    "Fal": demo_fal,
    "PlayAI": demo_playai,
    "Claude": demo_claude,
    "Perplexity": demo_perplexity,
}

# Modified get_app implementation
demo = gr.Blocks()
with demo:
    gr.Markdown("# AI Chat Providers")
    code_display = gr.Code(
        label="Provider Code Snippet",
        language="python",
        value=PROVIDER_SNIPPETS["OpenAI Coder"]
    )
    
    def update_code(provider):
        return PROVIDER_SNIPPETS.get(provider, "Code snippet not available")
    
    provider_dropdown = gr.Dropdown(
        choices=list(PROVIDERS.keys()),
        value="OpenAI Coder",
        label="Select Provider"
    )
    provider_dropdown.change(
        fn=update_code,
        inputs=[provider_dropdown],
        outputs=[code_display]
    )
    
    selected_demo = get_app(
        models=list(PROVIDERS.keys()),
        default_model="OpenAI Coder",
        src=PROVIDERS,
        dropdown_label="Select Provider",
    )

if __name__ == "__main__":
    demo.queue(api_open=False).launch(show_api=False)