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:
- Penjanaan Kod: Menjana kod untuk masalah yang diberikan menggunakan satu ejen AI dan mengkaji semula dengan yang lain.
- Peningkatan Kod: Menilai kod sedia ada berdasarkan kriteria yang ditentukan.
- Pengoptimuman Kod: Permintaan Kod Penambahbaikan, seperti menambah komen atau docstrings.
- Debugging: Menerima cadangan untuk menyelesaikan kesilapan kod.
- 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
:
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:
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.
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:
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!

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

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

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: 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

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

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

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

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


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

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

Artikel Panas

Alat panas

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
Persekitaran pembangunan bersepadu PHP yang berkuasa

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

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
Alat pembangunan JavaScript yang berguna
