Skip to main content

research_town.agents package

Submodules

research_town.agents.agent module

class research_town.agents.agent.Agent(profile: Profile, model_name: str, role: Literal['reviewer', 'leader', 'member', 'chair'] | None = None)

Bases: object

assign_role(role: Literal['reviewer', 'leader', 'member', 'chair'] | None) → None

brainstorm_idea(insights: list[Insight], config: Config) → Idea

summarize_idea(ideas: list[Idea], config: Config) → Idea

review_literature(papers: list[Paper], domains: list[str], contexts: list[str], config: Config) → list[Insight]

write_metareview(proposal: Proposal, reviews: list[Review], rebuttals: list[Rebuttal], config: Config) → MetaReview

write_proposal(idea: Idea, papers: list[Paper], config: Config) → Proposal

write_rebuttal(proposal: Proposal, review: Review, config: Config) → Rebuttal

write_review(proposal: Proposal, config: Config) → Review

research_town.agents.agent_manager module

class research_town.agents.agent_manager.AgentManager(config: Config, profile_db: ProfileDB)

Bases: object

create_chair(chair_profile: Profile) → Agent

create_leader(leader_profile: Profile) → Agent

create_member(member_profile: Profile) → Agent

create_reviewer(reviewer_profile: Profile) → Agent

find_chair(proposal: Proposal) → Agent

find_leader(task: str) → Agent

find_members(profile: Profile) → List[Agent]

find_reviewers(proposal: Proposal) → List[Agent]

Module contents

class research_town.agents.Agent(profile: Profile, model_name: str, role: Literal['reviewer', 'leader', 'member', 'chair'] | None = None)

Bases: object

assign_role(role: Literal['reviewer', 'leader', 'member', 'chair'] | None) → None

brainstorm_idea(insights: list[Insight], config: Config) → Idea

summarize_idea(ideas: list[Idea], config: Config) → Idea

review_literature(papers: list[Paper], domains: list[str], contexts: list[str], config: Config) → list[Insight]

write_metareview(proposal: Proposal, reviews: list[Review], rebuttals: list[Rebuttal], config: Config) → MetaReview

write_proposal(idea: Idea, papers: list[Paper], config: Config) → Proposal

write_rebuttal(proposal: Proposal, review: Review, config: Config) → Rebuttal

write_review(proposal: Proposal, config: Config) → Review

class research_town.agents.AgentManager(config: Config, profile_db: ProfileDB)

Bases: object

create_chair(chair_profile: Profile) → Agent

create_leader(leader_profile: Profile) → Agent

create_member(member_profile: Profile) → Agent

create_reviewer(reviewer_profile: Profile) → Agent

find_chair(proposal: Proposal) → Agent

find_leader(task: str) → Agent

find_members(profile: Profile) → List[Agent]

find_reviewers(proposal: Proposal) → List[Agent]