aymnsk commited on
Commit
fba6f4d
·
verified ·
1 Parent(s): 3ab9860

Update agents/programmer.py

Browse files
Files changed (1) hide show
  1. agents/programmer.py +22 -16
agents/programmer.py CHANGED
@@ -1,4 +1,3 @@
1
- # app/agents/programmer.py
2
  from transformers import AutoTokenizer, AutoModelForCausalLM
3
  from agents.base_agent import BaseAgent, ACPMessage
4
 
@@ -6,25 +5,32 @@ class ProgrammerAgent(BaseAgent):
6
  def __init__(self):
7
  super().__init__(name="Aymaan", role="Helpful Coder 🤖")
8
  self.model_id = "microsoft/phi-1_5"
 
9
  self.tokenizer = AutoTokenizer.from_pretrained(self.model_id)
10
  self.model = AutoModelForCausalLM.from_pretrained(self.model_id)
11
 
12
  def receive_message(self, message: ACPMessage) -> ACPMessage:
13
- prompt_lower = message.content.lower().strip()
14
-
15
- # Short greeting handling
16
- greetings = {
17
- "hi": "Hey there! 😊",
18
- "hello": "Hello! 👋",
19
- "how are you?": "I'm doing great! How about you?",
20
- "hey": "Hey! Need any help?"
21
- }
22
- if prompt_lower in greetings:
23
- return ACPMessage(sender=self.name, receiver=message.sender, performative="inform", content=greetings[prompt_lower])
24
 
25
- # Normal flow
26
  prompt = f"{message.content}"
27
- inputs = self.tokenizer(prompt, return_tensors="pt")
28
- outputs = self.model.generate(**inputs, max_new_tokens=100, do_sample=True, temperature=0.7)
 
 
 
 
 
29
  reply = self.tokenizer.decode(outputs[0], skip_special_tokens=True)
30
- return ACPMessage(sender=self.name, receiver=message.sender, performative="inform", content=reply.strip())
 
 
 
 
 
 
 
1
  from transformers import AutoTokenizer, AutoModelForCausalLM
2
  from agents.base_agent import BaseAgent, ACPMessage
3
 
 
5
  def __init__(self):
6
  super().__init__(name="Aymaan", role="Helpful Coder 🤖")
7
  self.model_id = "microsoft/phi-1_5"
8
+
9
  self.tokenizer = AutoTokenizer.from_pretrained(self.model_id)
10
  self.model = AutoModelForCausalLM.from_pretrained(self.model_id)
11
 
12
  def receive_message(self, message: ACPMessage) -> ACPMessage:
13
+ # Greeting shortcut
14
+ if self.is_greeting(message.content):
15
+ return ACPMessage(
16
+ sender=self.name,
17
+ receiver=message.sender,
18
+ performative="inform",
19
+ content="Hey there! I'm Aymaan, your coding buddy. 😊"
20
+ )
 
 
 
21
 
 
22
  prompt = f"{message.content}"
23
+ inputs = self.tokenizer(prompt, return_tensors="pt").to(self.model.device)
24
+ outputs = self.model.generate(
25
+ **inputs,
26
+ max_new_tokens=100,
27
+ do_sample=True,
28
+ temperature=0.7
29
+ )
30
  reply = self.tokenizer.decode(outputs[0], skip_special_tokens=True)
31
+ return ACPMessage(
32
+ sender=self.name,
33
+ receiver=message.sender,
34
+ performative="inform",
35
+ content=reply.strip()
36
+ )