1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
| from autogen import AssistantAgent, UserProxyAgent, GroupChat, GroupChatManager
config_list = [{"model": "gpt-4o", "api_key": "your-key"}]
# 研究員
researcher = AssistantAgent(
name="Vulnerability_Researcher",
system_message="""You are a vulnerability researcher.
Search and analyze security vulnerabilities.
Provide CVE details and technical analysis.""",
llm_config={"config_list": config_list}
)
# 分析師
analyst = AssistantAgent(
name="Risk_Analyst",
system_message="""You are a risk analyst.
Assess the impact and exploitability of vulnerabilities.
Provide risk scores and prioritization.""",
llm_config={"config_list": config_list}
)
# 修復建議
remediation = AssistantAgent(
name="Remediation_Advisor",
system_message="""You are a remediation advisor.
Provide patches, workarounds, and mitigation strategies.""",
llm_config={"config_list": config_list}
)
# 執行者
executor = UserProxyAgent(
name="Executor",
human_input_mode="NEVER",
code_execution_config={"work_dir": "security_analysis"}
)
# 群組對話
groupchat = GroupChat(
agents=[executor, researcher, analyst, remediation],
messages=[],
max_round=15
)
manager = GroupChatManager(
groupchat=groupchat,
llm_config={"config_list": config_list}
)
# 開始分析
executor.initiate_chat(
manager,
message="""Analyze CVE-2026-12345:
1. Research the vulnerability details
2. Assess the risk level
3. Provide remediation recommendations
"""
)
|