cari
RumahPeranti teknologiAIBina Pengaturcara Pasangan AI dengan Crewai - Analytics Vidhya

Pengenalan

Permintaan untuk pembangunan perisian yang cekap memacu penggunaan kecerdasan buatan sebagai rakan pengaturcaraan yang berharga. Pembantu pengekodan berkuasa AI sedang merevolusikan pembangunan dengan memudahkan penulisan kod, debugging, dan pengoptimuman, seperti pengaturcara pasangan manusia. Artikel ini menunjukkan membina pengaturcara pasangan AI menggunakan ejen krew untuk menyelaraskan tugas pengekodan dan meningkatkan produktiviti pemaju.

Gambaran Keseluruhan

Panduan ini merangkumi:

  • Memahami peranan Crewai dalam membantu tugas pengekodan.
  • Mengenal pasti komponen utama: ejen, tugas, alat, dan krew, dan interaksi mereka.
  • Pengalaman praktikal menyediakan ejen AI untuk penjanaan kod dan semakan.
  • Mengkonfigurasi pelbagai ejen AI untuk pengekodan kerjasama.
  • Menggunakan Crewai untuk menilai dan mengoptimumkan kualiti kod.

Jadual Kandungan

  • Contoh kualitatif NVLM 1.0 D 74B
  • Perbandingan NVLM dengan LLM lain
  • Batasan LLM multimodal lain
  • Menangani batasan tersebut
  • NVLM: Kaedah Model dan Latihan
  • Data latihan
  • Hasilnya
  • Mengakses NVLM D 72B
    • Mengimport perpustakaan yang diperlukan
    • Model sharding
    • Preprocessing imej
    • Jubin imej dinamik
    • Memuatkan dan memproses gambar
    • Memuat dan menggunakan model
    • Perbualan teks dan gambar
  • Soalan yang sering ditanya

Keupayaan pengaturcara pasangan AI

Pengatur pasangan AI menawarkan beberapa kelebihan:

  1. Penjanaan Kod: Menjana kod untuk masalah yang diberikan menggunakan satu ejen AI dan mengkaji semula dengan yang lain.
  2. Peningkatan Kod: Menilai kod sedia ada berdasarkan kriteria yang ditentukan.
  3. Pengoptimuman Kod: Permintaan Kod Penambahbaikan, seperti menambah komen atau docstrings.
  4. Debugging: Menerima cadangan untuk menyelesaikan kesilapan kod.
  5. Penjanaan kes ujian: Menjana kes ujian untuk pelbagai senario, termasuk pembangunan yang didorong oleh ujian.

Artikel ini memberi tumpuan kepada dua keupayaan pertama.

Apa itu Crewai?

Crewai adalah rangka kerja untuk mewujudkan ejen AI. Komponen utamanya ialah:

  • Ejen: Ejen menggunakan model bahasa yang besar (LLM) untuk menghasilkan output berdasarkan arahan input. Ia berinteraksi dengan alat, menerima input pengguna, dan berkomunikasi dengan ejen lain.
  • Tugas: Menentukan objektif ejen, termasuk keterangan, ejen, dan alat yang boleh digunakan.
  • Alat: Ejen menggunakan alat untuk tugas seperti carian web, bacaan fail, dan pelaksanaan kod.
  • Krew: Sekumpulan ejen yang bekerjasama dalam tugas, menentukan interaksi, perkongsian maklumat, dan delegasi tanggungjawab.

Juga Baca: Membina Ejen AI Kerjasama dengan Crewai

Mari kita bina ejen untuk menggambarkan konsep -konsep ini.

Prasyarat

Sebelum membina pengaturcara pasangan AI, dapatkan kunci API untuk LLMS.

Mengakses LLM melalui API

Menjana kunci API untuk LLM yang anda pilih dan simpannya dengan selamat dalam fail .env untuk akses projek sambil mengekalkan privasi.

Contoh fail .env

Contoh fail .env :

Bina Pengaturcara Pasangan AI dengan Crewai - Analytics Vidhya

Perpustakaan yang diperlukan

Versi perpustakaan berikut digunakan:

  • Crewai - 0.66.0
  • Crewai-Tools-0.12.1

Automasi Penciptaan Kod

Bahagian ini menunjukkan pengimportan perpustakaan dan ejen yang menentukan untuk penjanaan kod dan semakan.

Mengimport perpustakaan

 dari dotenv import load_dotenv
LOAD_DOTENV ('/. env')

dari ejen import krew, tugas, krew

Menentukan ejen penulis kod

