Podstawowe koncepcje
Praca z dużymi projektami
Zarządzaj dużymi bazami kodu w Bob IDE. Zrozum optymalizację okna kontekstu, obsługę plików i najlepsze praktyki dla projektów na skalę przedsiębiorstwa.
Zrozumienie limitów kontekstu w dużych projektach
Bob używa dużych modeli językowych, które mają ograniczone okno kontekstu. To jest maksymalna ilość tekstu (mierzona w tokenach), którą Bob może przetworzyć na raz. Jeśli kontekst jest zbyt duży, Bob może nie być w stanie zrozumieć twojego żądania lub wygenerować dokładnych odpowiedzi.
Okno kontekstu obejmuje:
- Prompt systemowy (instrukcje dla Boba)
- Historię konwersacji
- Zawartość wszystkich plików, które wspominasz używając
@ - Zaznaczony tekst wysłany do czatu za pomocą Cmd + L (Mac) lub Ctrl + L (Windows/Linux)
- Wyniki wszystkich poleceń lub narzędzi, których używa Bob
Strategie zarządzania kontekstem
- Bądź konkretny: Gdy odwołujesz się do plików lub kodu, używaj konkretnych ścieżek plików i nazw funkcji. Unikaj niejasnych odniesień jak "główny plik".
- Używaj wzmianek kontekstu efektywnie: Użyj
@/path/to/file.ts, aby uwzględnić konkretne pliki. Użyj@problems, aby uwzględnić bieżące błędy i ostrzeżenia. Użyj@po którym następuje hash commita, aby odwołać się do konkretnych commitów Git. Możesz również zaznaczyć tekst w edytorze i użyć Cmd + L (Mac) lub Ctrl + L (Windows/Linux), aby wysłać go bezpośrednio do czatu. - Podziel zadania: Podziel duże zadania na mniejsze, bardziej zarządzalne podzadania. To pomaga utrzymać kontekst skoncentrowany.
- Podsumowuj, gdy to konieczne: Jeśli musisz odwołać się do dużej ilości kodu, rozważ podsumowanie istotnych części w swoim prompcie zamiast uwzględniania całego kodu.
- Priorytetyzuj najnowszą historię: Bob automatycznie kondensuje starsze wiadomości w historii konwersacji, aby pozostać w ramach okna kontekstu. Bądź świadomy tego i ponownie uwzględnij ważny kontekst, jeśli to konieczne.
- Skonfiguruj obsługę dużych plików: Dostosuj ustawienie obsługi dużych plików, aby kontrolować, jak Bob przetwarza pliki przekraczające określony próg rozmiaru. To pomaga zarządzać użyciem kontekstu podczas pracy z dużymi plikami.
- Zarządzaj użyciem narzędzi MCP: Możesz wyłączać i włączać określone narzędzia w usłudze MCP, aby używać tylko tego, czego potrzebujesz, zmniejszając zużycie kontekstu przez nieużywane definicje narzędzi.
- Używaj subagentów lub subtasków do izolowanej pracy: W przypadku dużych, samodzielnych części pracy rozważ użycie subagenta lub subtaska. Oba działają we własnym oddzielnym oknie kontekstu, utrzymując główną konwersację lekką. Zobacz Tools, aby uzyskać szczegóły dotyczące
spawn_subagentistart_subtask. - Używaj narzędzi symboli zamiast pełnych wzmianek plików: Zamiast wspominać cały plik za pomocą
@, Bob może używać narzędzi takich jakGetSymbolsOverviewiFindSymbol, aby nawigować bezpośrednio do odpowiedniej klasy lub funkcji. To pobiera tylko to, co jest potrzebne i unika ładowania pełnego pliku do kontekstu.
Przykład: Refaktoryzacja dużego pliku
Jeśli musisz zrefaktoryzować duży plik TypeScript (src/components/MyComponent.tsx), oto efektywne podejście:
- Uzyskaj wstępny przegląd:
@/src/components/MyComponent.tsx Wyświetl funkcje i klasy w tym pliku. - Celuj w konkretne funkcje:
@/src/components/MyComponent.tsx Refaktoryzuj funkcję `processData`, aby używała `async/await` zamiast Promises. - Wprowadzaj iteracyjne zmiany: Wprowadzaj małe, przyrostowe zmiany, przeglądając i zatwierdzając każdy krok.
Dzieląc zadanie i dostarczając konkretny kontekst, możesz efektywnie pracować z dużymi plikami w ramach limitów okna kontekstu.
Jak oceniasz ten temat?