Tidak lama dahulu, LLM (Model Bahasa Besar) tidak dapat menulis semula kod. Setiap LLM mempunyai had token, yang menentukan bilangan perkataan yang boleh diserap dan digunakan. Dengan had token yang lebih rendah, model tidak dapat menyerap jumlah maklumat yang diperlukan untuk melaksanakan tugas yang rumit seperti penukaran kod.
Syarikat pembangunan perisian Mantle baru-baru ini menghadapi cabaran biasa: mereka telah membina prototaip platform pengurusan ekuiti generasi seterusnya dalam bahasa pengekodan khusus yang sesuai untuk interaksi pantas sebagai tindak balas kepada maklum balas daripada pelanggan.
Walau bagaimanapun, kod yang digunakan dalam tindanan teknologi pengeluaran mereka adalah berbeza dan untuk menghantar produk, Mantle perlu menukar pangkalan kod daripada satu bahasa ke bahasa lain. Ini adalah tugas yang terkenal membebankan yang kerap dihadapi oleh pasukan perisian dan perusahaan.
"Usaha itu wajar, tetapi prosesnya menyakitkan," kata Dwayne Forde, pengasas bersama Mantle dan CTO. “Daripada menggerakkan pelan hala tuju pelanggan ke hadapan, anda kini akan menghabiskan sebahagian besar masa kejuruteraan yang berharga untuk mencipta semula fungsi sedia ada.”
Tertanya-tanya sama ada AI boleh membantu, Forde—seorang peneraju industri yang dipercayai dengan lebih 20 tahun pengalaman kejuruteraan dalam peranan dengan syarikat termasuk VMware dan Xtreme Labs—membuat sejarah proses baru-baru ini dalam catatan blog di Mantle yang dipanggil “Bekerja dengan AI: Kod Penukaran.”
Dia berharap kajian kes itu akan menjadi sumber yang berguna kepada pasukan teknologi lain, membantu mereka menjimatkan masa dan usaha.
Ia adalah yang kedua dalam siri panduan pengajaran yang ditulis Forde untuk pasukan teknikal, sebagai sebahagian daripada usaha untuk memajukan kepentingan kolektif sektor ini dengan menunjukkan cara AI boleh mempercepatkan dan meningkatkan kerja mereka.
"Matlamat kami bukan untuk mencapai 100% kod yang direka dengan sempurna," kata Forde. “Matlamatnya ialah untuk menyingkirkan 80% plat dandang dan corak berulang supaya jurutera dapat menumpukan pada pengesahan dan pengesahan bernilai tinggi dan kami boleh menghantar produk.”
Tidak lama dahulu, LLM (Model Bahasa Besar) tidak dapat menulis semula kod. Setiap LLM mempunyai had token, yang menentukan bilangan perkataan yang boleh diserap dan digunakan. Dengan had token yang lebih rendah, model tidak dapat menyerap jumlah maklumat yang diperlukan untuk melaksanakan tugas yang rumit seperti penukaran kod.
Tetapi dengan kemajuan pesat dalam perisian LLM terdapat had token yang lebih tinggi, dan Forde menyedari pasukannya mempunyai pilihan baharu yang menarik di hadapan mereka. Had yang lebih tinggi bermakna model boleh meningkatkan penaakulan mereka, melakukan matematik dan inferens yang lebih kompleks serta konteks input dan output dalam saiz yang lebih besar secara dramatik.
Satu juta token bermakna, menurut Medium, model boleh melakukan setara dengan membaca 20 novel atau 1000 kes undang-undang.
Forde dan pasukannya memahami bahawa had token yang lebih besar secara mendadak ini akan membolehkan mereka menyalurkan keseluruhan bahasa pengekodan ke dalam LLM, pada asasnya mengajarnya dalam dwibahasa.
Oleh kerana menukar kod adalah sangat memerlukan buruh, Mantle tahu bahawa mempunyai LLM menukarkan walaupun jumlah kecil kod daripada satu bahasa ke bahasa lain akan memberi manfaat besar kepada masa penghantaran projek kejuruteraan.
“Kami membangunkan pendekatan yang mengurangkan skop kerja sebanyak dua pertiga dan menjimatkan masa pembangun selama berbulan-bulan,” tulis Forde dalam siarannya.
Menukar projek prototaip Mantle kepada bahasa kod baharu lazimnya mengambil masa berbulan-bulan kerja manual.
Sebaliknya, Forde berkata juruteranya menumpukan masa mereka untuk bereksperimen dengan cara terbaik untuk menggesa LLM melakukan banyak kerja untuk mereka.
Ia bukan semudah menyuap bahasa kod ke dalam LLM dan memintanya menterjemah.
Di bawah pengawasan Forde, pasukan Mantle melalui proses inovasi dan penemuan untuk mengetahui arahan, konteks dan panduan terbaik untuk menyediakan LLM dalam kerjanya.
Mereka memberikan coretan kod model daripada bahasa sumber prototaip mereka, serta corak kod pengeluaran sedia ada, perihalan seni bina sasaran mereka dan memberikan LLM konteks tentang perpustakaan dan utiliti tertentu yang digunakan dalam tindanan teknologi Mantle sendiri.
“Kami mempunyai perpustakaan tertentu yang kami suka, jadi menambahkan bahagian konteks sangat membantu untuk memastikan kod output LLM serasi dengan apa yang kami gunakan,” kata Forde.
Pasukan itu malah menyuap tangkapan skrin LLM untuk menunjukkan cara mereka mahu maklumat itu disampaikan, sesuatu yang tidak akan jelas kepada AI daripada bahasa kod sahaja.
"Tangkapan skrin aplikasi sedia ada memberikan LLM reka letak visual aplikasi itu," kata Forde. “Konteks dan arahan yang anda berikan tidak semestinya secara lisan. Anda juga boleh menggunakan titik rujukan visual untuk mendapatkan output yang anda cari.”
Dalam catatan blognya, Forde menguraikan proses langkah demi langkah yang digunakan Mantle untuk menukar kod mereka. Prosesnya adalah inovatif, berulang dan – kadangkala – suka bermain.
Pada satu ketika, pasukan Mantle mengarahkan LLM untuk "bertindak seperti jurutera perisian yang hanya boleh menjawab dalam kod sumber."
Pasukan Mantle meminta LLM untuk menukar hanya bahagian kecil kod pada satu-satu masa, menyemak kerjanya, membetulkan sebarang salah tafsir dan kemudian meneruskan.
Percubaan langkah demi langkah membolehkan pasukan Mantle memperhalusi dan menambah baik kerjanya dari semasa ke semasa, dan mencipta proses yang berkesan yang kini boleh direplikasi dalam projek akan datang.
“Setelah fail dijana, pasukan kami sama ada menyemak dan melaraskan output secara manual atau melaraskan
Atas ialah kandungan terperinci Bekerja dengan AI: Penukaran Kod. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!