Il motore di contesto di Devin Desktop costruisce una comprensione approfondita della tua codebase, delle azioni passate e di ciò che intendi fare dopo. Storicamente, gli approcci alla generazione di codice si sono concentrati sul fine-tuning dei modelli linguistici di grandi dimensioni (LLM) su una codebase, un processo difficile da scalare per soddisfare le esigenze di ogni singolo utente. Un approccio più recente e diffuso sfrutta la retrieval-augmented generation (RAG), che si concentra su tecniche per costruire prompt altamente pertinenti e ricchi di contesto così da ottenere risposte accurate da un LLM. Abbiamo implementato un approccio RAG ottimizzato per il contesto della codebase, che produce suggerimenti di qualità superiore e riduce le allucinazioni.Documentation Index
Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
Use this file to discover all available pages before exploring further.
Devin Desktop offre un fine-tuning completo per i clienti Enterprise, e la soluzione migliore
combina fine-tuning e RAG.
Contesto predefinito
- Il file corrente e gli altri file aperti nel tuo IDE, che spesso sono molto pertinenti al codice che stai scrivendo.
- L’intera codebase locale viene quindi indicizzata (inclusi i file che non sono aperti), e gli snippet di codice pertinenti vengono recuperati dal motore di recupero di Devin Desktop mentre scrivi codice, fai domande o invochi comandi.
- Per gli utenti Pro, offriamo lunghezze del contesto maggiori, limiti di indicizzazione più elevati e limiti superiori per il contesto personalizzato e gli elementi di contesto bloccati.
- Per gli utenti Teams ed Enterprise, Devin Desktop può anche indicizzare repository remoti. Questo è utile per le aziende la cui organizzazione di sviluppo lavora su più repository.
Knowledge Base (Beta)
Disponibile solo per Teams e clienti Enterprise.
Knowledge Base
Configura le impostazioni della Knowledge Base per il tuo team. Questa pagina sarà visibile solo agli admin.
Buone pratiche
- Definizioni dei moduli: bloccare i file di definizione di classi/struct che si trovano nella tua repo, ma in un modulo separato dal file attualmente attivo.
- Framework/Librerie interne: bloccare directory con esempi di codice per l’uso di framework/librerie.
- Attività specifiche: bloccare un file o una cartella che definisce una particolare interfaccia (ad es. file
.proto, file di classi astratte, template di configurazione). - Area di focus corrente: bloccare la directory comune più specifica che contiene la maggior parte dei file necessari per la sessione di coding corrente.
- Testing: bloccare un file specifico con la classe per cui stai scrivendo i test unitari.
