Menggunakan GitHub Copilot dengan Python - nurkomarhidaya/pemrograman-AI GitHub Wiki

GitHub Copilot adalah pemrogram pasangan AI yang menawarkan saran bergaya pelengkapan otomatis saat Anda membuat kode dengan Python.

Tujuan pembelajaran

Di akhir modul ini, Anda dapat:

  • Aktifkan ekstensi GitHub Copilot di Visual Studio Code.
  • Buat perintah yang dapat menghasilkan saran berguna dari GitHub Copilot.
  • Gunakan GitHub Copilot untuk meningkatkan proyek Python.

Prasyarat

  • Pemahaman dasar tentang Python, seperti variabel dan kondisional
  • Kemampuan untuk menggunakan Git dan GitHub untuk kontrol versi
  • Layanan GitHub Copilot diaktifkan

Perkenalan

GitHub Copilot adalah mitra pengkodean AI yang memberikan saran pelengkapan otomatis saat Anda membuat kode. Anda mendapatkan saran dari Copilot dengan mengetik kode atau menjelaskannya dalam bahasa alami.

Copilot menganalisis file Anda dan file terkait, menawarkan saran di editor teks Anda. Ini menggunakan OpenAI Codex, sistem AI baru yang dikembangkan oleh OpenAI, untuk membantu memperoleh konteks dari kode dan komentar tertulis, dan kemudian menyarankan baris baru atau seluruh fungsi.

GitHub Codespaces adalah lingkungan pengembang yang dihosting yang beroperasi di cloud yang dapat dijalankan dengan Visual Studio Code. Anda dapat menyesuaikan pengalaman pengembangan untuk proyek pengembangan apa pun di GitHub, menginstal ketergantungan, pustaka, dan bahkan ekstensi dan pengaturan Visual Studio Code.

Skenario: Meningkatkan proyek

Sebagai pengembang, Anda ingin menjadi lebih produktif saat mengetik kode untuk proyek baru dan yang sudah ada. Untuk tugas ini, Anda ingin mengetahui apakah asisten AI adalah yang Anda butuhkan untuk meningkatkan alur kerja pengembang Anda dalam penulisan kode, dokumentasi, pengujian, dan banyak lagi.

Dalam modul ini, Anda mempelajari cara menggunakan GitHub Copilot untuk memodifikasi proyek dengan menggunakan prompt untuk menyesuaikan API Python. Anda juga mempelajari cara menggunakan saran langsung setelah mengetik kode awal.

Pada akhir modul ini, Anda memiliki:

  • Mengonfigurasi repositori GitHub di Codespaces dan menginstal ekstensi GitHub Copilot.
  • Perintah yang dibuat untuk menghasilkan saran dari GitHub Copilot.
  • Mempelajari cara menerapkan GitHub Copilot untuk meningkatkan proyek Python Anda.

Apa tujuan utamanya?

Setelah berhasil menyelesaikan modul ini, Anda dapat menggunakan prompt untuk menyesuaikan proyek Python dengan GitHub Copilot di GitHub Codespaces.

Prasyarat

Keterampilan

  • Pemahaman dasar tentang Python dan editor teks.
  • Pemahaman dasar tentang Git dan GitHub Fundamentals. Khususnya, menjalankan perintah dasar seperti dan .gitgit addgit push

Apa itu GitHub Copilot?

Seringkali, ketika Anda menulis kode, Anda perlu berkonsultasi dengan dokumentasi resmi atau halaman web lain untuk mengingat sintaks atau cara memecahkan masalah. Anda juga dapat menghabiskan waktu berjam-jam untuk mencoba menyelesaikan masalah saat kode tidak berfungsi. Selain itu, Anda juga menghabiskan waktu untuk menulis tes dan dokumentasi. Semua tugas ini memakan waktu. Agar lebih efisien, Anda dapat menggunakan cuplikan kode atau mengandalkan alat di lingkungan pengembangan terintegrasi (IDE) Anda. Tapi apakah ada cara yang lebih baik?

Bagaimana cara kerjanya?

