Jika anda sedang mencari pembantu berkuasa AI untuk membantu anda menulis kod, kemungkinan besar anda telah menemui CodeGPT. Ia adalah salah satu daripada banyak alatan berkuasa AI yang boleh anda gunakan untuk membantu anda semasa pengaturcaraan. Tetapi bolehkah CodeGPT menulis kod?
CodeGPT ialah sambungan khusus yang menggunakan model kecerdasan buatan (AI) berbeza untuk membantu pengaturcara menulis dan membetulkan kod. Ia termasuk pelbagai ciri yang menjurus ke arah pengaturcaraan yang lebih pantas dan lebih mudah, termasuk pelengkapan automatik, penjelasan kod, pemfaktoran semula, dokumentasi, ujian unit, semakan ralat dan pembetulan pepijat. Ia juga mempunyai antara muka seperti ChatGPT yang boleh anda akses daripada editor kod anda.
Sambungan ini sangat berkuasa kerana ia membolehkan anda menyambung ke pelbagai model bahasa besar (LLM) arus perdana daripada pembekal berbeza seperti OpenAI dan Google. Selain itu, CodeGPT membolehkan anda mencipta ejen AI anda sendiri yang boleh anda gunakan dalam projek anda atau berkongsi dengan orang lain.
Walaupun terdapat beberapa editor kod untuk Linux, macOS dan Windows, CodeGPT hanya tersedia dalam dua. Hari ini, anda boleh sama ada memasang dan menggunakan CodeGPT dalam Kod VS atau dalam Kursor, yang merupakan garpu Kod VS.
Anda boleh memuat turun dan memasang CodeGPT secara percuma, tetapi menggunakan sambungan itu dikenakan bayaran. CodeGPT menawarkan pelbagai pakej langganan yang boleh anda bayar jika anda memerlukan akses tanpa had.
CodeGPT Plus mempunyai tiga pelan langganan. Pelan Asas berharga $9.99/bulan, diikuti oleh Standard ($19.99/bulan) dan Emas ($49.99/bulan). Terdapat tempoh percubaan percuma yang tersedia, yang boleh anda gunakan untuk menilai sambungan. Setiap pakej memberi anda akses kepada ejen AI tertentu dengan interaksi tanpa had.
Ingat bahawa anda perlu membayar untuk penggunaan tanpa had model AI pihak ketiga seperti model GPT-4 OpenAI, contohnya. Walaupun anda boleh mengakses model GPT-4 Open AI secara percuma, anda tidak boleh melakukannya dari dalam Kod VS atau Kursor.
Untuk menilai ini, kami akan menggunakan sambungan untuk membantu kami menjana dua sampel kod berbeza dalam Python.
Pertama, kami meminta model menjana struktur data tindanan dalam Python dengan semua kaedah yang berkaitan. Kami menggunakan gesaan ini:
Buat tindanan dalam Python dan masukkan semua kaedah yang diperlukan
Model menghasilkan respons berikut:
<code class="hljs python">classStack:def__init__(self):self.stack = []defpush(self, item):self.stack.append(item)defpop(self):if self.is_empty():raise IndexError("Pop from empty stack")return self.stack.pop()defpeek(self):if self.is_empty():raise IndexError("Peek from empty stack")return self.stack[-1]defis_empty(self):return len(self.stack) == 0defsize(self):return len(self.stack)</code>
Contoh ini menunjukkan bahawa CodeGPT cukup bijak untuk mencipta tindanan menggunakan kelas dan memasukkan pemeriksaan yang diperlukan untuk menangani ralat tertentu yang mungkin timbul. Sebagai contoh, kod tersebut menimbulkan ralat bermaklumat jika anda cuba mengintip atau memunculkan timbunan kosong.
Dalam cabaran kedua, kami meminta CodeGPT untuk menyimpan respons yang diformatkan dalam JSON daripada JSONPlaceholder API kepada fail CSV. Untuk konteks, respons daripada API JSONPlaceholder kelihatan seperti ini:
<code class="hljs json">{'userId': 1,'id': 1,'title': 'sunt aut facere repellat provident occaecati excepturi optio reprehenderit','body': 'quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto'}</code>
Kami meminta CodeGPT yang berikut:
Saya telah membuat permintaan kepada API luaran di https://jsonplaceholder.typicode.com/posts/1 dan Saya mendapat respons kembali. Saya telah memformatkan respons sebagai json, bagaimana saya boleh menyimpannya dalam fail csv?
Kod yang dijawab oleh CodeGPT ialah:
<code class="hljs python">import csvimport requests# Make a GET request to the APIresponse = requests.get('https://jsonplaceholder.typicode.com/posts/1')# Convert the response to JSON formatdata = response.json()# Since we're receiving a dictionary, we need to turn it into a list of one dictionarydata = [data]# Open (or create) a CSV file to write the datawith open('output.csv', 'w', newline='') as output_file:# Create a CSV writer objectwriter = csv.DictWriter(output_file, fieldnames=data[0].keys())# Write the CSV headerswriter.writeheader()# Write the data to the CSV filewriter.writerows(data)</code>
Secara amnya, respons ini bagus; ia tidak memerlukan sebarang tweak untuk berfungsi. CodeGPT juga menambah ulasan yang menerangkan tujuan pelbagai baris kod, yang berguna jika anda melakukan sesuatu buat kali pertama.
Satu-satunya isu di sini ialah respons tidak menyatakan jenis pengekodan semasa memanggil open(). Walaupun lalai akan disertakan secara automatik, menetapkan jenis pengekodan adalah disyorkan dan dianggap sebagai amalan terbaik apabila menulis kepada fail dalam Python. Ini mungkin menyelamatkan anda daripada tafsiran yang salah, yang membawa kepada teks bercampur aduk.
Jadi: CodeGPT boleh menulis kod, tetapi anda harus berhati-hati kerana ia tidak selalu memberikan anda output terbaik. Perkara yang anda peroleh mungkin terdedah kepada ralat dan mungkin tidak mengikut amalan terbaik. Setiap kali anda menggunakan CodeGPT atau mana-mana alat berkuasa AI lain untuk menulis kod, berusaha untuk memahami perkara yang dilakukan oleh kod itu terlebih dahulu. Jangan copy dan paste sahaja.
Atas ialah kandungan terperinci Apakah CodeGPT dan Bolehkah Ia Menulis Kod?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!