NanobotzAI commited on
Commit
aa7ea56
·
verified ·
1 Parent(s): 67d8896

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -23
app.py CHANGED
@@ -79,33 +79,26 @@ def generate_response(
79
 
80
  context = search_relevant_text(message) # Get relevant content from PDF
81
 
82
- # Start with the system message in the first user message
83
- messages = []
84
- first_msg = f"{system_message}\n\nContext: {context}\nQuestion: {message}"
85
- messages.append({"role": "user", "content": first_msg})
86
-
87
- # Add conversation history ensuring alternating pattern (user, assistant, user, assistant...)
88
  for user_msg, bot_msg in history:
89
- if user_msg.strip(): # Check if user message is not empty
90
  messages.append({"role": "user", "content": user_msg})
91
- if bot_msg.strip(): # Check if assistant message is not empty
92
  messages.append({"role": "assistant", "content": bot_msg})
93
 
94
- try:
95
- response = ""
96
- for chunk in client.chat_completion(
97
- messages,
98
- max_tokens=max_tokens,
99
- stream=True,
100
- temperature=temperature,
101
- top_p=top_p,
102
- ):
103
- token = chunk.choices[0].delta.content or ""
104
- response += token
105
- yield response
106
- except Exception as e:
107
- print(f"Error generating response: {str(e)}")
108
- yield "I apologize, but I encountered an error while generating the response. Please try again."
109
 
110
  @app.route('/')
111
  def index():
 
79
 
80
  context = search_relevant_text(message) # Get relevant content from PDF
81
 
82
+ messages = [{"role": "system", "content": system_message}]
 
 
 
 
 
83
  for user_msg, bot_msg in history:
84
+ if user_msg:
85
  messages.append({"role": "user", "content": user_msg})
86
+ if bot_msg:
87
  messages.append({"role": "assistant", "content": bot_msg})
88
 
89
+ messages.append({"role": "user", "content": f"Context: {context}\nQuestion: {message}"})
90
+
91
+ response = ""
92
+ for chunk in client.chat_completion(
93
+ messages,
94
+ max_tokens=max_tokens,
95
+ stream=True,
96
+ temperature=temperature,
97
+ top_p=top_p,
98
+ ):
99
+ token = chunk.choices[0].delta.content or ""
100
+ response += token
101
+ yield response
 
 
102
 
103
  @app.route('/')
104
  def index():