Satu ejen menjana kod, ulasan lain.

 code_writer_agent = agen (role = "jurutera perisian",
                          matlamat = 'Tulis kod yang dioptimumkan dan dikekalkan, termasuk dokumen dan komen', 
                          backstory = "" "Anda adalah seorang jurutera perisian yang dioptimumkan, kod yang boleh dipelihara dengan docstrings dan komen." ""
                          LLM = 'GPT-4O-MINI',
                          verbose = benar)

Parameter ejen dijelaskan

  • Peranan: mentakrifkan fungsi ejen.
  • Matlamat: Menentukan objektif ejen.
  • Backstory: Menyediakan konteks untuk interaksi yang lebih baik.
  • LLM: Menentukan LLM yang digunakan (lihat dokumentasi Litellm untuk pilihan).
  • Verbose: Membolehkan pembalakan input/output terperinci.

Menentukan tugas penulis kod

 code_writer_task = tugas (description = 'tulis kod untuk menyelesaikan masalah dalam {bahasa}. Masalah: {masalah}',
                        Diharapkan_Output = 'Kod Format yang baik dengan jenis mengisyaratkan',
                        agen = code_writer_agent)

Parameter tugas dijelaskan

  • Penerangan: Objektif tugas yang jelas dengan pembolehubah ({bahasa}, {masalah}).
  • Diharapkan_Output: Format output yang dikehendaki.
  • Ejen: Ejen yang diberikan kepada tugas itu.

Menentukan ejen dan tugas pengulas kod

Begitu juga, tentukan code_reviewer_agent dan code_reviewer_task .

 code_reviewer_agent = agen (role = "jurutera perisian kanan",
                            matlamat = 'Pastikan kod dioptimumkan dan dikekalkan', 
                            backstory = "" "Anda adalah Kod Kanan Kanan untuk dibaca, kebolehpercayaan, dan prestasi." "",
                            LLM = 'GPT-4O-MINI',
                            verbose = benar)

code_reviewer_task = tugas (description = "" "Kod ulasan yang ditulis untuk masalah dalam {bahasa}. Masalah: {masalah}" "",
                          Diharapkan_Output = 'Kod Semakan',
                          agen = code_reviewer_agent)

Membina dan Menjalankan Krew

Buat dan jalankan krew:

 krew = krew (ejen = [code_writer_agent, code_reviewer_agent], 
            tugas = [code_writer_task, code_reviewer_task], 
            verbose = benar)

result = crew.kickoff (input = {'masalah': 'buat permainan tic-tac-toe', 'bahasa': 'python'})

Output Contoh:

Bina Pengaturcara Pasangan AI dengan Crewai - Analytics Vidhya

Bina Pengaturcara Pasangan AI dengan Crewai - Analytics Vidhya

Analisis keputusan

Objek result mengandungi:

 result.dict (). Kekunci ()
>>> dict_keys (['mentah', 'pydantic', 'json_dict', 'tasks_output', 'token_usage']))

# Penggunaan token
result.dict () ['token_usage']
>>> {'total_tokens': 2656, ...}

# Output akhir
cetak (result.raw)

Kod yang dihasilkan kemudiannya boleh dilaksanakan.

Bina Pengaturcara Pasangan AI dengan Crewai - Analytics Vidhya

Penilaian kod automatik

Bahagian ini meliputi menilai kod sedia ada.

Menentukan keperluan penilaian

Pertama, kumpulkan keperluan menggunakan ejen, kemudian menilai kod berdasarkan keperluan tersebut menggunakan ejen lain.

Menggunakan alat

FileReadTool membaca fail. Alat meningkatkan keupayaan ejen. Alat boleh diberikan kepada tugas dan ejen; Tugasan peringkat tugas mengatasi tugasan peringkat ejen.

Menyediakan ejen dan tugas perhimpunan keperluan

 dari krewi_tools import fileReadtool

code_requirements_agent = agen (role = "Data Scientist",
                          matlamat = 'Tentukan keperluan kod untuk masalah tertentu.', 
                          backstory = "" "Anda adalah keperluan saintis data yang menentukan keperluan kod untuk menyelesaikan masalah." "",
                          LLM = 'GPT-4O-MINI',
                          verbose = benar)

code_requirement_task = Task (description = 'Write step-by-step syarat. Masalah: {masalah}',
                            diharapkan_output = 'teks keperluan diformat.',
                            agen = code_requirements_agent,
                            human_input = benar)

human_input=True membolehkan input pengguna untuk pelarasan.

Penilaian Kod

Contoh ini menggunakan FileReadTool dan gpt-4o untuk mengendalikan konteks yang lebih baik.

 file_read_tool = fileReadTool ('eda.py')

code_evaluator_agent = agen (role = "Evaluator Sains Data",
                            matlamat = 'Menilai kod berdasarkan keperluan yang disediakan', 
                            backstory = "" "Anda adalah evaluator sains data mengkaji semula kod berdasarkan keperluan yang diberikan." "",
                            LLM = 'GPT-4O',
                            verbose = benar)

