Instrukcje systemowe są jak „wstęp” dodawany przed udostępnieniem modelu przed dalszymi instrukcjami od użytkownika. Dzięki temu możesz sterować zachowaniem modelu w zależności od konkretnych potrzeb i przypadków użycia.
Wprowadzenie do instrukcji systemowych
Po ustawieniu instrukcji systemowej dajesz modelowi dodatkowy kontekst umożliwiający zrozumienie zadania, udzielanie bardziej spersonalizowanych odpowiedzi i przestrzeganie określonych wytycznych dotyczących całej interakcji użytkownika z modelem. W instrukcjach systemowych możesz określić zachowanie na poziomie produktu niezależnie od promptów przekazywanych przez użytkowników. Możesz na przykład uwzględnić rolę lub profil, informacje kontekstowe i instrukcje formatowania.
Instrukcji systemowych możesz używać na wiele sposobów, na przykład:
- Definiowanie profilu lub roli (np. czatbota)
- Definiowanie formatu wyjściowego (znacznik, YAML itp.)
- Określenie stylu i tonu wyjściowego (np. szczegółowości, formalności i poziomu języka docelowego)
- Definiowanie celów lub reguł zadania (np. zwracanie fragmentu kodu bez dodatkowych wyjaśnień)
- Zapewnij dodatkowy kontekst promptu (np. informację o ograniczeniu dostępu do wiedzy)
Ustawiona instrukcja systemowa ma zastosowanie do całego żądania. Po uwzględnieniu w prompcie działa on w przypadku wielu próśb użytkowników i modeli. Instrukcje systemowe są niezależne od treści promptu, ale nadal są częścią ogólnych promptów i podlegają standardowym zasadom użycia danych.
Przykładowe fragmenty kodu
Instrukcje systemowe określasz podczas inicjowania modelu. Oto podstawowy przykład:
Przykłady żądań
Oto kilka przykładów promptów systemowych, które definiują oczekiwane działanie modelu.
Generowanie kodu
- System: jesteś specjalistą w dziedzinie kodowania, który specjalizuje się w renderowaniu kodu interfejsów frontendu. Opisując komponent witryny, którą chcę utworzyć, zwracaj kod HTML i CSS bez niego. Nie wyjaśniaj. Przedstaw też kilka sugestii dotyczących projektowania interfejsu.
- Użytkownik: utwórz na środku strony pole zawierające obracający się wybór obrazów, z których każdy z podpisem. Obraz na środku strony powinien mieć za sobą cień, aby go wyróżnić. Powinien też prowadzić do innej strony w witrynie. Pozostaw adres URL pusty, abym mógł go wpisać.
Generowanie danych sformatowanych
System: jesteś asystentem kucharzy domowych. Otrzymasz listę składników i przepisy, w których je wykorzystano. Przepisy, które nie wymagają dodatkowych składników, powinny być zawsze wymienione przed tymi, które tego wymagają.
Odpowiedź musi być obiektem JSON zawierającym 3 przepisy. Obiekt przepisu ma taki schemat:
- name: nazwa przepisu.
- używaneSkładniki: składniki przepisu podane na liście;
- otherIngredients: składniki przepisu, których nie ma na liście (pominięte, jeśli nie ma innych składników).
- opis: krótki opis przepisu, napisany pozytywnie, by był satysfakcjonujący,
Użytkownik:
- 1 lb worek mrożonych brokułów
- 1 krem śmietankowy
- Końcówki sera w pakiecie (1 lb)
Muzyczny czatbot
- System: wcielasz się w rolę historyka muzyki, prezentując wyczerpującą wiedzę na temat różnych gatunków muzycznych i podając odpowiednie przykłady. Twój ton będzie optymistyczny i entuzjastyczny, który będzie dzielić radość z muzyki. Jeśli pytanie nie jest związane z muzyką, odpowiedź powinna brzmieć: „To poza moją wiedzą”.
- Użytkownik: Jeśli osoba urodziła się w latach 60., jaki gatunek był najpopularniejszy? Wymień 5 utworów według podpunktu.