Przejdź do treści
← Kurs M04L04 · Kontekst w praktyce 📘
📘 Podstawowy M04L04 M04 · Lekcja 4 z 4 10 min Ćwiczenie

Antywzorce: co niszczy jakość odpowiedzi Copilota

Najczęstsze błędy przy korzystaniu z Copilot Chat - ogólne pytania, brak kontekstu, zbyt długie sesje, myślenie chatbotowe.

Czego się nauczysz

  • Jakie nawyki najczęściej psują jakość odpowiedzi Copilota
  • Dlaczego problem zwykle nie leży tylko w modelu
  • Jak zamienić antywzorce na prostszy i skuteczniejszy workflow

Większość słabych odpowiedzi nie bierze się z głupiego modelu

To jest niewygodna, ale bardzo praktyczna prawda.

Gdy Copilot odpowiada słabo, najłatwiej powiedzieć: model jest kiepski.

Czasem to prawda. Ale w codziennej pracy dużo częściej winne są złe nawyki użytkownika:

  • zbyt ogólne pytanie
  • brak właściwego kontekstu
  • przeładowana sesja
  • oczekiwanie, że indexing rozwiąże wszystko
  • traktowanie chatu jak magicznego audytu całego repo

Ta lekcja jest właśnie o tych błędach.

Antywzorzec 1: pytanie z gatunku “domyśl się”

Docs o context i workspace context powtarzają ten sam wniosek różnymi słowami: unikaj mglistego “what does this do” i innych pytań, gdzie this może znaczyć wszystko.

To najczęstsza przyczyna ogólnikowych odpowiedzi.

Przykłady słabych pytań:

  • co to robi
  • jak działa ta logika
  • czemu to nie działa

Takie pytania nie mówią modelowi:

  • o którym pliku mówisz
  • o którym fragmencie mówisz
  • czy chodzi o projekt, selection czy ostatni błąd

Lepsza wersja zwykle wymaga jednej z dwóch rzeczy:

  • doprecyzowania w języku
  • albo jeszcze lepiej: dołączenia kontekstu przez #file, #selection, #codebase czy @terminal

Antywzorzec 2: wiara, że implicit context zawsze wystarczy

To, że masz otwarty plik, nie oznacza jeszcze, że rozmowa będzie dobra.

Implicit context pomaga, ale nie zastępuje explicit context.

Jeżeli temat zahacza o kilka plików, dokumentację zewnętrzną albo wymaga wymuszenia konkretnego zakresu, samo otwarcie edytora zwykle nie wystarcza.

To jest bardzo częsty błąd szczególnie u osób, które już wiedzą, że VS Code “sam dodaje kontekst”. Zaczynają wtedy zakładać, że system sam zrozumie wszystko. Nie zrozumie.

Antywzorzec 3: jedna sesja do wszystkiego

Docs są tu wyjątkowo jednoznaczne: nowa sesja dla nowego zadania.

A mimo to wiele osób prowadzi jedną rozmowę przez pół dnia:

  • najpierw bug
  • potem refaktor
  • potem pytanie o terminal
  • potem plan funkcji

Efekt jest łatwy do przewidzenia. Historia zaczyna mieszać cele, założenia i terminy. Stary kontekst konkuruje z nowym. Odpowiedzi tracą ostrość.

To nie jest detal organizacyjny. To jest problem jakości wejścia.

Jeżeli temat się zmienia, nowa sesja zwykle jest tańsza niż ratowanie starej rozmowy przez kolejne dopowiedzenia.

Antywzorzec 4: wrzucanie za dużo kontekstu na raz

To jest drugi skrajny błąd.

Po lekcji o kontekście łatwo popaść w przesadę i dorzucać wszystko:

  • pół repo
  • kilka plików, które ledwo są związane z problemem
  • długi terminal output
  • poboczne wątki z historii rozmowy

Docs mówią wprost: be selective with context.

Więcej kontekstu nie jest automatycznie lepsze. Zbyt duży albo zbyt szeroki kontekst zwiększa szum i zjada context window. Lepszy jest kontekst trafny, nie maksymalny.

Antywzorzec 5: mylenie #codebase z pełną analizą wszystkiego