code_evaluator_task = tugas (description = "" "menilai fail kod berdasarkan keperluan. Hanya berikan penilaian, bukan kod." "",
                           dijangkakan_output = 'Penilaian terperinci berdasarkan keperluan.',
                           alat = [file_read_tool],
                           ejen = code_evaluator_agent)

Membina Krew Penilaian

Buat krew dan tentukan masalahnya:

 krew = krew (ejen = [code_requirements_agent, code_evaluator_agent], 
            tugas = [code_requirement_task, code_evaluator_task], 
            verbose = benar)

Masalah = "" "Lakukan EDA pada dataset tempoh perjalanan teksi NYC ..." "" # (Penerangan dataset ditinggalkan untuk keringkasan)

hasil = crew.kickOff (input = {'masalah': masalah})

Output

Output menunjukkan input manusia meminta:

Bina Pengaturcara Pasangan AI dengan Crewai - Analytics Vidhya

Output tugas boleh diakses secara individu:

 Cetak (code_requirement_task.output.raw)
cetak (result.raw)

Kesimpulan

Crewai menyediakan rangka kerja yang kuat untuk meningkatkan pembangunan perisian melalui penjanaan, kajian semula, dan penilaian kod AI yang didorong. Dengan menentukan peranan, matlamat, dan tugas, pemaju dapat menyelaraskan aliran kerja dan meningkatkan produktiviti. Mengintegrasikan pengaturcara pasangan AI dengan Crewai meningkatkan kecekapan dan kualiti kod. Fleksibiliti Crewai memudahkan kolaborasi ejen AI yang lancar, menghasilkan kod yang dioptimumkan, dikekalkan, dan bebas ralat. Ketika AI berkembang, keupayaan pengaturcaraan pasangan Crewai akan menjadi semakin berharga bagi pemaju.

Soalan yang sering ditanya

Q1. Apakah Crewai dan peranannya dalam pembangunan perisian? Crewai adalah rangka kerja agen AI yang membantu pemaju dengan penulisan kod, semakan, dan penilaian, meningkatkan produktiviti.

S2. Apakah komponen utama Crewai? Ejen, tugas, alat, dan krew. Ejen melakukan tindakan; Tugas menentukan objektif; Alat memanjangkan keupayaan ejen; Krew membolehkan kerjasama ejen.

Q3. Bagaimana cara menyediakan ejen AI yang menjana kod? Tentukan peranan, matlamat, backstory, dan LLM ejen, kemudian buat tugas yang sama yang menentukan masalah dan output yang diharapkan.

Q4. Bolehkah ejen krew bekerjasama? Ya, melalui "krew," yang membolehkan ejen mengendalikan aspek yang berbeza dari tugas dengan cekap.

S5. Alat apa yang ada? Pelbagai alat meningkatkan keupayaan ejen, termasuk bacaan fail, carian web, dan pelaksanaan kod.

Atas ialah kandungan terperinci Bina Pengaturcara Pasangan AI dengan Crewai - Analytics Vidhya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
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
Jurang kemahiran AI memperlahankan rantaian bekalanJurang kemahiran AI memperlahankan rantaian bekalanApr 26, 2025 am 11:13 AM

Istilah "tenaga kerja siap sedia" sering digunakan, tetapi apakah maksudnya dalam industri rantaian bekalan? Menurut Abe Eshkenazi, Ketua Pegawai Eksekutif Persatuan Pengurusan Rantaian Bekalan (ASCM), ia menandakan profesional yang mampu mengkritik

Bagaimana satu syarikat secara senyap -senyap bekerja untuk mengubah AI selama -lamanyaBagaimana satu syarikat secara senyap -senyap bekerja untuk mengubah AI selama -lamanyaApr 26, 2025 am 11:12 AM

Revolusi AI yang terdesentralisasi secara senyap -senyap mendapat momentum. Jumaat ini di Austin, Texas, Sidang Kemuncak Endgame Bittensor menandakan momen penting, beralih ke desentralisasi AI (DEAI) dari teori kepada aplikasi praktikal. Tidak seperti iklan mewah

NVIDIA Melepaskan Microservices Nemo Untuk Menyebarkan Pembangunan Agen AINVIDIA Melepaskan Microservices Nemo Untuk Menyebarkan Pembangunan Agen AIApr 26, 2025 am 11:11 AM