GitHub Copilot adalah asisten AI yang Anda gunakan dari dalam IDE yang mampu menghasilkan kode dan banyak lagi. GitHub Copilot menggunakan petunjuk. Prompt adalah teks bahasa alami yang Anda ketik. Copilot menggunakan teks untuk memberikan saran berdasarkan apa yang Anda ketik.

Perintah dapat terlihat seperti contoh berikut:


# Create a web API using FastAPI with a route to products.

Copilot kemudian menggunakan perintah untuk menghasilkan respons yang dapat Anda pilih untuk diterima atau ditolak. Respons terhadap perintah mungkin terlihat seperti kode berikut:

from fastapi import FastAPI
app = FastAPI()

@app.get("/products")
def read_products():
    return []

Cara mengenali perintah

Copilot dapat mengetahui bahwa sesuatu adalah prompt atau instruksi jika Anda:

  • Ketikkan sebagai komentar dalam file kode dengan file yang diakhiri seperti .py atau .js.
  • Ketik teks dalam file markdown dan tunggu beberapa detik hingga Copilot mengembalikan tanggapan.

Menerima saran

Apa yang Anda dapatkan dari Copilot adalah saran, atau teks yang menampilkan dirinya sebagai kode abu-abu, jika Anda menggunakan warna hitam sebagai warna teks. Untuk menerima saran tersebut, Anda perlu menekan tombol.Tab

Copilot mungkin menyarankan lebih dari satu hal. Dalam hal ini, Anda dapat beralih di antara saran dengan menggunakan , dan memilih yang paling tepat.Ctrl + Enter

Latihan - Menyiapkan GitHub Copilot untuk bekerja dengan Visual Studio Code

Dalam latihan ini, kami membuat repositori baru menggunakan templat GitHub untuk aplikasi web frontend portofolio pribadi Python.

Mengakses GitHub Copilot

Untuk menggunakan GitHub Copilot, Anda harus menyelesaikan langkah-langkah berikut:

  1. Akun GitHub:
  • Jika perlu, buat akun GitHub.
  • Copilot adalah layanan GitHub, jadi Anda memerlukan akun GitHub untuk menggunakannya.
  1. Periksa Akses Copilot:
  • Periksa paket harga Copilot untuk situasi Anda.
  • Untuk pembelajaran, opsi Copilot Free dengan batas penggunaan sudah cukup. Ini termasuk:
  1. Akses ke penyelesaian kode sebaris
  2. Pengeditan multi-file
  3. Obrolan Copilot
  4. Memilih model multitple
  5. Dukungan di semua editor dan di github.com
Pendidik, Pelajar, dan pengelola sumber terbuka terpilih dapat menerima Copilot Pro secara gratis, pelajari caranya di: https://aka.ms/Copilot4Students
  1. Verifikasi Akses Copilot Diaktifkan:
  • Di GitHub, buka profil Anda, lalu buka Pengaturan.
  • Di navigasi kiri, pilih Copilot.
  • Pastikan Copilot aktif dan Obrolan Copilot di IDE diaktifkan.
  1. Instal ekstensi:
  • Ekstensi tersedia untuk IDE utama seperti Visual Studio, Visual Studio Code, JetBrains IDE, VIM, dan XCode.
  • Cukup cari di pasar ekstensi IDE Anda dan instal.GitHub Copilot

Penyiapan lingkungan

Pertama, Anda perlu meluncurkan lingkungan Codespaces, yang telah dikonfigurasi sebelumnya dengan ekstensi GitHub Copilot.

  1. Buka Codespace dengan lingkungan yang telah dikonfigurasi sebelumnya di browser Anda.
  2. Pada halaman Buat codespace, tinjau pengaturan konfigurasi codespace, lalu pilih Buat codespace baru.
  3. Tunggu hingga ruang kode dimulai. Proses startup ini bisa memakan waktu beberapa menit.
  4. Latihan yang tersisa dalam proyek ini berlangsung dalam konteks wadah pengembangan ini.
