Agent zgłoszeń w ChatGPT: przepis w sześciu krokach

Temat: Usługi techniczne i serwisowe

W sześciu krokach zbudujecie w projekcie ChatGPT agenta, który czyta zgłoszenia serwisowe z pięciu kanałów, przypina każde do urządzenia i umowy, nadaje priorytet, liczy termin reakcji w godzinach obsługi z umowy i wykrywa, że dwa telefony to jedno zdarzenie. Agent kładzie dyspozytorowi na biurku tabelę zgłoszeń i proponowaną kolejność, ale nie przydziela technika i nie obiecuje klientowi terminu. Stan funkcji sprawdzony 15.10.2026 w dokumentacji projektów ChatGPT.

To przepis do karty agenta zgłoszeń z serii o usługach technicznych i serwisowych jako jednym systemie. Pracujemy na tych samych danych ćwiczeniowych co w pozostałych przepisach: osiem zgłoszeń z jednego poranka, dziewięć urządzeń u czterech klientów i cztery umowy o różnym poziomie gwarantowanego czasu reakcji (SLA). Wszystkie dane są fikcyjne, łącznie z piekarnią, która ma dwa piece tego samego modelu.

Gotowy skill. Procedurę agenta zgłoszeń serwisowych z tego przepisu znajdziecie jako gotowy skill w otwartym repozytorium moja-firma-serwis na GitHubie, razem z danymi ćwiczeniowymi i wynikiem kontrolnym. Działa w Claude, Microsoft 365 Copilot, ChatGPT i Gemini. Jak z niego skorzystać.

Co zbudujesz

Projekt w ChatGPT ze stałymi instrukcjami i dwoma plikami z parkiem urządzeń i umowami. Do nowej rozmowy w projekcie dołączasz arkusz ze zgłoszeniami z poranka i dostajesz to, co dziś kosztuje dyspozytora godzinę telefonów do techników.

WejścieCo robi agentWynik
Zgłoszenia z pięciu kanałów (XLSX w rozmowie)rozpoznaje klienta, obiekt i urządzenie, także po skróconej nazwiekażde zgłoszenie przypięte do numeru seryjnego albo oznaczone „do dopytania”
Kartoteka urządzeńczyta historię i uwagi (drugi piec w obiekcie, powtarzająca się usterka)priorytet z uzasadnieniem
Umowy serwisoweliczy termin reakcji w godzinach obsługi z umowy, przy 24/7 kalendarzowostart zegara i termin reakcji dla każdego zgłoszenia
Wszystko razemscala duplikaty, wyłącza przeglądy i klientów bez umowy, proponuje kolejnośćtabela zgłoszeń, lista spraw do dopytania, kolejność dla dyspozytora

Czym ChatGPT różni się od pozostałych trzech narzędzi w tym zadaniu. Liczenie robi analiza danych: ChatGPT pisze i uruchamia Pythona w notatniku Jupyter i czyta zarówno XLSX, jak i CSV, w przeciwieństwie do Agent Buildera w Microsoft 365 Copilot, którego wiedza bierze tylko XLSX. Najwięcej zmienia się wokół projektu: dawny tryb agenta zastąpił ChatGPT Work, własne GPT są wycofywane, a do automatyzacji służą workspace agents. Dlatego ten przepis stoi na projekcie, czyli na części, która się nie zmienia. Gemini z kolei czyta pliki prosto z Dysku Google, tutaj pliki wgrywacie do projektu.

Czego potrzebujesz

  • Workspace’u ChatGPT na planie Business albo Enterprise. Na stronie OpenAI Business kosztuje 25 USD za użytkownika miesięcznie albo 20 USD przy płatności rocznej, przy minimum dwóch użytkownikach; traktujcie to jako orientację, bo OpenAI wspomina też miejsca Standard i Premium, których cennik nie pokazuje, więc cenę potwierdźcie przed zakupem. Projekt na tych planach mieści do 40 plików.
  • Uprawnień do tworzenia i udostępniania projektów. Nadaje je administrator workspace’u (krok 1).
  • Danych ćwiczeniowych: zgloszenia.xlsx, urzadzenia.xlsx, umowy.xlsx. Ten sam komplet w CSV (UTF-8, separator średnik) i w jednym archiwum: agent-ut-dane-cwiczeniowe.zip. Analiza danych czyta oba formaty; w przepisie używamy XLSX, żeby nie walczyć z separatorem.

Czego ten agent nie zrobi

