Spaces:
				
			
			
	
			
			
		Sleeping
		
	
	
	
			
			
	
	
	
	
		
		
		Sleeping
		
	aaaaa
Browse files- app.py +2 -2
- app_interface.py +0 -141
- app_original.py +0 -63
- app_update_title.py +0 -104
    	
        app.py
    CHANGED
    
    | @@ -27,7 +27,7 @@ def respond( | |
| 27 | 
             
                    history = []
         | 
| 28 |  | 
| 29 | 
             
                if use_local_model:
         | 
| 30 | 
            -
                    #  | 
| 31 | 
             
                    messages = [{"role": "system", "content": system_message}]
         | 
| 32 | 
             
                    for val in history:
         | 
| 33 | 
             
                        if val[0]:
         | 
| @@ -53,7 +53,7 @@ def respond( | |
| 53 | 
             
                        yield history + [(message, response)]  # Yield history + new response
         | 
| 54 |  | 
| 55 | 
             
                else:
         | 
| 56 | 
            -
                    # API-based inference  | 
| 57 | 
             
                    messages = [{"role": "system", "content": system_message}]
         | 
| 58 | 
             
                    for val in history:
         | 
| 59 | 
             
                        if val[0]:
         | 
|  | |
| 27 | 
             
                    history = []
         | 
| 28 |  | 
| 29 | 
             
                if use_local_model:
         | 
| 30 | 
            +
                    # local inference 
         | 
| 31 | 
             
                    messages = [{"role": "system", "content": system_message}]
         | 
| 32 | 
             
                    for val in history:
         | 
| 33 | 
             
                        if val[0]:
         | 
|  | |
| 53 | 
             
                        yield history + [(message, response)]  # Yield history + new response
         | 
| 54 |  | 
| 55 | 
             
                else:
         | 
| 56 | 
            +
                    # API-based inference 
         | 
| 57 | 
             
                    messages = [{"role": "system", "content": system_message}]
         | 
| 58 | 
             
                    for val in history:
         | 
| 59 | 
             
                        if val[0]:
         | 
    	
        app_interface.py
    DELETED
    
    | @@ -1,141 +0,0 @@ | |
| 1 | 
            -
            import gradio as gr
         | 
| 2 | 
            -
            from huggingface_hub import InferenceClient
         | 
| 3 | 
            -
            import time
         | 
| 4 | 
            -
             | 
| 5 | 
            -
            # Inference client setup
         | 
| 6 | 
            -
            client = InferenceClient("HuggingFaceH4/zephyr-7b-beta")
         | 
| 7 | 
            -
             | 
| 8 | 
            -
            # Global flag to handle cancellation
         | 
| 9 | 
            -
            stop_inference = False
         | 
| 10 | 
            -
             | 
| 11 | 
            -
            def respond(
         | 
| 12 | 
            -
                message,
         | 
| 13 | 
            -
                history: list[tuple[str, str]],
         | 
| 14 | 
            -
                system_message,
         | 
| 15 | 
            -
                max_tokens,
         | 
| 16 | 
            -
                temperature,
         | 
| 17 | 
            -
                top_p,
         | 
| 18 | 
            -
                use_local_model,
         | 
| 19 | 
            -
            ):
         | 
| 20 | 
            -
                global stop_inference
         | 
| 21 | 
            -
                stop_inference = False  # Reset cancellation flag
         | 
| 22 | 
            -
             | 
| 23 | 
            -
                if use_local_model:
         | 
| 24 | 
            -
                    # Simulate local inference
         | 
| 25 | 
            -
                    time.sleep(2)  # simulate a delay
         | 
| 26 | 
            -
                    response = "This is a response from the local model."
         | 
| 27 | 
            -
                    history.append((message, response))
         | 
| 28 | 
            -
                    yield history
         | 
| 29 | 
            -
                else:
         | 
| 30 | 
            -
                    # API-based inference
         | 
| 31 | 
            -
                    messages = [{"role": "system", "content": system_message}]
         | 
| 32 | 
            -
                    for val in history:
         | 
| 33 | 
            -
                        if val[0]:
         | 
| 34 | 
            -
                            messages.append({"role": "user", "content": val[0]})
         | 
| 35 | 
            -
                        if val[1]:
         | 
| 36 | 
            -
                            messages.append({"role": "assistant", "content": val[1]})
         | 
| 37 | 
            -
                    messages.append({"role": "user", "content": message})
         | 
| 38 | 
            -
             | 
| 39 | 
            -
                    response = ""
         | 
| 40 | 
            -
                    for message in client.chat_completion(
         | 
| 41 | 
            -
                        messages,
         | 
| 42 | 
            -
                        max_tokens=max_tokens,
         | 
| 43 | 
            -
                        stream=True,
         | 
| 44 | 
            -
                        temperature=temperature,
         | 
| 45 | 
            -
                        top_p=top_p,
         | 
| 46 | 
            -
                    ):
         | 
| 47 | 
            -
                        if stop_inference:
         | 
| 48 | 
            -
                            history.append((message, "Inference cancelled."))
         | 
| 49 | 
            -
                            yield history
         | 
| 50 | 
            -
                            break
         | 
| 51 | 
            -
                        token = message.choices[0].delta.content
         | 
| 52 | 
            -
                        response += token
         | 
| 53 | 
            -
                        history.append((message, response))
         | 
| 54 | 
            -
                        yield history
         | 
| 55 | 
            -
             | 
| 56 | 
            -
            def cancel_inference():
         | 
| 57 | 
            -
                global stop_inference
         | 
| 58 | 
            -
                stop_inference = True
         | 
| 59 | 
            -
             | 
| 60 | 
            -
            # Custom CSS for a fancy look
         | 
| 61 | 
            -
            custom_css = """
         | 
| 62 | 
            -
            #main-container {
         | 
| 63 | 
            -
                background-color: #f0f0f0;
         | 
| 64 | 
            -
                font-family: 'Arial', sans-serif;
         | 
| 65 | 
            -
            }
         | 
| 66 | 
            -
             | 
| 67 | 
            -
            .gradio-container {
         | 
| 68 | 
            -
                max-width: 700px;
         | 
| 69 | 
            -
                margin: 0 auto;
         | 
| 70 | 
            -
                padding: 20px;
         | 
| 71 | 
            -
                background: white;
         | 
| 72 | 
            -
                box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
         | 
| 73 | 
            -
                border-radius: 10px;
         | 
| 74 | 
            -
            }
         | 
| 75 | 
            -
             | 
| 76 | 
            -
            .gr-button {
         | 
| 77 | 
            -
                background-color: #4CAF50;
         | 
| 78 | 
            -
                color: white;
         | 
| 79 | 
            -
                border: none;
         | 
| 80 | 
            -
                border-radius: 5px;
         | 
| 81 | 
            -
                padding: 10px 20px;
         | 
| 82 | 
            -
                cursor: pointer;
         | 
| 83 | 
            -
                transition: background-color 0.3s ease;
         | 
| 84 | 
            -
            }
         | 
| 85 | 
            -
             | 
| 86 | 
            -
            .gr-button:hover {
         | 
| 87 | 
            -
                background-color: #45a049;
         | 
| 88 | 
            -
            }
         | 
| 89 | 
            -
             | 
| 90 | 
            -
            .gr-slider input {
         | 
| 91 | 
            -
                color: #4CAF50;
         | 
| 92 | 
            -
            }
         | 
| 93 | 
            -
             | 
| 94 | 
            -
            .gr-chat {
         | 
| 95 | 
            -
                font-size: 16px;
         | 
| 96 | 
            -
            }
         | 
| 97 | 
            -
             | 
| 98 | 
            -
            #title {
         | 
| 99 | 
            -
                text-align: center;
         | 
| 100 | 
            -
                font-size: 2em;
         | 
| 101 | 
            -
                margin-bottom: 20px;
         | 
| 102 | 
            -
                color: #333;
         | 
| 103 | 
            -
            }
         | 
| 104 | 
            -
            """
         | 
| 105 | 
            -
             | 
| 106 | 
            -
            # Define the interface
         | 
| 107 | 
            -
            with gr.Blocks(css=custom_css) as demo:
         | 
| 108 | 
            -
                gr.Markdown("<h1 style='text-align: center;'>🌟 Fancy AI Chatbot 🌟</h1>")
         | 
| 109 | 
            -
                gr.Markdown("Interact with the AI chatbot using customizable settings below.")
         | 
| 110 | 
            -
             | 
| 111 | 
            -
                with gr.Row():
         | 
| 112 | 
            -
                    system_message = gr.Textbox(value="You are a friendly Chatbot.", label="System message", interactive=True)
         | 
| 113 | 
            -
                    use_local_model = gr.Checkbox(label="Use Local Model", value=False)
         | 
| 114 | 
            -
             | 
| 115 | 
            -
                with gr.Row():
         | 
| 116 | 
            -
                    max_tokens = gr.Slider(minimum=1, maximum=2048, value=512, step=1, label="Max new tokens")
         | 
| 117 | 
            -
                    temperature = gr.Slider(minimum=0.1, maximum=4.0, value=0.7, step=0.1, label="Temperature")
         | 
| 118 | 
            -
                    top_p = gr.Slider(minimum=0.1, maximum=1.0, value=0.95, step=0.05, label="Top-p (nucleus sampling)")
         | 
| 119 | 
            -
             | 
| 120 | 
            -
                chat_history = gr.Chatbot(label="Chat")
         | 
| 121 | 
            -
             | 
| 122 | 
            -
                user_input = gr.Textbox(show_label=False, placeholder="Type your message here...")
         | 
| 123 | 
            -
             | 
| 124 | 
            -
                cancel_button = gr.Button("Cancel Inference", variant="danger")
         | 
| 125 | 
            -
             | 
| 126 | 
            -
                def chat_fn(message, history):
         | 
| 127 | 
            -
                    return respond(
         | 
| 128 | 
            -
                        message,
         | 
| 129 | 
            -
                        history,
         | 
| 130 | 
            -
                        system_message.value,
         | 
| 131 | 
            -
                        max_tokens.value,
         | 
| 132 | 
            -
                        temperature.value,
         | 
| 133 | 
            -
                        top_p.value,
         | 
| 134 | 
            -
                        use_local_model.value,
         | 
| 135 | 
            -
                    )
         | 
| 136 | 
            -
             | 
| 137 | 
            -
                user_input.submit(chat_fn, [user_input, chat_history], chat_history)
         | 
| 138 | 
            -
                cancel_button.click(cancel_inference)
         | 
| 139 | 
            -
             | 
| 140 | 
            -
            if __name__ == "__main__":
         | 
| 141 | 
            -
                demo.launch(share=True)
         | 
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | 
    	
        app_original.py
    DELETED
    
    | @@ -1,63 +0,0 @@ | |
| 1 | 
            -
            import gradio as gr
         | 
| 2 | 
            -
            from huggingface_hub import InferenceClient
         | 
| 3 | 
            -
             | 
| 4 | 
            -
            """
         | 
| 5 | 
            -
            For more information on `huggingface_hub` Inference API support, please check the docs: https://huggingface.co/docs/huggingface_hub/v0.22.2/en/guides/inference
         | 
| 6 | 
            -
            """
         | 
| 7 | 
            -
            client = InferenceClient("HuggingFaceH4/zephyr-7b-beta")
         | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 10 | 
            -
            def respond(
         | 
| 11 | 
            -
                message,
         | 
| 12 | 
            -
                history: list[tuple[str, str]],
         | 
| 13 | 
            -
                system_message,
         | 
| 14 | 
            -
                max_tokens,
         | 
| 15 | 
            -
                temperature,
         | 
| 16 | 
            -
                top_p,
         | 
| 17 | 
            -
            ):
         | 
| 18 | 
            -
                messages = [{"role": "system", "content": system_message}]
         | 
| 19 | 
            -
             | 
| 20 | 
            -
                for val in history:
         | 
| 21 | 
            -
                    if val[0]:
         | 
| 22 | 
            -
                        messages.append({"role": "user", "content": val[0]})
         | 
| 23 | 
            -
                    if val[1]:
         | 
| 24 | 
            -
                        messages.append({"role": "assistant", "content": val[1]})
         | 
| 25 | 
            -
             | 
| 26 | 
            -
                messages.append({"role": "user", "content": message})
         | 
| 27 | 
            -
             | 
| 28 | 
            -
                response = ""
         | 
| 29 | 
            -
             | 
| 30 | 
            -
                for message in client.chat_completion(
         | 
| 31 | 
            -
                    messages,
         | 
| 32 | 
            -
                    max_tokens=max_tokens,
         | 
| 33 | 
            -
                    stream=True,
         | 
| 34 | 
            -
                    temperature=temperature,
         | 
| 35 | 
            -
                    top_p=top_p,
         | 
| 36 | 
            -
                ):
         | 
| 37 | 
            -
                    token = message.choices[0].delta.content
         | 
| 38 | 
            -
             | 
| 39 | 
            -
                    response += token
         | 
| 40 | 
            -
                    yield response
         | 
| 41 | 
            -
             | 
| 42 | 
            -
            """
         | 
| 43 | 
            -
            For information on how to customize the ChatInterface, peruse the gradio docs: https://www.gradio.app/docs/chatinterface
         | 
| 44 | 
            -
            """
         | 
| 45 | 
            -
            demo = gr.ChatInterface(
         | 
| 46 | 
            -
                respond,
         | 
| 47 | 
            -
                additional_inputs=[
         | 
| 48 | 
            -
                    gr.Textbox(value="You are a friendly Chatbot.", label="System message"),
         | 
| 49 | 
            -
                    gr.Slider(minimum=1, maximum=2048, value=512, step=1, label="Max new tokens"),
         | 
| 50 | 
            -
                    gr.Slider(minimum=0.1, maximum=4.0, value=0.7, step=0.1, label="Temperature"),
         | 
| 51 | 
            -
                    gr.Slider(
         | 
| 52 | 
            -
                        minimum=0.1,
         | 
| 53 | 
            -
                        maximum=1.0,
         | 
| 54 | 
            -
                        value=0.95,
         | 
| 55 | 
            -
                        step=0.05,
         | 
| 56 | 
            -
                        label="Top-p (nucleus sampling)",
         | 
| 57 | 
            -
                    ),
         | 
| 58 | 
            -
                ],
         | 
| 59 | 
            -
            )
         | 
| 60 | 
            -
             | 
| 61 | 
            -
             | 
| 62 | 
            -
            if __name__ == "__main__":
         | 
| 63 | 
            -
                demo.launch()
         | 
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | 
    	
        app_update_title.py
    DELETED
    
    | @@ -1,104 +0,0 @@ | |
| 1 | 
            -
            import gradio as gr
         | 
| 2 | 
            -
            from huggingface_hub import InferenceClient
         | 
| 3 | 
            -
             | 
| 4 | 
            -
            # Inference client setup
         | 
| 5 | 
            -
            client = InferenceClient("HuggingFaceH4/zephyr-7b-beta")
         | 
| 6 | 
            -
             | 
| 7 | 
            -
            def respond(
         | 
| 8 | 
            -
                message,
         | 
| 9 | 
            -
                history: list[tuple[str, str]],
         | 
| 10 | 
            -
                system_message,
         | 
| 11 | 
            -
                max_tokens,
         | 
| 12 | 
            -
                temperature,
         | 
| 13 | 
            -
                top_p,
         | 
| 14 | 
            -
            ):
         | 
| 15 | 
            -
                messages = [{"role": "system", "content": system_message}]
         | 
| 16 | 
            -
                
         | 
| 17 | 
            -
                for val in history:
         | 
| 18 | 
            -
                    if val[0]:
         | 
| 19 | 
            -
                        messages.append({"role": "user", "content": val[0]})
         | 
| 20 | 
            -
                    if val[1]:
         | 
| 21 | 
            -
                        messages.append({"role": "assistant", "content": val[1]})
         | 
| 22 | 
            -
                
         | 
| 23 | 
            -
                messages.append({"role": "user", "content": message})
         | 
| 24 | 
            -
                
         | 
| 25 | 
            -
                response = ""
         | 
| 26 | 
            -
                for message in client.chat_completion(
         | 
| 27 | 
            -
                    messages,
         | 
| 28 | 
            -
                    max_tokens=max_tokens,
         | 
| 29 | 
            -
                    stream=True,
         | 
| 30 | 
            -
                    temperature=temperature,
         | 
| 31 | 
            -
                    top_p=top_p,
         | 
| 32 | 
            -
                ):
         | 
| 33 | 
            -
                    token = message.choices[0].delta.content
         | 
| 34 | 
            -
                    response += token
         | 
| 35 | 
            -
                    yield response
         | 
| 36 | 
            -
             | 
| 37 | 
            -
            # Custom CSS for a fancy look
         | 
| 38 | 
            -
            custom_css = """
         | 
| 39 | 
            -
            #main-container {
         | 
| 40 | 
            -
                background-color: #f0f0f0;
         | 
| 41 | 
            -
                font-family: 'Arial', sans-serif;
         | 
| 42 | 
            -
            }
         | 
| 43 | 
            -
             | 
| 44 | 
            -
            .gradio-container {
         | 
| 45 | 
            -
                max-width: 700px;
         | 
| 46 | 
            -
                margin: 0 auto;
         | 
| 47 | 
            -
                padding: 20px;
         | 
| 48 | 
            -
                background: white;
         | 
| 49 | 
            -
                box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
         | 
| 50 | 
            -
                border-radius: 10px;
         | 
| 51 | 
            -
            }
         | 
| 52 | 
            -
             | 
| 53 | 
            -
            .gr-button {
         | 
| 54 | 
            -
                background-color: #4CAF50;
         | 
| 55 | 
            -
                color: white;
         | 
| 56 | 
            -
                border: none;
         | 
| 57 | 
            -
                border-radius: 5px;
         | 
| 58 | 
            -
                padding: 10px 20px;
         | 
| 59 | 
            -
                cursor: pointer;
         | 
| 60 | 
            -
                transition: background-color 0.3s ease;
         | 
| 61 | 
            -
            }
         | 
| 62 | 
            -
             | 
| 63 | 
            -
            .gr-button:hover {
         | 
| 64 | 
            -
                background-color: #45a049;
         | 
| 65 | 
            -
            }
         | 
| 66 | 
            -
             | 
| 67 | 
            -
            .gr-slider input {
         | 
| 68 | 
            -
                color: #4CAF50;
         | 
| 69 | 
            -
            }
         | 
| 70 | 
            -
             | 
| 71 | 
            -
            .gr-chat {
         | 
| 72 | 
            -
                font-size: 16px;
         | 
| 73 | 
            -
            }
         | 
| 74 | 
            -
             | 
| 75 | 
            -
            #title {
         | 
| 76 | 
            -
                text-align: center;
         | 
| 77 | 
            -
                font-size: 2em;
         | 
| 78 | 
            -
                margin-bottom: 20px;
         | 
| 79 | 
            -
                color: #333;
         | 
| 80 | 
            -
            }
         | 
| 81 | 
            -
            """
         | 
| 82 | 
            -
             | 
| 83 | 
            -
            # Define the interface
         | 
| 84 | 
            -
            demo = gr.ChatInterface(
         | 
| 85 | 
            -
                respond,
         | 
| 86 | 
            -
                additional_inputs=[
         | 
| 87 | 
            -
                    gr.Textbox(value="You are a friendly Chatbot.", label="System message", interactive=True),
         | 
| 88 | 
            -
                    gr.Slider(minimum=1, maximum=2048, value=512, step=1, label="Max new tokens"),
         | 
| 89 | 
            -
                    gr.Slider(minimum=0.1, maximum=4.0, value=0.7, step=0.1, label="Temperature"),
         | 
| 90 | 
            -
                    gr.Slider(
         | 
| 91 | 
            -
                        minimum=0.1,
         | 
| 92 | 
            -
                        maximum=1.0,
         | 
| 93 | 
            -
                        value=0.95,
         | 
| 94 | 
            -
                        step=0.05,
         | 
| 95 | 
            -
                        label="Top-p (nucleus sampling)",
         | 
| 96 | 
            -
                    ),
         | 
| 97 | 
            -
                ],
         | 
| 98 | 
            -
                css=custom_css,
         | 
| 99 | 
            -
                title="🌟 Fancy AI Chatbot 🌟",
         | 
| 100 | 
            -
                description="Interact with the AI chatbot using customizable settings below."
         | 
| 101 | 
            -
            )
         | 
| 102 | 
            -
             | 
| 103 | 
            -
            if __name__ == "__main__":
         | 
| 104 | 
            -
                demo.launch()
         | 
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  |