segestic commited on
Commit
2ea7645
·
verified ·
1 Parent(s): f0be88b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -8
app.py CHANGED
@@ -8,7 +8,7 @@ model_file_path = hf_hub_download(
8
  filename="llama-2-7b.Q4_0.gguf"
9
  )
10
 
11
- # Try to load the model from the downloaded file
12
  try:
13
  llm_llama_cpp = Llama(
14
  model_path=model_file_path, # Path where the model is downloaded
@@ -16,26 +16,28 @@ try:
16
  n_ctx=4096 # Set context window to match model's full capacity
17
  )
18
 
19
- # Function that generates a response using the Llama model
20
  def talk(prompt, history):
21
  try:
22
- # Generate text with streaming
23
  response_stream = llm_llama_cpp.create_completion(
24
  prompt,
25
  max_tokens=200, # You can adjust the max tokens as needed
26
  stream=True
27
  )
28
 
 
29
  response = ""
30
  for chunk in response_stream:
31
- # Extract the text from the current chunk
32
  if 'choices' in chunk and len(chunk['choices']) > 0 and 'text' in chunk['choices'][0]:
33
  response += chunk['choices'][0]['text']
 
34
 
35
- # Return the full response after streaming is done
36
  return response
37
 
38
  except Exception as e:
 
39
  return f"Error with llama-cpp-python: {e}"
40
 
41
  except FileNotFoundError:
@@ -47,7 +49,7 @@ except Exception as e:
47
  TITLE = "AI Copilot for Diabetes Patients"
48
  DESCRIPTION = "I provide answers to concerns related to Diabetes"
49
 
50
- # Design chatbot interface (fixed `likeable` argument)
51
  demo = gr.ChatInterface(
52
  fn=talk, # The function that processes user input and returns the response
53
  chatbot=gr.Chatbot(
@@ -55,7 +57,7 @@ demo = gr.ChatInterface(
55
  show_share_button=True,
56
  show_copy_button=True,
57
  layout="bubble", # Display messages in bubble format
58
- bubble_full_width=False,
59
  ),
60
  theme="Soft", # Soft theme for the UI
61
  examples=[["what is Diabetes?"]], # Example query to get started
@@ -64,4 +66,4 @@ demo = gr.ChatInterface(
64
  )
65
 
66
  # Launch the chatbot interface
67
- demo.launch()
 
8
  filename="llama-2-7b.Q4_0.gguf"
9
  )
10
 
11
+ # Initialize the Llama model
12
  try:
13
  llm_llama_cpp = Llama(
14
  model_path=model_file_path, # Path where the model is downloaded
 
16
  n_ctx=4096 # Set context window to match model's full capacity
17
  )
18
 
19
+ # Define the function for generating text with streaming
20
  def talk(prompt, history):
21
  try:
 
22
  response_stream = llm_llama_cpp.create_completion(
23
  prompt,
24
  max_tokens=200, # You can adjust the max tokens as needed
25
  stream=True
26
  )
27
 
28
+ # Prepare a response variable to store the final result
29
  response = ""
30
  for chunk in response_stream:
31
+ # Extract and accumulate the text from each chunk
32
  if 'choices' in chunk and len(chunk['choices']) > 0 and 'text' in chunk['choices'][0]:
33
  response += chunk['choices'][0]['text']
34
+ print(f"Streaming: {chunk['choices'][0]['text']}", end="", flush=True)
35
 
36
+ # After the stream is complete, return the final response
37
  return response
38
 
39
  except Exception as e:
40
+ print(f"Error in generating response: {e}")
41
  return f"Error with llama-cpp-python: {e}"
42
 
43
  except FileNotFoundError:
 
49
  TITLE = "AI Copilot for Diabetes Patients"
50
  DESCRIPTION = "I provide answers to concerns related to Diabetes"
51
 
52
+ # Design chatbot interface (fixed `likeable` argument, deprecated params removed)
53
  demo = gr.ChatInterface(
54
  fn=talk, # The function that processes user input and returns the response
55
  chatbot=gr.Chatbot(
 
57
  show_share_button=True,
58
  show_copy_button=True,
59
  layout="bubble", # Display messages in bubble format
60
+ type="messages", # Use OpenAI-style message format
61
  ),
62
  theme="Soft", # Soft theme for the UI
63
  examples=[["what is Diabetes?"]], # Example query to get started
 
66
  )
67
 
68
  # Launch the chatbot interface
69
+ demo.launch()