Nie przydzieli technika i nie poinformuje klienta o terminie wizyty. Kolejność, którą proponuje, jest propozycją dla dyspozytora; o tym, czy jechać w nocy do usterki, którą klient sam nazwał „nie pilną”, choć umowa 24/7 tego nie rozróżnia, decyduje człowiek. Czy przyjąć klienta bez umowy i na jakich warunkach, rozstrzyga kierownik serwisu. Agent pokazuje, co jest w umowie i ile zostało do terminu, żeby te decyzje zapadły na danych, a nie na tym, kto głośniej dzwonił.

Nie zastąpi też porządku w kartotece. Jeśli urządzenia u klientów nie mają numerów seryjnych nigdzie poza zdjęciami w telefonach techników, agent nie ma do czego przypiąć zgłoszenia. Gorzej: model chętnie wypełni lukę czymś, co brzmi wiarygodnie, na przykład „prawdopodobnie piec PK-44120”. W prawdziwej firmie zacznijcie od jednego arkusza z parkiem urządzeń: numer seryjny, model, klient, obiekt, umowa. Dopiero potem agent.

Krok 1. Sprawdź uprawnienia w workspace

Administrator otwiera Workspace settings → Permissions & roles → Projects i włącza „Create and manage projects” oraz „Share projects”. Projekty dziedziczą ustawienia narzędzi, retencji i rezydencji danych z workspace’u, więc to też dobry moment, żeby sprawdzić, co administrator tam ustawił.

Powinieneś zobaczyć w pasku bocznym Projects z możliwością założenia nowego projektu. Jeśli go nie ma, uprawnienie jest wyłączone.

Krok 2. Załóż projekt i wpisz instrukcje

W pasku bocznym wybierz Projects i załóż nowy projekt o nazwie „Agent zgłoszeń”. Potem otwórz menu projektu (•••) → Project settings i wklej instrukcje poniżej. Obowiązują tylko w tym projekcie i mają pierwszeństwo przed Twoimi globalnymi instrukcjami.

Jesteś agentem zgłoszeń w firmie serwisowej (serwis urządzeń u klienta, technicy w terenie, umowy SLA).
Pracujesz na plikach projektu:
- urzadzenia.xlsx: park urządzeń u klientów (numer seryjny, model, typ, klient, obiekt, umowa,
  ostatnia naprawa, liczba zgłoszeń z 12 miesięcy, uwagi),
- umowy.xlsx: umowy serwisowe (poziom, czas reakcji i naprawy w godzinach, godziny obsługi,
  rozliczenie, ryczałt miesięczny).

Gdy dostaniesz listę zgłoszeń (plik zgloszenia.xlsx w rozmowie), dla każdego zgłoszenia zrób kolejno:
1. Rozpoznaj klienta, obiekt i urządzenie po nazwie firmy, obiekcie, modelu i treści. Nazwy w zgłoszeniu
   bywają skrócone („Bochen” to Piekarnia Rzemieślnicza Bochen sp. z o.o.). Jeśli pasuje więcej niż jedno
   urządzenie, wypisz wszystkie i oznacz zgłoszenie jako „do dopytania”. Jeśli nie pasuje żadne, wpisz
   „brak w kartotece”.
2. Przypnij umowę z pliku umowy.xlsx po kliencie. Klient bez umowy to „poza umową”: zegar SLA nie biegnie.
3. Nadaj priorytet: krytyczny (produkcja stoi, temperatura produktu, zagrożenie ludzi), wysoki (urządzenie
   nieczynne, powtarzająca się usterka, urządzenie pod dozorem), normalny (komfort, usterka bez przestoju),
   przegląd planowy (termin z umowy, nie awaria; nie uruchamia zegara awarii).
4. Policz termin reakcji: start zegara to data i godzina zgłoszenia; dodaj czas reakcji z umowy, licząc
   tylko godziny obsługi z umowy (przy 24/7 godziny kalendarzowe). Czas poza godzinami obsługi nie liczy
   się do zegara; zgłoszenie złożone poza nimi startuje na początku najbliższych godzin obsługi.
   Jeśli termin już minął, napisz to wprost.
5. Wykryj duplikaty: dwa zgłoszenia tego samego klienta o tym samym urządzeniu i zdarzeniu, z różnych
   kanałów, to jedno zdarzenie. Scal je; zegar liczy się od wcześniejszego.
6. Wypisz, czego brakuje, żeby wysłać technika (który egzemplarz, kod błędu, potwierdzenie alarmu
   u klienta, zgoda na wycenę).
