Die Entwicklung komplexer Multiagenten-KI-Systeme mit CrewAI kann schnell zu einer Herausforderung werden. In diesem Beitrag wird gezeigt, wie Sie einzelne Agenten und Aufgaben isolieren und testen, um das Debuggen zu vereinfachen und die Iteration zu beschleunigen.
Die Vorteile der Isolation
Das Isolieren von Komponenten in Ihrem CrewAI-System ähnelt einem Unit-Test. Dieser Ansatz bietet mehrere entscheidende Vorteile:
Lassen Sie uns die Kernelemente untersuchen:
Der researcher
Agent (agents.yaml
):
<code class="language-yaml"> researcher: role: "Senior Research Analyst" goal: "Uncover groundbreaking technologies in AI" backstory: "A highly skilled researcher with a passion for AI advancements." llm: gemini/gemini-1.5-flash # Replace with your preferred LLM allow_delegation: false tools: - WebSearchTool</code>
Das research_task
(tasks.yaml
):
<code class="language-yaml"> research_task: description: "Research the latest developments in AI for 2024." expected_output: "A report summarizing the key AI trends." agent: researcher</code>
Die IndependentCrew
Klasse (crew.py
):
<code class="language-python"> from crewai import Agent, Crew, Process, Task from crewai.project import CrewBase, agent, crew, task from .tools import WebSearchTool @CrewBase class IndependentCrew(): """IndependentCrew crew""" agents_config = 'config/agents.yaml' tasks_config = 'config/tasks.yaml' @agent def researcher(self) -> Agent: return Agent( config=self.agents_config['researcher'], verbose=True, tools=[WebSearchTool()] ) @task def research_task(self) -> Task: return Task( config=self.tasks_config['research_task'], ) @crew def crew(self) -> Crew: """Creates the IndependentCrew crew""" return Crew( agents=self.agents, tasks=self.tasks, process=Process.sequential, verbose=True, )</code>
Unabhängige Ausführung des Agenten (run_agent.py
): Dieses Beispiel zeigt, wie Sie einen Agenten außerhalb des Crew-Kontexts erstellen und verwenden, eine benutzerdefinierte Aufgabe ausführen und den definierten Agenten und die definierte Aufgabe wiederverwenden.
Unabhängiges Ausführen der Aufgabe (run_task.py
): Dies zeigt das unabhängige Erstellen und Ausführen von Aufgaben, einschließlich synchroner und asynchroner Ausführung, sowie die Verwendung von benutzerdefiniertem Kontext und Tools. Es zeigt auch die Wiederverwendung der definierten Aufgabe mit benutzerdefiniertem Kontext.
Fazit
Die Möglichkeit, Agenten und Aufgaben unabhängig voneinander auszuführen, bietet erhebliche Flexibilität und Kontrolle bei der CrewAI-Entwicklung. Dieser isolierte Testansatz rationalisiert das Debuggen, beschleunigt die Iteration und verbessert die Gesamteffizienz. Die bereitgestellten Codebeispiele bieten einen praktischen Ausgangspunkt für die Integration dieser Technik in Ihre Projekte. Denken Sie daran, die CrewAI-Dokumentation und das GitHub-Repository für weitere Details und Unterstützung zu konsultieren.
Ressourcen:
Das obige ist der detaillierte Inhalt vonDebuggen Sie Ihre Crew: Isolieren von Agenten und Aufgaben in CrewAI. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!