NeuSpaarX commited on
Commit
9ae2e42
·
verified ·
1 Parent(s): e6e0a19

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +19 -31
main.py CHANGED
@@ -123,46 +123,34 @@ User query: {query}
123
  try:
124
  context_chunks = self.retrieve_relevant_chunks(query)
125
  prompt = self.format_prompt(query, context_chunks)
126
- input_ids = self.tokenizer.encode(prompt, return_tensors="pt").to(self.device)
127
 
128
- max_length = input_ids.shape[1] + 512
129
- generated_text = ""
130
-
131
  with torch.no_grad():
132
- generated = input_ids
133
-
134
- while generated.shape[1] < max_length:
135
- outputs = self.model.forward(
136
- input_ids=generated,
137
- max_new_tokens=64,
138
- do_sample=True,
139
- temperature=0.7,
140
- top_p=0.8,
141
- repetition_penalty=1.05,
142
- pad_token_id=self.tokenizer.pad_token_id,
143
- eos_token_id=self.tokenizer.eos_token_id,
144
- )
145
-
146
- next_token = torch.argmax(outputs.logits[:, -1, :], dim=-1).unsqueeze(0)
147
-
148
- if next_token[0, 0].item() == self.tokenizer.eos_token_id:
149
- break
150
-
151
- generated = torch.cat([generated, next_token.T], dim=1)
152
- new_text = self.tokenizer.decode(next_token[0], skip_special_tokens=True)
153
-
154
- if new_text:
155
- generated_text += new_text
156
-
157
  return {
158
  "Response_text": generated_text,
159
  "context_items": context_chunks
160
  }
161
-
162
  except Exception as e:
163
  print(f"Error generating response: {str(e)}")
164
  return {
165
- "Response_text": "I apologize, but I encountered an error while processing your query. Please try again.",
166
  "context_items": []
167
  }
168
 
 
123
  try:
124
  context_chunks = self.retrieve_relevant_chunks(query)
125
  prompt = self.format_prompt(query, context_chunks)
 
126
 
127
+ input_ids = self.tokenizer.encode(prompt, return_tensors="pt").to(self.device)
128
+
 
129
  with torch.no_grad():
130
+ outputs = self.model.generate( # Fixed: was model.forward()
131
+ input_ids=input_ids,
132
+ max_new_tokens=512,
133
+ do_sample=True,
134
+ temperature=0.7,
135
+ top_p=0.8,
136
+ repetition_penalty=1.05,
137
+ pad_token_id=self.tokenizer.pad_token_id,
138
+ eos_token_id=self.tokenizer.eos_token_id,
139
+ )
140
+
141
+ # Decode only the newly generated tokens (strip the prompt)
142
+ new_tokens = outputs[0][input_ids.shape[1]:]
143
+ generated_text = self.tokenizer.decode(new_tokens, skip_special_tokens=True)
144
+
 
 
 
 
 
 
 
 
 
 
145
  return {
146
  "Response_text": generated_text,
147
  "context_items": context_chunks
148
  }
149
+
150
  except Exception as e:
151
  print(f"Error generating response: {str(e)}")
152
  return {
153
+ "Response_text": "I apologize, but I encountered an error. Please try again.",
154
  "context_items": []
155
  }
156