7. Zaproponuj kolejność obsługi: najpierw zgłoszenia, których termin reakcji przypada dziś albo już minął,
   w ich obrębie według priorytetu (krytyczny, wysoki, normalny), a przy równym priorytecie według terminu;
   zgłoszenie krytyczne, które czeka na odpowiedź klienta, ustaw za krytycznym gotowym do obsługi.
   Potem zgłoszenia z terminem w kolejnych dniach, potem przeglądy planowe (w oknie klienta),
   na końcu zgłoszenia poza umową, oznaczone „decyzja kierownika serwisu”.

Zasady:
- Licz w Pythonie (analiza danych) na plikach projektu i na załączniku, nie z pamięci.
  Przy każdym terminie podaj, z których wierszy (urządzenie, umowa) pochodzi.
- Nie dopisuj urządzeń ani umów, których nie ma w plikach. Brak danych nazwij wprost.
- Nie przydzielasz technika i nie obiecujesz klientowi terminu wizyty. Kolejność jest propozycją
  dla dyspozytora; obsługa klienta bez umowy to decyzja kierownika serwisu.
- Wynik: tabela zgłoszeń (zgłoszenie, urządzenie, klient, umowa, priorytet, start zegara, termin reakcji,
  uwagi), lista duplikatów i spraw do dopytania, proponowana kolejność.

Reguła liczenia zegara jest jawna celowo — tylko godziny obsługi z umowy, przy 24/7 kalendarzowo — więc dyspozytor może się z nią kłócić, zamiast ufać „intuicji modelu”. Zasada „zgłoszenie krytyczne, które czeka na odpowiedź klienta, za krytycznym gotowym do obsługi” sprawia, że piekarnia z dwoma piecami nie blokuje komory chłodniczej z mięsem.

Krok 3. Dodaj pliki projektu

Dodaj do plików projektu urzadzenia.xlsx i umowy.xlsx. Zajmą 2 z 40 miejsc i są daleko od limitów wielkości (ok. 50 MB dla arkusza). Nazwy kolumn znajdziesz w pierwszym wierszu każdego arkusza; jeśli w swoich danych użyjesz innych, popraw je w instrukcji.

Zgłoszeń nie dodawaj do plików projektu. Pliki projektu to Wasz park urządzeń i umowy, obowiązujące w każdej rozmowie. Zgłoszenia z poranka są sprawą na dziś i trafiają do pojedynczej rozmowy.

Krok 4. Uruchom agenta na zgłoszeniach

W projekcie rozpocznij nową rozmowę, dołącz zgloszenia.xlsx i napisz:

Dziś jest poniedziałek 7.09.2026, godzina 9:30. W załączniku zgłoszenia z ostatniej doby. Przeprowadź triage według instrukcji projektu, licząc w Pythonie na plikach projektu i na załączniku.

Powinieneś zobaczyć, że ChatGPT uruchamia analizę danych (kod w Pythonie), czyta oba arkusze projektu i załącznik, a potem odpowiada w kolejności z instrukcji: tabela zgłoszeń z urządzeniem, umową, priorytetem i terminem, lista duplikatów i spraw do dopytania, proponowana kolejność. Jedno zastrzeżenie: strona pomocy o projektach nie wymienia analizy danych wprost wśród narzędzi projektu. Jeśli w odpowiedzi nie widać uruchomionego kodu, poproś o niego wprost i nie przyjmuj terminów, dopóki go nie zobaczysz. Na własnych danych usuńcie z promptu datę — agent weźmie bieżącą; w ćwiczeniu podajemy ją wprost, bo zgłoszenia pochodzą z września 2026.

Krok 5. Gdy potrzebujesz gotowego arkusza

Dokumentacja analizy danych nie mówi wprost, czy z rozmowy w projekcie pobierzesz wynik jako plik XLSX, więc sprawdź to sam, prosząc o plik na końcu odpowiedzi. Pewną drogą do gotowego arkusza jest ChatGPT Work: przełącz rozmowę na Work w tym samym projekcie, a zadanie wykona się z kontekstem projektu i zakończy dokumentem albo arkuszem (ChatGPT Work). Work zastąpił dawny tryb agenta, więc jeśli w starszym poradniku zobaczysz polecenie /agent, to już nie działa.

Sprawdź wynik na danych kontrolnych

Porównaj odpowiedź z tabelą poniżej. Terminy policzyliśmy niezależnie z tych samych plików. Siódmy września 2026 to poniedziałek, szósty — niedziela.

