decodingdatascience commited on
Commit
c0f69bd
·
verified ·
1 Parent(s): f01883f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +32 -19
app.py CHANGED
@@ -2,7 +2,7 @@ import os
2
  import requests
3
  import gradio as gr
4
 
5
- # Get Groq API key from environment variable
6
  groq_api_key = os.environ.get("GROQ_API_KEY")
7
  if not groq_api_key:
8
  raise ValueError("Please set the GROQ_API_KEY in the Hugging Face Space secrets.")
@@ -23,30 +23,43 @@ Customer Query: {query}
23
  Your Response:
24
  """
25
 
26
- # Function to call Groq API
27
  def generate_response(user_query):
28
  structured_prompt = template.format(query=user_query)
29
  body = {
30
  "model": "llama-3.1-8b-instant",
31
- "messages": [
32
- {
33
- "role": "user",
34
- "content": structured_prompt
35
- }
36
- ]
37
  }
38
 
39
  response = requests.post(url, headers=headers, json=body)
40
  if response.status_code == 200:
41
- return response.json()['choices'][0]['message']['content']
42
  else:
43
- return f"Error {response.status_code}: {response.text}"
44
-
45
- # Gradio interface
46
- gr.Interface(
47
- fn=generate_response,
48
- inputs=gr.Textbox(lines=4, placeholder="Describe your telecom issue..."),
49
- outputs=gr.Textbox(label="Groq API Response"),
50
- title="Zain Customer Care Support Assistant",
51
- description="Ask your question and get a helpful reply from our AI-powered support assistant."
52
- ).launch()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  import requests
3
  import gradio as gr
4
 
5
+ # Get Groq API key from Hugging Face secrets
6
  groq_api_key = os.environ.get("GROQ_API_KEY")
7
  if not groq_api_key:
8
  raise ValueError("Please set the GROQ_API_KEY in the Hugging Face Space secrets.")
 
23
  Your Response:
24
  """
25
 
26
+ # Core function to query the API
27
  def generate_response(user_query):
28
  structured_prompt = template.format(query=user_query)
29
  body = {
30
  "model": "llama-3.1-8b-instant",
31
+ "messages": [{"role": "user", "content": structured_prompt}]
 
 
 
 
 
32
  }
33
 
34
  response = requests.post(url, headers=headers, json=body)
35
  if response.status_code == 200:
36
+ return response.json()['choices'][0]['message']['content'], "✅ Success"
37
  else:
38
+ return f"Error {response.status_code}: {response.text}", "❌ Failed"
39
+
40
+ # Gradio app using Blocks layout
41
+ with gr.Blocks() as demo:
42
+ gr.Markdown("## 📡 Telecom Support Assistant powered by Groq API")
43
+ gr.Markdown(
44
+ "Enter your customer service query below. The AI assistant will respond with a helpful and empathetic reply, especially for **roaming issues**."
45
+ )
46
+
47
+ with gr.Row():
48
+ with gr.Column(scale=2):
49
+ user_input = gr.Textbox(
50
+ lines=5,
51
+ label="Customer Query",
52
+ placeholder="e.g., My SIM card stopped working while traveling abroad."
53
+ )
54
+ submit_btn = gr.Button("Generate Response")
55
+ with gr.Column(scale=3):
56
+ status_output = gr.Textbox(label="Status", interactive=False)
57
+ response_output = gr.Textbox(label="AI Response", lines=10)
58
+
59
+ submit_btn.click(
60
+ fn=generate_response,
61
+ inputs=user_input,
62
+ outputs=[response_output, status_output]
63
+ )
64
+
65
+ demo.launch()