refactor: @cause_by.setter

This commit is contained in:
莘权 马 2023-11-04 16:46:32 +08:00
parent 1febf168e7
commit d9775037b6
21 changed files with 73 additions and 123 deletions

View file

@ -66,7 +66,7 @@ class Trump(Role):
async def _act(self) -> Message:
logger.info(f"{self._setting}: ready to {self._rc.todo}")
msg_history = self._rc.memory.get_by_actions([ShoutOut.get_class_name()])
msg_history = self._rc.memory.get_by_actions([ShoutOut])
context = []
for m in msg_history:
context.append(str(m))
@ -77,7 +77,7 @@ class Trump(Role):
msg = Message(
content=rsp,
role=self.profile,
cause_by=ShoutOut.get_class_name(),
cause_by=ShoutOut,
tx_from=self.name,
tx_to=self.opponent_name,
)
@ -102,14 +102,14 @@ class Biden(Role):
await super()._observe()
# accept the very first human instruction (the debate topic) or messages sent (from opponent) to self,
# disregard own messages from the last round
message_filter = {BossRequirement.get_class_name(), self.name}
message_filter = {BossRequirement, self.name}
self._rc.news = [msg for msg in self._rc.news if msg.is_recipient(message_filter)]
return len(self._rc.news)
async def _act(self) -> Message:
logger.info(f"{self._setting}: ready to {self._rc.todo}")
msg_history = self._rc.memory.get_by_actions([BossRequirement.get_class_name(), ShoutOut.get_class_name()])
msg_history = self._rc.memory.get_by_actions([BossRequirement, ShoutOut])
context = []
for m in msg_history:
context.append(str(m))
@ -120,7 +120,7 @@ class Biden(Role):
msg = Message(
content=rsp,
role=self.profile,
cause_by=ShoutOut.get_class_name(),
cause_by=ShoutOut,
tx_from=self.name,
tx_to=self.opponent_name,
)

View file

@ -41,7 +41,7 @@ async def basic_planner_example():
role.import_semantic_skill_from_directory(SKILL_DIRECTORY, "WriterSkill")
role.import_skill(TextSkill(), "TextSkill")
# using BasicPlanner
await role.run(Message(content=task, cause_by=BossRequirement.get_class_name()))
await role.run(Message(content=task, cause_by=BossRequirement))
async def sequential_planner_example():
@ -55,7 +55,7 @@ async def sequential_planner_example():
role.import_semantic_skill_from_directory(SKILL_DIRECTORY, "WriterSkill")
role.import_skill(TextSkill(), "TextSkill")
# using BasicPlanner
await role.run(Message(content=task, cause_by=BossRequirement.get_class_name()))
await role.run(Message(content=task, cause_by=BossRequirement))
async def basic_planner_web_search_example():
@ -66,7 +66,7 @@ async def basic_planner_web_search_example():
role.import_skill(SkSearchEngine(), "WebSearchSkill")
# role.import_semantic_skill_from_directory(skills_directory, "QASkill")
await role.run(Message(content=task, cause_by=BossRequirement.get_class_name()))
await role.run(Message(content=task, cause_by=BossRequirement))
async def action_planner_example():
@ -77,7 +77,7 @@ async def action_planner_example():
role.import_skill(TimeSkill(), "time")
role.import_skill(TextSkill(), "text")
task = "What is the sum of 110 and 990?"
await role.run(Message(content=task, cause_by=BossRequirement.get_class_name())) # it will choose mathskill.Add
await role.run(Message(content=task, cause_by=BossRequirement)) # it will choose mathskill.Add
if __name__ == "__main__":