ZgłoszenieUrządzenieKlient / umowaPriorytetStart zegaraTermin reakcjiUwaga agenta
Z-001PK-44120 lub PK-44121K-021 / U-2024-11 (Złoty, 4 h, 24/7)krytyczny — produkcja stoi7.09 06:407.09 10:40dwa piece tego samego modelu w obiekcie — do dopytania; weszło telefonem do technika
Z-002BR-1092K-034 / U-2025-03 (Srebrny, 8 h, pn–pt 7–19)wysoki — rampa nieczynna7.09 07:557.09 15:55piąte zgłoszenie w 12 miesięcy — zalecenie wymiany fotokomórki, do kierownika serwisu
Z-003CH-7790K-041 / U-2025-09 (Złoty, 4 h, 24/7)krytyczny — temperatura produktu7.09 08:127.09 12:12alarm automatyczny — potwierdzić telefonicznie u klienta
Z-004DZ-5510K-008 / U-2023-07 (Brązowy, 24 h, pn–pt 8–16)wysoki — dźwig pod dozorem, nikt nie uwięziony7.09 08:3010.09 08:30rozliczenie za zlecenie — wycena przed wyjazdem; uprawnienia dźwigowe
Z-005jak Z-001K-021 / U-2024-11duplikat Z-0017.09 06:407.09 10:40to samo zdarzenie innym kanałem — scalić ze Z-001
Z-006brak w kartotecebrak umowypoza umową——nowy klient — przyjąć za zlecenie z wyceną albo odmówić: kierownik serwisu
Z-007WZ-3300K-034 / U-2025-03przegląd planowy—termin przeglądu do końca września 2026zaplanować w oknie klienta z zestawem części; bez zegara awarii
Z-008WZ-3312K-041 / U-2025-09 (Złoty, 4 h, 24/7)normalny — komfort6.09 23:507.09 03:50termin minął, zanim ktokolwiek przeczytał maila; „nie pilne” klienta nie zmienia SLA — decyzja dyspozytora

Prawidłowa kolejność to Z-003, Z-001 (ze scalonym Z-005), Z-002, Z-008, Z-004, Z-007, Z-006. Komora chłodnicza idzie przed piecem, choć jej termin jest późniejszy, bo piekarnia czeka na odpowiedź, który piec stanął. Z-008 ląduje przed dźwigiem, bo jego termin już minął — niedzielny mail o 23:50 na umowie 24/7 to jedyne zgłoszenie z poranka, które jest przeterminowane, zanim dyspozytor usiadł do biurka. Dźwig ma czas do czwartku, bo umowa Brązowa liczy dobę reakcji tylko w godzinach 8–16 od poniedziałku do piątku.

Jeśli w tabeli Z-004 ma termin we wtorek, agent policzył dobę kalendarzową zamiast godzin obsługi. Jeśli Z-005 jest osobnym wierszem z własnym zegarem od 08:41, agent nie scalił duplikatu. Jeśli terminy się nie zgadzają, poproś o pokazanie kodu analizy i sprawdź, jak liczył godziny obsługi. Odpowiedź policzona z pamięci wygląda tak samo pewnie jak policzona kodem; różnicę widać dopiero w kodzie.

Krok z rzeczywistością

Umowy się zmieniają, a agent musi to zauważyć bez zmiany instrukcji. Otwórz umowy.xlsx, w wierszu U-2023-07 (Hotel Pod Dębami) zmień godziny obsługi z pn–pt 8:00–16:00 na 24/7, zapisz plik i w plikach projektu zastąp starą wersję nową.

Zadaj w nowej rozmowie to samo pytanie. Termin reakcji dla Z-004 powinien przesunąć się z czwartku 10.09 08:30 na wtorek 8.09 08:30: ta sama doba reakcji, ale liczona kalendarzowo. Kolejność nie powinna się zmienić — dźwig nadal ma termin w kolejnym dniu, więc zostaje za zgłoszeniami z dzisiejszym i przekroczonym terminem.

Jedna komórka w umowie przesunęła termin o dwa dni. Dlatego godziny obsługi mają być w zapisie przy umowie, a nie w pamięci dyspozytora.

Krok 6. Udostępnij zespołowi i zaplanuj automatyzację

Kiedy wynik zgadza się z danymi kontrolnymi, kliknij Share w projekcie i dodaj osoby albo grupę z workspace’u (do 100 współpracowników). Dyspozytorom daj uprawnienie Chat, osobie odpowiedzialnej za instrukcje i pliki Edit. Link w workspace domyślnie daje dostęp Chat, a projekt udostępniony zawsze pracuje w trybie pamięci Project-only.