Penting
Semua akun GitHub dapat menggunakan Codespaces hingga 60 jam gratis setiap bulan dengan 2 instans inti. Untuk informasi selengkapnya, lihat [GitHub Codespaces bulanan termasuk penyimpanan dan jam inti](https://docs.github.com/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#monthly-included-storage-and-core-hours-for-personal-accounts).

Python Web API

Setelah selesai, Codespaces dimuat dengan bagian terminal di bagian bawah. Codespaces menginstal semua ekstensi yang diperlukan di kontainer Anda. Setelah penginstalan paket selesai, Codespaces menjalankan perintah untuk memulai aplikasi web Anda berjalan di dalam Codespace Anda.uvicorn

Ketika aplikasi web berhasil dimulai, pesan di terminal menunjukkan bahwa server berjalan pada port 8000 dalam Codespace Anda.

Menguji API

Di tab Browser Sederhana Codespace Anda, pada halaman API Python dalam Kontainer, pilih tombol Coba. Halaman FastAPI terbuka di tab Browser Sederhana yang memungkinkan Anda berinteraksi dengan API dengan mengirim permintaan menggunakan halaman yang didokumentasikan sendiri.

Untuk menguji API, pilih tombol POST lalu tombol Coba. Gulir ke bawah tab dan pilih Jalankan. Jika Anda menggulir tab ke bawah lebih jauh, Anda dapat melihat respons terhadap permintaan sampel Anda.

Unit berikutnya: Menggunakan GitHub Copilot dengan Python

Pada unit sebelumnya, kami menunjukkan cara menyiapkan Copilot dan menyebutkan bagaimana hal itu dapat membuat Anda lebih cepat sebagai pengembang yang mulai menulis kode.

Dalam unit ini, kita membahas bagaimana Copilot dapat membantu Anda dengan proyek yang ada dan dengan tugas yang lebih rumit.

Mengembangkan dengan GitHub Copilot

Seringkali ketika kita membangun proyek, kita perlu terus memastikan kode kita segar dan diperbarui. Selain itu, kami mungkin perlu memperbaiki bug yang muncul atau menambahkan fitur baru untuk meningkatkan fungsionalitas dan kegunaan. Mari jelajahi beberapa cara untuk membuat pembaruan dengan GitHub Copilot dan GitHub Copilot Chat, antarmuka obrolan interaktif yang memungkinkan Anda bertanya dan menerima jawaban atas pertanyaan terkait kode.

Rekayasa yang cepat

GitHub Copilot dapat menyarankan kode saat Anda memasukkannya, tetapi Anda juga dapat membuat saran yang berguna dengan membuat petunjuk. Prompt, yang merupakan masukan kami, adalah kumpulan instruksi atau pedoman yang membantu menghasilkan kode. Prompt berguna untuk menghasilkan respons spesifik dari Copilot. Perintah mungkin berupa komentar atau masukan saat menggunakan GitHub Copilot Chat yang mengarahkan Copilot untuk menghasilkan kode atas nama Anda atau menulis kode yang dilengkapi secara otomatis oleh Copilot.

Kualitas output dari Copilot tergantung pada seberapa baik Anda membuat prompt Anda. Merancang prompt yang efektif sangat penting untuk memastikan Anda mencapai hasil yang diinginkan.

Misalnya, pertimbangkan perintah berikut:

# Create an API endpoint

Perintahnya ambigu dan tidak jelas, sehingga hasil dari GitHub Copilot mungkin bukan yang Anda butuhkan. Misalnya, itu bisa menyarankan kode yang menggunakan kerangka kerja yang tidak Anda ketahui, atau titik akhir yang memerlukan data yang tidak Anda kenali.

Sekarang pertimbangkan prompt ini:

# Create an API endpoint using the FastAPI framework that accepts a JSON payload in a POST request

Prompt spesifik, jelas, dan memungkinkan GitHub Copilot memahami tujuan dan ruang lingkup tugas. Anda dapat memberikan konteks dan contoh ke Copilot menggunakan komentar atau kode, tetapi Anda juga dapat menggunakan opsi obrolan GitHub Copilot Chat untuk menyempurnakan prompt Anda. Memiliki prompt yang baik memastikan bahwa model menghasilkan output berkualitas tinggi.

Praktik terbaik menggunakan GitHub Copilot

Copilot meningkatkan produktivitas Anda tetapi memerlukan beberapa praktik yang baik untuk memastikan kualitas. Beberapa praktik terbaik saat menggunakan Copilot adalah:

Jaga agar petunjuk Anda tetap sederhana lalu tambahkan komponen yang lebih rumit saat Anda melanjutkan. Misalnya:

create an HTML form with a text field and button

Selanjutnya, uraikan lebih lanjut tentang prompt untuk mendapatkan saran yang lebih spesifik:

Add an event listen to the button to send a POST request to /generate endpoint and display response in a div with id "result"

Putar di antara saran. Anda dapat melakukannya menggunakan (atau di Mac). Anda mendapatkan berbagai saran dari Copilot, dan Anda dapat memilih hasil terbaik. Secara opsional, saat menggunakan GitHub Copilot Chat, Anda dapat menggunakan input obrolan untuk menambahkan prompt dan berinteraksi dengan output.Ctrl+EnterCmd+Enter

Jika Anda tidak mendapatkan hasil yang diinginkan, Anda dapat menulis ulang perintah atau mulai menulis kode untuk Copilot untuk melengkapi otomatis.

Nota

GitHub Copilot menggunakan file terbuka di editor teks Anda sebagai konteks tambahan. Ini berguna karena memberikan informasi yang berguna selain prompt atau kode yang mungkin Anda tulis. Jika Anda memerlukan GitHub Copilot untuk memberikan saran berdasarkan file lain, Anda dapat membukanya atau menggunakannya dengan perintah Anda saat menggunakan GitHub Copilot Chat.@workspace

Latihan - Perbarui API web Python dengan GitHub Copilot

Mari jelajahi bagaimana Anda dapat memodifikasi repositori Python menggunakan saran kode dari GitHub Copilot untuk membuat formulir HTML interaktif dan titik akhir Application Programming Interface (API). Dengan bekerja dengan repositori ini, Anda dengan cepat mendapatkan langsung aplikasi web Python yang melayani API HTTP yang menghasilkan token pseudo-acak, yang biasa digunakan dalam rutinitas identifikasi.

Apa itu API?

API bertindak sebagai perantara yang memungkinkan aplikasi yang berbeda untuk berkomunikasi satu sama lain. Misalnya, situs cuaca dapat berbagi data historis atau menyediakan fungsionalitas prakiraan melalui API-nya. Dengan menggunakan API, Anda dapat menyematkan data ke situs web Anda atau membuat aplikasi yang berbagi data cuaca dengan fitur lain.

Memperluas API Web

API sudah memiliki satu titik akhir untuk menghasilkan token. Mari kita perbarui API dengan menambahkan titik akhir baru yang menerima teks dan mengembalikan daftar token.

Langkah 1: Tambahkan model Pydantic

Buka file, dan tambahkan komentar sehingga GitHub Copilot dapat menghasilkan model untuk Anda. Model yang dihasilkan akan terlihat seperti contoh ini:main.pyPydantic

class Text(BaseModel):

text: str

Langkah 2: Buat titik akhir baru

Selanjutnya, buat titik akhir baru dengan GitHub Copilot dengan menambahkan komentar:

# Create a FastAPI endpoint that accepts a POST request with a JSON body containing a single field called "text" and returns a checksum of the text

Langkah 3: Tambahkan impor yang diperlukan

Kode yang dihasilkan dapat menyebabkan aplikasi mogok jika modul dan tidak diimpor. Gunakan GitHub Copilot Chat untuk meminta Copilot membantu Anda menambahkan impor yang hilang.base64os

Atau, tambahkan baris berikut ke bagian atas file:

import base64
import os

Terakhir, verifikasi titik akhir baru berfungsi. Cobalah dengan membuka titik akhir dan mengonfirmasi bahwa titik akhir muncul./docs

Selamat, melalui latihan, Anda tidak hanya menggunakan Copilot untuk menghasilkan kode, tetapi Anda juga melakukannya dengan cara yang interaktif dan menyenangkan! Anda dapat menggunakan GitHub Copilot untuk membuat kode, menulis dokumentasi, menguji aplikasi Anda, dan banyak lagi.

Saat Anda menyelesaikan latihan di GitHub, kembali ke sini untuk:

  • Pemeriksaan pengetahuan cepat
  • Ringkasan dari apa yang telah Anda pelajari
  • Lencana untuk menyelesaikan modul ini

image image