Perusahaan AI menghadapi cabaran integrasi data Penggunaan perusahaan AI menghadapi cabaran utama: sistem bangunan yang dapat mengekalkan ketepatan dan kepraktisan dengan terus belajar data perniagaan. Microservices NEMO menyelesaikan masalah ini dengan mewujudkan apa yang NVIDIA menggambarkan sebagai "Flywheel Data", yang membolehkan sistem AI tetap relevan melalui pendedahan berterusan kepada maklumat perusahaan dan interaksi pengguna. Toolkit yang baru dilancarkan ini mengandungi lima microservices utama: Nemo Customizer mengendalikan penalaan model bahasa yang besar dengan latihan yang lebih tinggi. NEMO Evaluator menyediakan penilaian ringkas model AI untuk tanda aras tersuai. Nemo Guardrails Melaksanakan Kawalan Keselamatan untuk mengekalkan pematuhan dan kesesuaian

AI melukis gambar baru untuk masa depan seni dan reka bentukAI melukis gambar baru untuk masa depan seni dan reka bentukApr 26, 2025 am 11:10 AM

AI: Masa Depan Seni dan Reka Bentuk Kecerdasan Buatan (AI) mengubah bidang seni dan reka bentuk dengan cara yang belum pernah terjadi sebelumnya, dan impaknya tidak lagi terhad kepada amatur, tetapi lebih mempengaruhi profesional. Skim karya seni dan reka bentuk yang dihasilkan oleh AI dengan cepat menggantikan imej dan pereka bahan tradisional dalam banyak aktiviti reka bentuk transaksional seperti pengiklanan, generasi imej media sosial dan reka bentuk web. Walau bagaimanapun, artis dan pereka profesional juga mendapati nilai praktikal AI. Mereka menggunakan AI sebagai alat tambahan untuk meneroka kemungkinan estetik baru, menggabungkan gaya yang berbeza, dan membuat kesan visual baru. AI membantu artis dan pereka mengautomasikan tugas berulang, mencadangkan elemen reka bentuk yang berbeza dan memberikan input kreatif. AI menyokong pemindahan gaya, iaitu menggunakan gaya gambar

Bagaimana Zoom merevolusikan kerja dengan Agentic AI: Dari mesyuarat ke tonggakBagaimana Zoom merevolusikan kerja dengan Agentic AI: Dari mesyuarat ke tonggakApr 26, 2025 am 11:09 AM

Zoom, yang pada mulanya dikenali untuk platform persidangan video, memimpin revolusi tempat kerja dengan penggunaan inovatif AIS AI. Perbualan baru -baru ini dengan CTO Zoom, XD Huang, mendedahkan penglihatan yang bercita -cita tinggi syarikat itu. Menentukan Agentic AI Huang d

Ancaman eksistensi ke universitiAncaman eksistensi ke universitiApr 26, 2025 am 11:08 AM

Adakah AI akan merevolusikan pendidikan? Soalan ini mendorong refleksi serius di kalangan pendidik dan pihak berkepentingan. Penyepaduan AI ke dalam pendidikan memberikan peluang dan cabaran. Sebagai Matthew Lynch dari Nota Edvocate Tech, Universit

Prototaip: saintis Amerika mencari pekerjaan di luar negaraPrototaip: saintis Amerika mencari pekerjaan di luar negaraApr 26, 2025 am 11:07 AM

Pembangunan penyelidikan dan teknologi saintifik di Amerika Syarikat mungkin menghadapi cabaran, mungkin disebabkan oleh pemotongan anggaran. Menurut Alam, bilangan saintis Amerika yang memohon pekerjaan di luar negara meningkat sebanyak 32% dari Januari hingga Mac 2025 berbanding dengan tempoh yang sama pada tahun 2024. Pungutan sebelumnya menunjukkan bahawa 75% penyelidik yang ditinjau sedang mempertimbangkan untuk mencari pekerjaan di Eropah dan Kanada. Beratus-ratus geran NIH dan NSF telah ditamatkan dalam beberapa bulan yang lalu, dengan geran baru NIH turun kira-kira $ 2.3 bilion tahun ini, setitik hampir satu pertiga. Cadangan belanjawan yang bocor menunjukkan bahawa pentadbiran Trump sedang mempertimbangkan untuk memotong belanjawan secara mendadak untuk institusi saintifik, dengan kemungkinan pengurangan sehingga 50%. Kegawatan dalam bidang penyelidikan asas juga telah menjejaskan salah satu kelebihan utama Amerika Syarikat: menarik bakat luar negara. 35

Semua Mengenai Keluarga GPT 4.1 Terbuka AI - Analytics VidhyaSemua Mengenai Keluarga GPT 4.1 Terbuka AI - Analytics VidhyaApr 26, 2025 am 10:19 AM

OpenAI melancarkan siri GPT-4.1 yang kuat: keluarga tiga model bahasa lanjutan yang direka untuk aplikasi dunia nyata. Lompat penting ini menawarkan masa tindak balas yang lebih cepat, pemahaman yang lebih baik, dan kos yang dikurangkan secara drastik berbanding t

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna