Condividi tramite


Assistenza per l'intelligenza artificiale quando si scrive codice

Il completamento automatico di intere righe IntelliCode prevede il blocco successivo del tuo codice in base al tuo codice attuale e lo presenta come una previsione in linea di testo grigio. Immagina il completamento automatico del testo grigio che vedi quando scrivi email, ma applicato al codice.

Questa funzionalità supporta C# in Visual Studio 2022.

screenshot del completamento di righe intere di IntelliCode in Visual Studio.

Come funziona

IntelliCode utilizza un modello transformer su larga scala, addestrato su circa mezzo milione di repository open source pubblici da GitHub. Questo modello esegue stime su ciò che si digita successivamente in base a una conoscenza approfondita di ciò che è stato codificato finora, tra cui:

  • Nomi e posizioni delle variabili
  • Librerie che stai usando
  • Funzioni nel codice nelle vicinanze
  • Elenco di IntelliSense

Il modello viene eseguito sul computer locale, il che consente di rendere disponibile la funzionalità in ambienti offline e isolati fisicamente. La funzionalità supporta C#.

Due modalità

IntelliCode fornisce i completamenti in due modi: uno, quando l'utente digita e due, quando l'utente ha un elemento selezionato nell'elenco IntelliSense.

Modalità 1: completamento automatico a riga intera durante la digitazione

Quando l'utente digita, vengono visualizzati i completamenti automatici dell'intera riga, che è possibile accettare premendo "Tab per accettare". Per ignorare la previsione, è possibile usare i tasti Esc o Delete.

Screenshot che visualizza

Modalità 2: completamento automatico a riga intera quando l'elemento IntelliSense è selezionato

Quando l'utente ha un elemento dall'elenco IntelliSense selezionato, IntelliCode usa ciò che l'utente ha digitato e ciò che l'utente ha selezionato come contesto per fornire stime. In questo caso, viene visualizzata la predizione "Tab Tab per accettare". La prima scheda accetta l'elemento selezionato dall'elenco IntelliSense e la seconda scheda accetta il completamento dell'intera riga. Per ignorare la previsione, è possibile usare i tasti Esc o Delete.

Screenshot che mostra tabulazione per accettare l'elemento di completamento selezionato e il completamento dell'intera riga.

Accettare o ignorare il completamento automatico di intere righe

Per impostazione predefinita, la chiave Tab viene usata per accettare il completamento automatico di intere righe. Per modificare il tasto di accettazione predefinito sulla freccia destra, passare a Strumenti>Opzioni>IntelliCode ->Avanzate.

Abilitare l'impostazione denominata Apply completions for whole lines on right arrow.

Screenshot del menu Impostazioni per modificare la freccia destra per accettare il completamento automatico di intere righe.

Abilitare l'impostazione Apply whole line completions on right arrow.

Screenshot del menu Impostazioni per modificare la freccia destra per accettare il completamento automatico di intere righe.

Per ignorare le operazioni di completamento automatico di intere righe, è possibile usare le chiavi ESC o Delete.

Riservatezza

Consulta la privacy

Controllare il completamento automatico di intere righe

È possibile controllare la funzionalità di completamento automatico dell'intera riga usando la piccola lampadina viola visualizzata in basso a destra dell'editor, accanto al controllo zoom.

Screenshot dell'impostazione per attivare o disattivare il completamento automatico delle linee intere in IntelliCode.

La prima impostazione, Show completions for lines of code consente di attivare o disattivare il completamento automatico di intere righe.

La seconda impostazione, Wait for pauses in typing before showing line completions, se abilitata, fa sì che i completamenti automatici di riga intera appaiano solo se l'utente ha sospeso la digitazione. Questa opzione può essere preferibile se si trovano i completamenti automatici di intere righe distraenti nella modalità predefinita.

La terza impostazione, Show completions on new lines può essere attivata o disattivata a seconda che si desideri visualizzare le operazioni di completamento automatico di intere righe quando si immette una nuova riga, ovvero premendo Return o Enter.

In Tools, Opzioni, IntelliCode, Generale, l'impostazione Show inline completions consente di attivare o disattivare le operazioni di completamento automatico di intere righe.

La scheda avanzata include altre opzioni.

Screenshot dell'impostazione per attivare o disattivare il completamento automatico dell'intera riga in IntelliCode.

La prima impostazione, Apply whole line completions on right arrow è stata descritta in precedenza in questo articolo.

La seconda impostazione, Disable suggestions while debugging consente di ridurre al minimo le distrazioni durante il debug.

La terza impostazione, Show inline completions on new lines può essere attivata o disattivata a seconda che si desideri visualizzare le operazioni di completamento automatico di intere righe quando si immette una nuova riga, ovvero premendo Return o Enter.

L'ultima impostazione, Wait for pauses in typing before showing line completions, se abilitata, rende visualizzate le operazioni di completamento automatico di riga intera solo se si sospende la digitazione. Potresti preferire questa opzione se i completamenti automatici delle intere righe risultano distraenti nella modalità predefinita.

Inviare commenti e suggerimenti

Fare clic sull'icona Commenti e suggerimenti in alto a destra di Visual Studio per inviare un ticket di feedback. Facoltativamente, è possibile caricare i file di log di IntelliCode nel ticket di feedback per fornire un contesto aggiuntivo. Assicurarsi di esaminare il contenuto dei file di log e risolvere eventuali problemi di privacy che potrebbero verificarsi. Questi dati, se condivisi con Microsoft, non verranno usati per scopi diversi dalla fornitura di assistenza per l'utente. È possibile trovare i log in %LOCALAPPDATA%\Temp\VSFeedbackIntelliCodeLogs

Screenshot dell'invio di commenti e suggerimenti per IntelliCode.

Passaggi successivi

Consulta la privacy