Każde wywołanie wysłane do modelu zawiera wartości parametrów, które określają, jak model wygeneruje odpowiedź. Model może generować różne wyniki zależnie od tych wartości. Wypróbuj różne wartości parametrów, aby uzyskać najlepsze wyniki w tym zadaniu. Parametry dostępne w różnych modelach mogą się różnić.
Konfiguracja jest utrzymywana przez cały okres istnienia zainicjowanej Vertex AIusługi i instancji modelu. Aby zaktualizować konfigurację modelu, należy ponownie zainicjować jego instancję.
Dalej na tej stronie znajdziesz informacje o tym, jak skonfigurować parametry modelu.
Opis każdego parametru
Najczęstsze parametry to:
W kolejnych sekcjach tej strony znajdziesz informacje o każdym z tych parametrów.
Maksymalna liczba tokenów wyjściowych
Maksymalna liczba tokenów, które można wygenerować w odpowiedzi. Token ma około 4 znaków. 100 tokenów odpowiada około 20 słowom.
Jeśli chcesz uzyskiwać krótsze odpowiedzi, podaj niższą wartość, a jeśli dłuższe – wyższą.
Temperatura
Temperatura jest używana do próbkowania podczas generowania odpowiedzi, co ma miejsce, gdy są stosowane topP
i topK
. Temperatura decyduje o stopniu losowości wyboru tokenów. Niższe temperatury są przydatne w przypadku promptów, na które oczekuje się bardziej deterministycznej i mniej otwartej lub kreatywnej odpowiedzi, a wyższe mogą prowadzić do bardziej różnorodnych lub kreatywnych wyników. Temperatura 0
jest deterministyczna, co oznacza, że zawsze jest wybierana najbardziej prawdopodobna odpowiedź.
W większości przypadków dobrze jest zacząć od temperatury 0.2
. Jeśli model zwróci zbyt ogólną lub krótką odpowiedź, albo odpowiedź zastępczą, spróbuj zwiększyć temperaturę.
Top-K
Parametr Top-K zmienia sposób, w jaki model wybiera tokeny w celu wygenerowania odpowiedzi. Top-K o wartości 1
oznacza, że wybierany jest najbardziej prawdopodobny token spośród wszystkich tokenów w słowniku modelu (jest to też nazywane dekodowaniem zachłannym), natomiast Top-K o wartości 3
oznacza, że następny token jest wybierany z użyciem temperatury spośród 3 najbardziej prawdopodobnych.
Na każdym etapie wyboru tokena próbkowane są tokeny Top-K o najwyższym prawdopodobieństwie. Tokeny są następnie filtrowane na podstawie parametru Top-P, a ostateczny wybór tokena dokonywany jest przy pomocy próbkowania z użyciem temperatury.
Jeśli chcesz uzyskiwać mniej losowe odpowiedzi, podaj niższą wartość, a jeśli bardziej – wyższą. Wartość domyślna parametru górnego K to 40
.
Top-P
Parametr Top-P również zmienia sposób, w jaki model wybiera tokeny w celu wygenerowania odpowiedzi. Tokeny są wybierane w kolejności od najbardziej (patrz Top-K) do najmniej prawdopodobnych, aż suma ich prawdopodobieństw będzie równa wartości Top-P. Jeśli na przykład tokeny A, B i C mają prawdopodobieństwa 0,3, 0,2 i 0,1, a wartością Top-P jest 0.5
, jako kolejny token model wybierze A lub B (z użyciem temperatury), a token C zostanie wykluczony.
Jeśli chcesz uzyskiwać mniej losowe odpowiedzi, podaj niższą wartość, a jeśli bardziej – wyższą. Wartość domyślna parametru górnego P to 0.95
.
Konfigurowanie parametrów modelu
Parametry modelu konfigurujesz w generationConfig
podczas inicjalizacji modelu. Oto prosty przykład:
Kotlin+KTX
// ...
val config = generationConfig {
maxOutputTokens = 200
stopSequences = listOf("red")
temperature = 0.9f
topK = 16
topP = 0.1f
}
val generativeModel = Firebase.vertexAI.generativeModel(
modelName = "MODEL_NAME",
generationConfig = config
)
// ...
Java
// ...
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");
configBuilder.temperature = 0.9f;
configBuilder.topK = 16;
configBuilder.topP = 0.1f;
GenerationConfig generationConfig = configBuilder.build();
GenerativeModel gm = FirebaseVertexAI.getInstance().generativeModel(
"MODEL_NAME",
generationConfig
);
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
// ...
Inne opcje kontrolowania generowania treści
- Dowiedz się więcej o projektowaniu promptów, aby móc wpływać na model w celu generowania wyników odpowiadających Twoim potrzebom.
- Użyj ustawień bezpieczeństwa, aby dostosować prawdopodobieństwo otrzymania odpowiedzi, które mogą być uznane za szkodliwe, w tym wypowiedzi szerzące nienawiść i treści o charakterze jednoznacznie seksualnym.
- Ustaw instrukcje systemowe, aby kierować działaniem modelu. Ta funkcja jest jak „wstęp”, który dodajesz przed udostępnieniem modelu w celu uzyskania dalszych instrukcji od użytkownika końcowego.
- Przekaż schemat odpowiedzi wraz z promptem, aby określić konkretny schemat wyjściowy. Ta funkcja jest najczęściej używana do generowania danych wyjściowych w formacie JSON, ale można jej też używać do zadań klasyfikacji (np. gdy chcesz, aby model używał określonych etykiet).