Zgłoszenia przychodzą mailem i z portalu i to jest następny krok, ale już poza projektem. Workspace agent (Agents → Create w pasku bocznym) dostaje te same pliki, aplikacje takie jak Google Drive czy SharePoint i harmonogram uruchomień — na przykład triage skrzynki co godzinę. Gmail występuje z kolei jako wyzwalacz „nowa wiadomość” dla zadań Work. Akcje zapisu mają tam domyślnie ustawienie Always ask, czyli agent przygotowuje, a człowiek zatwierdza. Zostawcie to tak. Według zapowiedzi OpenAI z kwietnia 2026 workspace agents są rozliczane kredytami (stawek nie potwierdziliśmy), a w Enterprise są domyślnie wyłączone (workspace agents). Outlook i SharePoint wymagają jeszcze zgody administratora Microsoft Entra.

Typowe problemy

ObjawPrzyczynaCo zrobić
Brak tworzenia projektu albo przycisku Shareadministrator wyłączył uprawnienieWorkspace settings → Permissions & roles → Projects
W tabeli jest urządzenie, którego nie ma w kartotecemodel dopowiada zamiast czytaćpoproś o numery wierszy i ponowne policzenie w Pythonie
Termin Z-004 wypada we wtorekagent liczył dobę kalendarzową zamiast godzin obsługiprzypomnij regułę z instrukcji: tylko godziny obsługi, chyba że 24/7
Z-005 ma własny zegar od 08:41agent nie scalił duplikatuwskaż regułę: to samo zdarzenie z dwóch kanałów to jedno zgłoszenie
Kolega nie widzi projektu po dodaniu do grupyczłonkowie dodani później nie dostają powiadomieniawyślij mu link do projektu
Aplikacja ma etykietę „Disabled by admin”aplikacja wyłączona w Admin → Pluginsadministrator włącza aplikację i akcje
Nie da się zbudować nowego GPTGPT są wycofywanezostań przy projekcie albo workspace agent

Co dalej

Na własnych danych potrzebujecie dwóch eksportów, w XLSX albo CSV, i jednego dziennego załącznika. Kartoteka urządzeń z ERP albo z załączników do umów: numer seryjny, model, typ, klient, obiekt, umowa, data ostatniej naprawy, liczba zgłoszeń z dwunastu miesięcy, uwagi. Umowy: poziom, czas reakcji i naprawy, godziny obsługi, sposób rozliczenia, ryczałt. I codziennie zgłoszenia: kanał, data i godzina, kto zgłasza, firma i obiekt tak, jak podał klient, treść. Nazwy kolumn mogą być Wasze, wtedy poprawcie je w instrukcji.

Ten sam agent w innych narzędziach:

Pełną kartę agenta zgłoszeń, czyli co czyta, co może sam, co zatwierdza człowiek i czym go mierzyć, znajdziecie we wpisie o zegarze SLA, który rusza sam.

Portret Krzysztofa Majchrzyckiego

O autorze

Krzysztof Majchrzycki jest architektem systemów i AI Business Partnerem. Od wielu lat łączy technologię z biznesem i zarządzaniem. Współtworzył firmy technologiczne i kierował polskim oddziałem międzynarodowej grupy. Dziś projektuje modele firm i inteligentne systemy operacyjne, które z nich wynikają. Ukończył Executive MBA i ma certyfikat Prosci® Certified Change Practitioner.

Agent zgłoszeń to dopiero pierwszy z dwunastu

Darmowy poradnik „Usługi techniczne i serwisowe jako jeden system” pokazuje, gdzie w dziesięciu etapach pracuje każdy z dwunastu agentów i co przy każdym zostaje w rękach człowieka.

FAQ

Najczęstsze pytania

Czy mogę wgrać do projektu prawdziwą kartotekę urządzeń i umowy?

Na planach Business i Enterprise OpenAI domyślnie nie trenuje modeli na danych firmy i udostępnia umowę powierzenia (DPA). Przechowywanie danych w Europie jest jednak dostępne tylko w Enterprise i Edu, dla nowych workspace'ów; plan Business go nie ma. Ustalcie z właścicielem danych i działem prawnym, co może opuścić firmę, i zacznijcie od eksportu bez danych osobowych — w zgłoszeniach to nazwiska osób kontaktowych.

Dlaczego projekt, a nie własny GPT?

Bo własne GPT są wycofywane we wszystkich planach: standardowy termin to 11.12.2026, a w Enterprise tworzenie nowych GPT kończy się 26.10.2026. OpenAI wskazuje jako następcę pluginy. Projekt z instrukcjami i plikami robi w tym zadaniu to samo i nie wymaga migracji za dwa miesiące.