Три API, одна идея, три места размещения и три диапазона. Переименовать легко. Ловушка предполагает, что температура, которая обеспечивала хорошие выходные данные у одного поставщика, дает эквивалентные выходные данные у другого, как только вы масштабируете это число до...
Три API, одна идея, три места размещения и три диапазона. Переименовать легко. Ловушка предполагает, что температура, которая обеспечивала хорошие выходные данные у одного поставщика, дает эквивалентные выходные данные у другого, как только вы масштабируете число до приемлемого диапазона.
Где живут параметры
Первое отличие носит структурный характер: некоторые API помещают параметры выборки на верхний уровень тела запроса, а один вкладывает их.
// Завершения чата OpenAI — верхний уровень, наряду с моделью и сообщениями
{ "модель": "...", "сообщения": [...],
"temperature": 0,7, "top_p": 1, "stop": ["\n\n"], "max_tokens": 512 }
// Антропные сообщения — верхний уровень, наряду с моделью, системой и сообщениями
{ "модель": "...", "система": "...", "сообщения": [...],
«температура»: 0,7, «top_p»: 1, «top_k»: 40,
"stop_sequences": ["\n\n"], "max_tokens": 512 }
// Google GeminigenerateContent — вложен в GenerationConfig
{ "contents": [...], "systemInstruction": {...},
"GenerationConfig": {
«температура»: 0,7, «топП»: 1, «топК»: 40,
"stopSequences": ["\n\n"], "maxOutputTokens": 512
} }
Уже видны три переименования и каждое кого-то укусило. Стоп-лист — это stop, stop_sequences и stopSequences. Ограничение вывода — max_token.