parent
5343590656
commit
76b9f5162e
@ -0,0 +1,163 @@
|
||||
"""
|
||||
Medical Panel Discussion Example
|
||||
|
||||
This example demonstrates a panel of medical specialists discussing treatment solutions
|
||||
for various diseases using InteractiveGroupChat with different speaker functions:
|
||||
- Round Robin: Doctors speak in a fixed order
|
||||
- Random: Doctors speak in random order
|
||||
- Priority: Senior doctors speak first
|
||||
- Custom: Disease-specific speaker function
|
||||
|
||||
The panel includes specialists from different medical fields who can collaborate
|
||||
on complex medical cases and treatment plans.
|
||||
"""
|
||||
|
||||
from swarms import Agent
|
||||
from swarms.structs.interactive_groupchat import (
|
||||
InteractiveGroupChat,
|
||||
)
|
||||
|
||||
|
||||
def create_medical_panel():
|
||||
"""Create a panel of medical specialists for discussion."""
|
||||
|
||||
# Cardiologist - Heart and cardiovascular system specialist
|
||||
cardiologist = Agent(
|
||||
agent_name="cardiologist",
|
||||
system_prompt="""You are Dr. Sarah Chen, a board-certified cardiologist with 15 years of experience.
|
||||
You specialize in cardiovascular diseases, heart failure, arrhythmias, and interventional cardiology.
|
||||
You have expertise in:
|
||||
- Coronary artery disease and heart attacks
|
||||
- Heart failure and cardiomyopathy
|
||||
- Arrhythmias and electrophysiology
|
||||
- Hypertension and lipid disorders
|
||||
- Cardiac imaging and diagnostic procedures
|
||||
|
||||
When discussing cases, provide evidence-based treatment recommendations,
|
||||
consider patient risk factors, and collaborate with other specialists for comprehensive care.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Oncologist - Cancer specialist
|
||||
oncologist = Agent(
|
||||
agent_name="oncologist",
|
||||
system_prompt="""You are Dr. Michael Rodriguez, a medical oncologist with 12 years of experience.
|
||||
You specialize in the diagnosis and treatment of various types of cancer.
|
||||
You have expertise in:
|
||||
- Solid tumors (lung, breast, colon, prostate, etc.)
|
||||
- Hematologic malignancies (leukemia, lymphoma, multiple myeloma)
|
||||
- Targeted therapy and immunotherapy
|
||||
- Clinical trials and novel treatments
|
||||
- Palliative care and symptom management
|
||||
|
||||
When discussing cases, consider the cancer type, stage, molecular profile,
|
||||
patient performance status, and available treatment options including clinical trials.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Neurologist - Nervous system specialist
|
||||
neurologist = Agent(
|
||||
agent_name="neurologist",
|
||||
system_prompt="""You are Dr. Emily Watson, a neurologist with 10 years of experience.
|
||||
You specialize in disorders of the nervous system, brain, and spinal cord.
|
||||
You have expertise in:
|
||||
- Stroke and cerebrovascular disease
|
||||
- Neurodegenerative disorders (Alzheimer's, Parkinson's, ALS)
|
||||
- Multiple sclerosis and demyelinating diseases
|
||||
- Epilepsy and seizure disorders
|
||||
- Headache and migraine disorders
|
||||
- Neuromuscular diseases
|
||||
|
||||
When discussing cases, consider neurological symptoms, imaging findings,
|
||||
and the impact of neurological conditions on overall patient care.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Endocrinologist - Hormone and metabolism specialist
|
||||
endocrinologist = Agent(
|
||||
agent_name="endocrinologist",
|
||||
system_prompt="""You are Dr. James Thompson, an endocrinologist with 8 years of experience.
|
||||
You specialize in disorders of the endocrine system and metabolism.
|
||||
You have expertise in:
|
||||
- Diabetes mellitus (Type 1, Type 2, gestational)
|
||||
- Thyroid disorders (hyperthyroidism, hypothyroidism, thyroid cancer)
|
||||
- Adrenal disorders and Cushing's syndrome
|
||||
- Pituitary disorders and growth hormone issues
|
||||
- Osteoporosis and calcium metabolism
|
||||
- Reproductive endocrinology
|
||||
|
||||
When discussing cases, consider metabolic factors, hormone levels,
|
||||
and how endocrine disorders may affect other organ systems.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Infectious Disease Specialist
|
||||
infectious_disease = Agent(
|
||||
agent_name="infectious_disease",
|
||||
system_prompt="""You are Dr. Lisa Park, an infectious disease specialist with 11 years of experience.
|
||||
You specialize in the diagnosis and treatment of infectious diseases.
|
||||
You have expertise in:
|
||||
- Bacterial, viral, fungal, and parasitic infections
|
||||
- Antibiotic resistance and antimicrobial stewardship
|
||||
- HIV/AIDS and opportunistic infections
|
||||
- Travel medicine and tropical diseases
|
||||
- Hospital-acquired infections
|
||||
- Emerging infectious diseases
|
||||
|
||||
When discussing cases, consider the infectious agent, antimicrobial susceptibility,
|
||||
host factors, and infection control measures.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
return [
|
||||
cardiologist,
|
||||
oncologist,
|
||||
neurologist,
|
||||
endocrinologist,
|
||||
infectious_disease,
|
||||
]
|
||||
|
||||
|
||||
def example_round_robin_panel():
|
||||
"""Example with round robin speaking order."""
|
||||
print("=== ROUND ROBIN MEDICAL PANEL ===\n")
|
||||
|
||||
agents = create_medical_panel()
|
||||
|
||||
group_chat = InteractiveGroupChat(
|
||||
name="Medical Panel Discussion",
|
||||
description="A collaborative panel of medical specialists discussing complex cases",
|
||||
agents=agents,
|
||||
speaker_function="round-robin-speaker",
|
||||
interactive=False,
|
||||
)
|
||||
|
||||
print(group_chat.speaker_function)
|
||||
|
||||
# Case 1: Complex patient with multiple conditions
|
||||
case1 = """CASE PRESENTATION:
|
||||
A 65-year-old male with Type 2 diabetes, hypertension, and recent diagnosis of
|
||||
stage 3 colon cancer presents with chest pain and shortness of breath.
|
||||
ECG shows ST-segment elevation. Recent blood work shows elevated blood glucose (280 mg/dL)
|
||||
and signs of infection (WBC 15,000, CRP elevated).
|
||||
|
||||
@cardiologist @oncologist @endocrinologist @infectious_disease please provide your
|
||||
assessment and treatment recommendations for this complex case."""
|
||||
|
||||
response = group_chat.run(case1)
|
||||
print(f"Response:\n{response}\n")
|
||||
print("=" * 80 + "\n")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
example_round_robin_panel()
|
@ -0,0 +1,162 @@
|
||||
"""
|
||||
Medical Panel Discussion Example
|
||||
|
||||
This example demonstrates a panel of medical specialists discussing treatment solutions
|
||||
for various diseases using InteractiveGroupChat with different speaker functions:
|
||||
- Round Robin: Doctors speak in a fixed order
|
||||
- Random: Doctors speak in random order
|
||||
- Priority: Senior doctors speak first
|
||||
- Custom: Disease-specific speaker function
|
||||
|
||||
The panel includes specialists from different medical fields who can collaborate
|
||||
on complex medical cases and treatment plans.
|
||||
"""
|
||||
|
||||
from swarms import Agent
|
||||
from swarms.structs.interactive_groupchat import (
|
||||
InteractiveGroupChat,
|
||||
round_robin_speaker,
|
||||
)
|
||||
|
||||
|
||||
def create_medical_panel():
|
||||
"""Create a panel of medical specialists for discussion."""
|
||||
|
||||
# Cardiologist - Heart and cardiovascular system specialist
|
||||
cardiologist = Agent(
|
||||
agent_name="cardiologist",
|
||||
system_prompt="""You are Dr. Sarah Chen, a board-certified cardiologist with 15 years of experience.
|
||||
You specialize in cardiovascular diseases, heart failure, arrhythmias, and interventional cardiology.
|
||||
You have expertise in:
|
||||
- Coronary artery disease and heart attacks
|
||||
- Heart failure and cardiomyopathy
|
||||
- Arrhythmias and electrophysiology
|
||||
- Hypertension and lipid disorders
|
||||
- Cardiac imaging and diagnostic procedures
|
||||
|
||||
When discussing cases, provide evidence-based treatment recommendations,
|
||||
consider patient risk factors, and collaborate with other specialists for comprehensive care.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Oncologist - Cancer specialist
|
||||
oncologist = Agent(
|
||||
agent_name="oncologist",
|
||||
system_prompt="""You are Dr. Michael Rodriguez, a medical oncologist with 12 years of experience.
|
||||
You specialize in the diagnosis and treatment of various types of cancer.
|
||||
You have expertise in:
|
||||
- Solid tumors (lung, breast, colon, prostate, etc.)
|
||||
- Hematologic malignancies (leukemia, lymphoma, multiple myeloma)
|
||||
- Targeted therapy and immunotherapy
|
||||
- Clinical trials and novel treatments
|
||||
- Palliative care and symptom management
|
||||
|
||||
When discussing cases, consider the cancer type, stage, molecular profile,
|
||||
patient performance status, and available treatment options including clinical trials.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Neurologist - Nervous system specialist
|
||||
neurologist = Agent(
|
||||
agent_name="neurologist",
|
||||
system_prompt="""You are Dr. Emily Watson, a neurologist with 10 years of experience.
|
||||
You specialize in disorders of the nervous system, brain, and spinal cord.
|
||||
You have expertise in:
|
||||
- Stroke and cerebrovascular disease
|
||||
- Neurodegenerative disorders (Alzheimer's, Parkinson's, ALS)
|
||||
- Multiple sclerosis and demyelinating diseases
|
||||
- Epilepsy and seizure disorders
|
||||
- Headache and migraine disorders
|
||||
- Neuromuscular diseases
|
||||
|
||||
When discussing cases, consider neurological symptoms, imaging findings,
|
||||
and the impact of neurological conditions on overall patient care.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Endocrinologist - Hormone and metabolism specialist
|
||||
endocrinologist = Agent(
|
||||
agent_name="endocrinologist",
|
||||
system_prompt="""You are Dr. James Thompson, an endocrinologist with 8 years of experience.
|
||||
You specialize in disorders of the endocrine system and metabolism.
|
||||
You have expertise in:
|
||||
- Diabetes mellitus (Type 1, Type 2, gestational)
|
||||
- Thyroid disorders (hyperthyroidism, hypothyroidism, thyroid cancer)
|
||||
- Adrenal disorders and Cushing's syndrome
|
||||
- Pituitary disorders and growth hormone issues
|
||||
- Osteoporosis and calcium metabolism
|
||||
- Reproductive endocrinology
|
||||
|
||||
When discussing cases, consider metabolic factors, hormone levels,
|
||||
and how endocrine disorders may affect other organ systems.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Infectious Disease Specialist
|
||||
infectious_disease = Agent(
|
||||
agent_name="infectious_disease",
|
||||
system_prompt="""You are Dr. Lisa Park, an infectious disease specialist with 11 years of experience.
|
||||
You specialize in the diagnosis and treatment of infectious diseases.
|
||||
You have expertise in:
|
||||
- Bacterial, viral, fungal, and parasitic infections
|
||||
- Antibiotic resistance and antimicrobial stewardship
|
||||
- HIV/AIDS and opportunistic infections
|
||||
- Travel medicine and tropical diseases
|
||||
- Hospital-acquired infections
|
||||
- Emerging infectious diseases
|
||||
|
||||
When discussing cases, consider the infectious agent, antimicrobial susceptibility,
|
||||
host factors, and infection control measures.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
return [
|
||||
cardiologist,
|
||||
oncologist,
|
||||
neurologist,
|
||||
endocrinologist,
|
||||
infectious_disease,
|
||||
]
|
||||
|
||||
|
||||
def example_round_robin_panel():
|
||||
"""Example with round robin speaking order."""
|
||||
print("=== ROUND ROBIN MEDICAL PANEL ===\n")
|
||||
|
||||
agents = create_medical_panel()
|
||||
|
||||
group_chat = InteractiveGroupChat(
|
||||
name="Medical Panel Discussion",
|
||||
description="A collaborative panel of medical specialists discussing complex cases",
|
||||
agents=agents,
|
||||
speaker_function=round_robin_speaker,
|
||||
interactive=False,
|
||||
)
|
||||
|
||||
# Case 1: Complex patient with multiple conditions
|
||||
case1 = """CASE PRESENTATION:
|
||||
A 65-year-old male with Type 2 diabetes, hypertension, and recent diagnosis of
|
||||
stage 3 colon cancer presents with chest pain and shortness of breath.
|
||||
ECG shows ST-segment elevation. Recent blood work shows elevated blood glucose (280 mg/dL)
|
||||
and signs of infection (WBC 15,000, CRP elevated).
|
||||
|
||||
@cardiologist @oncologist @endocrinologist @infectious_disease please provide your
|
||||
assessment and treatment recommendations for this complex case."""
|
||||
|
||||
response = group_chat.run(case1)
|
||||
print(f"Response:\n{response}\n")
|
||||
print("=" * 80 + "\n")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
example_round_robin_panel()
|
@ -0,0 +1,162 @@
|
||||
"""
|
||||
Medical Panel Discussion Example
|
||||
|
||||
This example demonstrates a panel of medical specialists discussing treatment solutions
|
||||
for various diseases using InteractiveGroupChat with different speaker functions:
|
||||
- Round Robin: Doctors speak in a fixed order
|
||||
- Random: Doctors speak in random order
|
||||
- Priority: Senior doctors speak first
|
||||
- Custom: Disease-specific speaker function
|
||||
|
||||
The panel includes specialists from different medical fields who can collaborate
|
||||
on complex medical cases and treatment plans.
|
||||
"""
|
||||
|
||||
from swarms import Agent
|
||||
from swarms.structs.interactive_groupchat import (
|
||||
InteractiveGroupChat,
|
||||
)
|
||||
|
||||
|
||||
def create_medical_panel():
|
||||
"""Create a panel of medical specialists for discussion."""
|
||||
|
||||
# Cardiologist - Heart and cardiovascular system specialist
|
||||
cardiologist = Agent(
|
||||
agent_name="cardiologist",
|
||||
system_prompt="""You are Dr. Sarah Chen, a board-certified cardiologist with 15 years of experience.
|
||||
You specialize in cardiovascular diseases, heart failure, arrhythmias, and interventional cardiology.
|
||||
You have expertise in:
|
||||
- Coronary artery disease and heart attacks
|
||||
- Heart failure and cardiomyopathy
|
||||
- Arrhythmias and electrophysiology
|
||||
- Hypertension and lipid disorders
|
||||
- Cardiac imaging and diagnostic procedures
|
||||
|
||||
When discussing cases, provide evidence-based treatment recommendations,
|
||||
consider patient risk factors, and collaborate with other specialists for comprehensive care.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Oncologist - Cancer specialist
|
||||
oncologist = Agent(
|
||||
agent_name="oncologist",
|
||||
system_prompt="""You are Dr. Michael Rodriguez, a medical oncologist with 12 years of experience.
|
||||
You specialize in the diagnosis and treatment of various types of cancer.
|
||||
You have expertise in:
|
||||
- Solid tumors (lung, breast, colon, prostate, etc.)
|
||||
- Hematologic malignancies (leukemia, lymphoma, multiple myeloma)
|
||||
- Targeted therapy and immunotherapy
|
||||
- Clinical trials and novel treatments
|
||||
- Palliative care and symptom management
|
||||
|
||||
When discussing cases, consider the cancer type, stage, molecular profile,
|
||||
patient performance status, and available treatment options including clinical trials.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Neurologist - Nervous system specialist
|
||||
neurologist = Agent(
|
||||
agent_name="neurologist",
|
||||
system_prompt="""You are Dr. Emily Watson, a neurologist with 10 years of experience.
|
||||
You specialize in disorders of the nervous system, brain, and spinal cord.
|
||||
You have expertise in:
|
||||
- Stroke and cerebrovascular disease
|
||||
- Neurodegenerative disorders (Alzheimer's, Parkinson's, ALS)
|
||||
- Multiple sclerosis and demyelinating diseases
|
||||
- Epilepsy and seizure disorders
|
||||
- Headache and migraine disorders
|
||||
- Neuromuscular diseases
|
||||
|
||||
When discussing cases, consider neurological symptoms, imaging findings,
|
||||
and the impact of neurological conditions on overall patient care.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Endocrinologist - Hormone and metabolism specialist
|
||||
endocrinologist = Agent(
|
||||
agent_name="endocrinologist",
|
||||
system_prompt="""You are Dr. James Thompson, an endocrinologist with 8 years of experience.
|
||||
You specialize in disorders of the endocrine system and metabolism.
|
||||
You have expertise in:
|
||||
- Diabetes mellitus (Type 1, Type 2, gestational)
|
||||
- Thyroid disorders (hyperthyroidism, hypothyroidism, thyroid cancer)
|
||||
- Adrenal disorders and Cushing's syndrome
|
||||
- Pituitary disorders and growth hormone issues
|
||||
- Osteoporosis and calcium metabolism
|
||||
- Reproductive endocrinology
|
||||
|
||||
When discussing cases, consider metabolic factors, hormone levels,
|
||||
and how endocrine disorders may affect other organ systems.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
# Infectious Disease Specialist
|
||||
infectious_disease = Agent(
|
||||
agent_name="infectious_disease",
|
||||
system_prompt="""You are Dr. Lisa Park, an infectious disease specialist with 11 years of experience.
|
||||
You specialize in the diagnosis and treatment of infectious diseases.
|
||||
You have expertise in:
|
||||
- Bacterial, viral, fungal, and parasitic infections
|
||||
- Antibiotic resistance and antimicrobial stewardship
|
||||
- HIV/AIDS and opportunistic infections
|
||||
- Travel medicine and tropical diseases
|
||||
- Hospital-acquired infections
|
||||
- Emerging infectious diseases
|
||||
|
||||
When discussing cases, consider the infectious agent, antimicrobial susceptibility,
|
||||
host factors, and infection control measures.""",
|
||||
model_name="claude-3-5-sonnet-20240620",
|
||||
streaming_on=True,
|
||||
print_on=True,
|
||||
)
|
||||
|
||||
return [
|
||||
cardiologist,
|
||||
oncologist,
|
||||
neurologist,
|
||||
endocrinologist,
|
||||
infectious_disease,
|
||||
]
|
||||
|
||||
|
||||
def example_round_robin_panel():
|
||||
"""Example with round robin speaking order."""
|
||||
print("=== ROUND ROBIN MEDICAL PANEL ===\n")
|
||||
|
||||
agents = create_medical_panel()
|
||||
|
||||
group_chat = InteractiveGroupChat(
|
||||
name="Medical Panel Discussion",
|
||||
description="A collaborative panel of medical specialists discussing complex cases",
|
||||
agents=agents,
|
||||
speaker_function="random-dynamic-speaker",
|
||||
interactive=False,
|
||||
)
|
||||
|
||||
print(group_chat.speaker_function)
|
||||
print(group_chat.get_current_speaker_function())
|
||||
|
||||
# Case 1: Complex patient with multiple conditions
|
||||
case1 = """CASE PRESENTATION:
|
||||
A 65-year-old male with Type 2 diabetes, hypertension, and recent diagnosis of
|
||||
stage 3 colon cancer presents with chest pain and shortness of breath.
|
||||
ECG shows ST-segment elevation. Recent blood work shows elevated blood glucose (280 mg/dL)
|
||||
and signs of infection (WBC 15,000, CRP elevated).
|
||||
|
||||
@cardiologist @oncologist @endocrinologist @infectious_disease please provide your
|
||||
assessment and treatment recommendations for this complex case."""
|
||||
|
||||
response = group_chat.run(case1)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
example_round_robin_panel()
|
Loading…
Reference in new issue