Rumah > pembangunan bahagian belakang > Tutorial Python > Menyahpepijat Krew Anda: Mengasingkan Ejen dan Tugas dalam CrewAI

Menyahpepijat Krew Anda: Mengasingkan Ejen dan Tugas dalam CrewAI

Barbara Streisand
Lepaskan: 2025-01-23 18:14:12
asal
757 orang telah melayarinya

Debugging Your Crew: Isolating Agents and Tasks in CrewAI

Membangunkan sistem AI berbilang ejen yang kompleks dengan CrewAI boleh menjadi mencabar dengan cepat. Siaran ini menunjukkan cara mengasingkan dan menguji ejen dan tugas individu untuk penyahpepijatan yang lebih mudah dan lelaran yang lebih pantas.

Faedah Pengasingan

Mengasingkan komponen dalam sistem CrewAI anda adalah serupa dengan ujian unit. Pendekatan ini memberikan beberapa kelebihan utama:

  • Penyahpepijatan Ringkas: Kenal pasti masalah dengan cepat dengan memfokuskan pada satu ejen atau tugas, menghapuskan keperluan untuk menapis log daripada keseluruhan sistem.
  • Lelaran Pantas: Uji pengubahsuaian kepada gelagat ejen atau definisi tugas tanpa berulang kali menjalankan krew lengkap.
  • Pengoptimuman Prestasi Sasaran: Profil dan optimumkan komponen individu dengan lebih berkesan apabila diasingkan daripada sistem yang lain.

Mari kita periksa elemen teras:

  1. Ejen researcher (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>
    Salin selepas log masuk
  2. Yang 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>
    Salin selepas log masuk
  3. Kelas IndependentCrew (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>
    Salin selepas log masuk
  4. Menjalankan Ejen Secara Bebas (run_agent.py): Contoh ini menunjukkan cara mencipta dan menggunakan ejen di luar konteks Krew, melaksanakan tugas tersuai dan menggunakan semula ejen dan tugas yang ditentukan.

  5. Menjalankan Tugasan Secara Bebas (run_task.py): Ini menunjukkan mencipta dan melaksanakan tugasan secara bebas, termasuk pelaksanaan segerak dan tak segerak serta menggunakan konteks dan alatan tersuai. Ia juga menunjukkan penggunaan semula tugas yang ditentukan dengan konteks tersuai.

Kesimpulan

Keupayaan untuk menjalankan ejen dan tugas secara bebas memberikan fleksibiliti dan kawalan yang ketara dalam pembangunan CrewAI. Pendekatan ujian terpencil ini memperkemas penyahpepijatan, mempercepatkan lelaran dan meningkatkan kecekapan keseluruhan. Contoh kod yang disediakan menawarkan titik permulaan praktikal untuk menyepadukan teknik ini ke dalam projek anda. Ingat untuk merujuk dokumentasi CrewAI dan repositori GitHub untuk mendapatkan butiran dan sokongan lanjut.

Sumber:

Atas ialah kandungan terperinci Menyahpepijat Krew Anda: Mengasingkan Ejen dan Tugas dalam CrewAI. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan