aquibmoin commited on
Commit
b6f83d2
·
verified ·
1 Parent(s): 9f7bb01

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +56 -0
app.py ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import requests
3
+
4
+ # Hugging Face API details
5
+ API_URL = "https://api-inference.huggingface.co/models/nasa-impact/nasa-smd-ibm-v0.1"
6
+ headers = {"Authorization": "Bearer HF_TOKEN"}
7
+
8
+ def query_huggingface(payload):
9
+ response = requests.post(API_URL, headers=headers, json=payload)
10
+ return response.json()
11
+
12
+ # Function to generate response
13
+ def generate_response(user_message, system_message="You are a helpful assistant.", history=[]):
14
+ messages = [{"role": "system", "content": system_message}]
15
+
16
+ for user, assistant in history:
17
+ if user:
18
+ messages.append({"role": "user", "content": user})
19
+ if assistant:
20
+ messages.append({"role": "assistant", "content": assistant})
21
+
22
+ messages.append({"role": "user", "content": user_message})
23
+
24
+ payload = {
25
+ "inputs": messages,
26
+ "parameters": {
27
+ "max_tokens": 50,
28
+ "temperature": 0.7,
29
+ "top_p": 0.9,
30
+ "stream": False
31
+ }
32
+ }
33
+
34
+ response = query_huggingface(payload)
35
+ output = response.get('generated_text', 'No response')
36
+
37
+ return output
38
+
39
+ # Gradio interface
40
+ def gradio_interface(user_message, system_message, history):
41
+ response = generate_response(user_message, system_message, history)
42
+ history.append((user_message, response))
43
+ return history, history
44
+
45
+ # Define Gradio blocks
46
+ with gr.Blocks() as demo:
47
+ system_message = gr.Textbox(label="System Message", value="You are a helpful assistant.")
48
+ user_message = gr.Textbox(label="Your Message")
49
+ chatbot = gr.Chatbot(label="Chat History")
50
+ state = gr.State([])
51
+ submit_button = gr.Button("Submit")
52
+
53
+ submit_button.click(gradio_interface, inputs=[user_message, system_message, state], outputs=[chatbot, state])
54
+
55
+ # Launch the interface
56
+ demo.launch()