4.6 KiB
Różnice: Tryb Czat (Chat Mode) vs. Tryb Agent (Agent Mode) w Gemini
W rozszerzeniu Gemini dla Visual Studio Code istnieją dwa fundamentalnie różne sposoby interakcji z modelem językowym. Zrozumienie różnicy między nimi jest kluczowe, aby w pełni wykorzystać potencjał tego narzędzia.
Podsumowanie w Tabeli
| Cecha / Zdolność | Tryb Czat (Chat Mode) | Tryb Agent (Agent Mode) |
|---|---|---|
| Główny Cel | Konwersacja, generowanie kodu, odpowiadanie na pytania | Wykonywanie zadań, modyfikacja projektu, automatyzacja |
| Interakcja z Plikami | ❌ Nie (może tylko czytać otwarte pliki w kontekście) | ✅ Tak (może czytać, pisać i modyfikować pliki w całym projekcie) |
| Wykonywanie Komend | ❌ Nie | ✅ Tak (może uruchamiać komendy w terminalu, np. testy, buildy, instalacje) |
| Świadomość Projektu | Ograniczona (kontekst rozmowy i otwarty plik) | Pełna (może przeszukiwać całą strukturę plików i katalogów) |
| Sposób Działania | Odpowiada na Twoje polecenia w formie tekstu | Tworzy plan działania i wykonuje go krok po kroku, używając narzędzi |
| Typowe Zastosowania | "Jak napisać funkcję X?", "Wyjaśnij ten fragment kodu" | "Zrefaktoryzuj tę klasę", "Dodaj testy dla tej funkcji", "Zainstaluj nową bibliotekę" |
Czym jest Tryb Czat (Chat Mode)?
Tryb czatu to klasyczna konwersacja z AI, jaką znasz z innych narzędzi. Działa na zasadzie pytanie-odpowiedź.
- Działa jak rozmówca: Zadajesz pytania, prosisz o wyjaśnienia lub o wygenerowanie fragmentów kodu, a Gemini odpowiada w formie tekstu w oknie czatu.
- Brak dostępu do środowiska: Model nie ma bezpośredniego dostępu do Twojego systemu plików ani terminala. Nie może samodzielnie zapisać pliku, uruchomić testów ani zainstalować zależności. Jego wiedza o projekcie jest ograniczona do kodu, który mu wkleisz, lub do aktualnie otwartego pliku, który jest częścią kontekstu.
- Idealny do: Szybkiego prototypowania, generowania kodu "boilerplate", nauki i zrozumienia koncepcji programistycznych, burzy mózgów.
Przykład: Prosisz: "Napisz funkcję w Pythonie, która sortuje listę liczb". Gemini odpowiada gotowym fragmentem kodu, który możesz skopiować i wkleić.
Czym jest Tryb Agent (Agent Mode)?
Tryb agenta to zaawansowana forma współpracy, w której przekazujesz modelowi cel, a on sam podejmuje działania, aby go zrealizować. To jest tryb, w którym obecnie pracujemy.
- Działa jak autonomiczny asystent: Zamiast tylko odpowiadać tekstem, agent ma dostęp do zestawu narzędzi (
tools). Może na przykład:- Czytać i pisać pliki (
read_file,write_file). - Modyfikować istniejący kod (
replace). - Przeszukiwać projekt (
search_file_content,glob). - Uruchamiać komendy w terminalu (
run_shell_command).
- Czytać i pisać pliki (
- Pełna świadomość projektu: Agent może samodzielnie przeglądać strukturę katalogów, analizować zależności między plikami i wprowadzać zmiany w całym projekcie.
- Planowanie i wykonywanie: Kiedy dajesz mu zadanie (np. "dodaj nową funkcjonalność"), agent najpierw tworzy plan (np. "1. Utworzyć plik X, 2. Dodać kod Y, 3. Zaktualizować plik Z, 4. Uruchomić testy"), a następnie wykonuje go krok po kroku, informując Cię o postępach.
- Bezpieczeństwo: Każda potencjalnie niebezpieczna akcja (jak modyfikacja pliku czy uruchomienie komendy) wymaga Twojego zatwierdzenia.
- Idealny do: Refaktoryzacji kodu, implementacji nowych funkcji, pisania i uruchamiania testów, automatyzacji powtarzalnych zadań, konfigurowania środowiska.
Przykład: Prosisz: "Dodaj nową regułę do mojego pliku konfiguracyjnego lintera". Agent samodzielnie znajduje plik konfiguracyjny, odczytuje go, dodaje nową regułę we właściwym formacie i zapisuje zmiany.
Kiedy którego używać?
- Użyj Trybu Czat, gdy potrzebujesz szybkiej odpowiedzi, fragmentu kodu lub wyjaśnienia. Traktuj go jak wszechwiedzącego partnera do rozmowy.
- Użyj Trybu Agent, gdy masz do wykonania zadanie, które wymaga interakcji z projektem. Traktuj go jak młodszego programistę, któremu zlecasz zadania do wykonania.