To bardzo częsty skrót myślowy.

Dodanie #codebase nie oznacza, że Copilot zrobi kompletny audyt repo i policzy każde wywołanie każdej funkcji z gwarancją pełności.

Dokumentacja workspace-context ostrzega przed takimi oczekiwaniami wprost. System może korzystać z wielu źródeł i dać bardzo wartościową odpowiedź, ale to nadal nie jest formalna analiza całego programu w sensie statycznego audytu.

Jeśli potrzebujesz twardej odpowiedzi typu:

  • dokładnie ile razy coś jest wywołane
  • kto zmieniał ten plik
  • jakie są wszystkie naruszenia polityki

to często potrzebujesz konkretnych narzędzi, searcha, git historii, MCP albo weryfikacji terminalowej, a nie samej rozmowy.

Antywzorzec 6: ignorowanie context window

Wskaźnik context window nie jest kosmetyką.

Jeśli go ignorujesz, po pewnym czasie rozmowa zaczyna być kompresowana albo robi się za ciężka. Model ma mniej miejsca na nowe rzeczy, a więcej starych wątków konkuruje o uwagę.

To jest moment, kiedy warto:

  • zacząć nową sesję
  • użyć /compact
  • odciąć poboczny temat

Ignorowanie tego wskaźnika to jeden z prostszych sposobów na powolne pogarszanie jakości rozmowy bez jasnego powodu.

Antywzorzec 7: oczekiwanie wiedzy spoza kontekstu

Docs o #fetch bardzo dobrze przypominają, że jeśli chcesz pracować na najnowszej dokumentacji, warto ją dołączyć z webu.

Antywzorzec polega na tym, że użytkownik pyta o aktualne API, najnowszy release albo świeżą migrację, ale nie dostarcza żadnego bieżącego źródła.

Potem dziwi się, że odpowiedź brzmi ogólnie albo korzysta ze starego wzorca.

To nie problem modelu. To problem tego, że nie dostał aktualnych danych wejściowych.

Lepszy workflow zamiast tych błędów

Na bazie wszystkich docs z M04 można zbudować prostą, praktyczną listę zamienników:

  • zamiast ogólnych pytań: pytania z konkretnym zakresem i context itemami
  • zamiast jednej długiej sesji: nowa sesja dla nowego celu
  • zamiast wrzucania wszystkiego: selektywny kontekst
  • zamiast wiary w sam indexing: explicit references tam, gdzie temat jest niejednoznaczny
  • zamiast pracy na starych danych: URL albo #fetch

To jest właśnie dojrzalszy sposób używania Copilota.

Ćwiczenie praktyczne

Weź jedno słabe pytanie, które naprawdę mógłbyś zadać w pracy, na przykład: “czemu to nie działa?”.

Potem popraw je w czterech krokach:

  1. Dodaj konkretny plik albo #selection.
  2. Jeśli trzeba, uruchom nową sesję zamiast używać starej.
  3. Dodaj #codebase tylko wtedy, gdy temat jest naprawdę repo-wide.
  4. Jeśli chodzi o aktualne API, dołącz URL albo #fetch.

Na końcu oceń, która zmiana dała największy wzrost jakości odpowiedzi.

W praktyce zwykle okazuje się, że największy zysk daje nie bardziej wymyślny prompt, tylko prostszy i lepiej osadzony workflow.

Kluczowe wnioski

  • Najczęstsze słabe odpowiedzi wynikają ze słabego workflow, a nie tylko ze słabego modelu.
  • Ogólne pytania, zbyt szeroki kontekst i jedna sesja do wszystkiego to trzy najczęstsze błędy.
  • #codebase pomaga, ale nie zamienia chatu w pełny audyt całego repo.
  • Context window trzeba monitorować, bo przeładowana rozmowa pogarsza kolejne odpowiedzi.
  • Najlepszą poprawą jakości zwykle jest konkretniejszy zakres i lepszy context item, nie bardziej ozdobny prompt.

Co dalej

Masz już praktyczny fundament pracy z kontekstem, więc następnym logicznym krokiem jest wejście w promptowanie i zobaczenie, jak układać zadania tak, żeby ten kontekst był naprawdę dobrze wykorzystany.