Usare GitHub Copilot con Python

Completato

Nelle unità precedenti è stato illustrato come configurare Copilot e come questo strumento può migliorare la velocità di uno sviluppatore che inizia a scrivere codice.

In questa unità verrà illustrato in che modo Copilot può essere utile per i progetti esistenti e per semplificare le attività più complesse.

Sviluppo con GitHub Copilot

Spesso, quando si compilano progetti, è necessario assicurarsi che il codice sia costantemente aggiornato. Inoltre, potrebbe essere necessario correggere eventuali bug che si presentano o aggiungere nuove funzionalità per migliorare la funzionalità e l'usabilità. Verranno ora esaminati alcuni modi per apportare aggiornamenti con GitHub Copilot e GitHub Copilot Chat, un'interfaccia di chat interattiva per porre domande relative al codice e ricevere risposte.

Progettazione prompt

GitHub Copilot può suggerire codice durante l'immissione, ma è anche possibile creare suggerimenti utili creando richieste (prompt). Una richiesta, ovvero l'input, è una raccolta di istruzioni o linee guida che consentono di generare codice. Una richiesta è utile per generare risposte specifiche da Copilot. La richiesta potrebbe essere un commento o un input quando si usa GitHub Copilot Chat che guida Copilot a generare codice per conto dell'utente o scrivere codice di cui Copilot esegue il completamento automatico.

La qualità dell'output di Copilot dipende dal modo in cui si crea la richiesta (prompt). La progettazione di un prompt efficace è fondamentale per garantire il raggiungimento del risultato desiderato.

Ad esempio, si consideri la richiesta (prompt) seguente:

# Create an API endpoint

Poiché la richiesta (prompt) è ambigua e vaga, il risultato di GitHub Copilot potrebbe non essere quello necessario. Potrebbe, ad esempio, suggerire codice che usa un framework che non si conosce o un endpoint che richiede dati non riconosciuti.

Si consideri ora questa richiesta:

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

Quest'ultima richiesta è specifica, chiara e consente a GitHub Copilot di comprendere l'obiettivo e l'ambito dell'attività. È possibile fornire contesto ed esempi a Copilot usando commenti o codice, ma è anche possibile usare l'opzione chat di GitHub Copilot Chat per migliorare la richiesta. Una buona richiesta garantisce che il modello generi un output di alta qualità.

Procedure consigliate per l'uso di GitHub Copilot

Copilot ottimizza la produttività, ma richiede alcune procedure consigliate per garantire la qualità. Alcune procedure consigliate per l'uso di Copilot sono:

Tenere le richieste semplici e quindi aggiungere componenti più elaborati man mano che si va avanti. Ad esempio:

create an HTML form with a text field and button

Successivamente, approfondire la richiesta per ottenere suggerimenti più specifici:

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

Scorrere tra i suggerimenti. È possibile farlo usando Ctrl+Enter (o Cmd+Enter in un Mac). Si ottengono vari suggerimenti da Copilot ed è possibile scegliere l'output migliore. Facoltativamente, quando si usa GitHub Copilot Chat, è possibile usare l'input della chat per aggiungere il prompt e interagire con l'output.

Se non si ottengono i risultati desiderati, è possibile riformulare la richiesta (prompt) o iniziare a scrivere codice per il completamento automatico di Copilot.

Nota

GitHub Copilot usa i file aperti nell'editor di testo come contesto aggiuntivo. Ciò è prezioso perché si ottengono informazioni utili oltre alla richiesta o al codice che è possibile scrivere. Se è necessario GitHub Copilot per fornire suggerimenti basati su altri file, è possibile aprirli o usare @workspace con il prompt quando si usa GitHub Copilot Chat.