simonraj commited on
Commit
ef1d0d3
·
verified ·
1 Parent(s): 5c005e7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +5 -10
app.py CHANGED
@@ -16,7 +16,7 @@ def transcribe(audio):
16
 
17
  client = InferenceClient("mistralai/Mixtral-8x7B-Instruct-v0.1")
18
 
19
- system_instructions = "[SYSTEM] You are CrucialCoach, an AI-powered conversational coach based on the principles from the book 'Crucial Conversations'. Your role is to guide the user through a challenging workplace situation that requires effective communication skills. The user will present a case study, and your task is to provide step-by-step guidance on how to approach the conversation, focusing on the key principles of crucial conversations.\n\nCase Study: The user is an employee who needs to address a performance issue with a team member. The team member consistently misses deadlines, which affects the overall project timeline. The user wants to have a conversation with the team member to address the issue and find a solution.\n\nYour coaching should cover the following steps:\n1. Preparing for the conversation: Help the user identify the desired outcome, gather facts, and plan the conversation.\n2. Starting the conversation: Guide the user on how to begin the conversation in a non-confrontational manner, focusing on shared goals and mutual respect.\n3. Exploring the issue: Encourage the user to ask open-ended questions, listen actively, and seek to understand the team member's perspective.\n4. Finding a solution: Help the user brainstorm potential solutions and guide them on how to collaboratively agree on a course of action.\n5. Following up: Advise the user on how to follow up after the conversation to ensure commitment and monitor progress.\n\nThroughout the coaching, emphasize the importance of maintaining a safe environment, managing emotions, and focusing on facts and shared goals. Provide specific examples and phrases the user can employ during the conversation.\n\n[USER]"
20
 
21
  @spaces.GPU(duration=120)
22
  def model(text):
@@ -28,7 +28,6 @@ def model(text):
28
  do_sample=True,
29
  seed=42,
30
  )
31
-
32
  formatted_prompt = system_instructions + text + "[CrucialCoach]"
33
  stream = client.text_generation(
34
  formatted_prompt, **generate_kwargs, stream=True, details=True, return_full_text=False)
@@ -36,7 +35,6 @@ def model(text):
36
  for response in stream:
37
  if not response.token.text == "</s>":
38
  output += response.token.text
39
-
40
  return output
41
 
42
  async def respond(audio):
@@ -48,7 +46,10 @@ async def respond(audio):
48
  await communicate.save(tmp_path)
49
  return tmp_path
50
 
51
- with gr.Blocks() as voice:
 
 
 
52
  with gr.Row():
53
  input = gr.Audio(label="Voice Chat", sources="microphone", type="filepath", waveform_options=False)
54
  output = gr.Audio(label="CrucialCoach", type="filepath", interactive=False, autoplay=True)
@@ -61,11 +62,5 @@ with gr.Blocks() as voice:
61
  title="Voice Chat"
62
  )
63
 
64
- theme = gr.themes.Base()
65
-
66
- with gr.Blocks(theme=theme, css="footer {visibility: hidden}textbox{resize:none}", title="CrucialCoach DEMO") as demo:
67
- gr.Markdown("# CrucialCoach")
68
- voice.render()
69
-
70
  demo.queue(max_size=200)
71
  demo.launch()
 
16
 
17
  client = InferenceClient("mistralai/Mixtral-8x7B-Instruct-v0.1")
18
 
19
+ system_instructions = "[SYSTEM] You are CrucialCoach, an AI-powered conversational coach. Guide the user through challenging workplace situations using the principles from 'Crucial Conversations'. Ask one question at a time and provide step-by-step guidance.\n\n[USER]"
20
 
21
  @spaces.GPU(duration=120)
22
  def model(text):
 
28
  do_sample=True,
29
  seed=42,
30
  )
 
31
  formatted_prompt = system_instructions + text + "[CrucialCoach]"
32
  stream = client.text_generation(
33
  formatted_prompt, **generate_kwargs, stream=True, details=True, return_full_text=False)
 
35
  for response in stream:
36
  if not response.token.text == "</s>":
37
  output += response.token.text
 
38
  return output
39
 
40
  async def respond(audio):
 
46
  await communicate.save(tmp_path)
47
  return tmp_path
48
 
49
+ theme = gr.themes.Base()
50
+
51
+ with gr.Blocks(theme=theme, css="footer {visibility: hidden}textbox{resize:none}", title="CrucialCoach DEMO") as demo:
52
+ gr.Markdown("# CrucialCoach")
53
  with gr.Row():
54
  input = gr.Audio(label="Voice Chat", sources="microphone", type="filepath", waveform_options=False)
55
  output = gr.Audio(label="CrucialCoach", type="filepath", interactive=False, autoplay=True)
 
62
  title="Voice Chat"
63
  )
64
 
 
 
 
 
 
 
65
  demo.queue(max_size=200)
66
  demo.launch()