Concetti di base

Lavorare con progetti di grandi dimensioni

Gestisci grandi codebase in Bob IDE. Comprendi l'ottimizzazione della finestra di contesto, la gestione dei file e le best practice per progetti su scala aziendale.

Comprendere i limiti del contesto nei progetti di grandi dimensioni

Bob utilizza modelli linguistici di grandi dimensioni che hanno una finestra di contesto limitata. Questa è la quantità massima di testo (misurata in token) che Bob può elaborare contemporaneamente. Se il contesto è troppo grande, Bob potrebbe non essere in grado di comprendere la tua richiesta o generare risposte accurate.

La finestra di contesto include:

  • Il prompt di sistema (istruzioni per Bob)
  • La cronologia della conversazione
  • Il contenuto di tutti i file che menzioni con @
  • Testo selezionato inviato alla chat usando Cmd + L (Mac) o Ctrl + L (Windows/Linux)
  • L'output di tutti i comandi o strumenti che Bob utilizza

Strategie per la gestione del contesto

  1. Sii specifico: Quando fai riferimento a file o codice, usa percorsi di file specifici e nomi di funzioni. Evita riferimenti vaghi come "il file principale".
  2. Usa le menzioni di contesto efficacemente: Usa @/percorso/al/file.ts per includere file specifici. Usa @problems per includere errori e avvisi correnti. Usa @ seguito da un hash di commit per fare riferimento a commit Git specifici. Puoi anche evidenziare il testo nel tuo editor e usare Cmd + L (Mac) o Ctrl + L (Windows/Linux) per inviarlo direttamente alla chat.
  3. Suddividi i compiti: Dividi compiti di grandi dimensioni in sottocompiti più piccoli e gestibili. Questo aiuta a mantenere il contesto focalizzato.
  4. Riassumi quando necessario: Se devi fare riferimento a una grande quantità di codice, considera di riassumere le parti rilevanti nel tuo prompt invece di includere tutto il codice.
  5. Dai priorità alla cronologia corrente: Bob condensa automaticamente i messaggi più vecchi nella cronologia della conversazione per rimanere entro la finestra di contesto. Sii consapevole di questo e reincludi il contesto importante quando necessario.
  6. Configura la gestione dei file di grandi dimensioni: Regola l'impostazione di gestione dei file di grandi dimensioni per controllare come Bob elabora i file che superano una certa soglia di dimensione. Questo aiuta a gestire l'utilizzo del contesto quando si lavora con file di grandi dimensioni.
  7. Gestisci l'utilizzo degli strumenti MCP: Puoi disabilitare e abilitare strumenti specifici in un servizio MCP per utilizzare solo ciò di cui hai bisogno, riducendo il consumo di contesto dalle definizioni di strumenti non utilizzate.
  8. Usa subagent o subtask per lavoro isolato: Per pezzi di lavoro grandi e autonomi, considera l'utilizzo di un subagent o subtask. Entrambi vengono eseguiti nella propria finestra di contesto separata, mantenendo la conversazione principale snella. Vedi Tools per dettagli su spawn_subagent e start_subtask.
  9. Usa strumenti di simboli invece di menzioni di file completi: Invece di menzionare un intero file con @, Bob può usare strumenti come GetSymbolsOverview e FindSymbol per navigare direttamente alla classe o funzione rilevante. Questo recupera solo ciò che è necessario ed evita di caricare il file completo nel contesto.

Esempio: Refactoring di un file di grandi dimensioni

Se devi refactoring di un file TypeScript di grandi dimensioni (src/components/MyComponent.tsx), ecco un approccio efficace:

  1. Ottieni una panoramica iniziale:
    @/src/components/MyComponent.tsx Elenca le funzioni e le classi in questo file.
  2. Mira a funzioni specifiche:
    @/src/components/MyComponent.tsx Refactoring della funzione `processData` per usare `async/await` invece di Promise.
  3. Apporta modifiche iterative: Apporta modifiche piccole e incrementali, rivedendo e approvando ogni passaggio.

Suddividendo il compito e fornendo contesto specifico, puoi lavorare efficacemente con file di grandi dimensioni entro i limiti della finestra di contesto.

Come valuti questo argomento?