AIX: server-side Top-P

This commit is contained in:
Enrico Ros
2024-12-24 18:17:33 -08:00
parent b2d66af440
commit f52e35029c
3 changed files with 18 additions and 0 deletions
@@ -88,6 +88,12 @@ export function aixToAnthropicMessageCreate(model: AixAPI_Model, chatGenerate: A
// top_p: undefined,
};
// Top-P instead of temperature
if (model.topP !== undefined) {
payload.top_p = model.topP;
delete payload.temperature
}
// Preemptive error detection with server-side payload validation before sending it upstream
const validated = AnthropicWire_API_Message_Create.Request_schema.safeParse(payload);
if (!validated.success) {
@@ -51,6 +51,12 @@ export function aixToGeminiGenerateContent(model: AixAPI_Model, chatGenerate: Ai
},
};
// Top-P instead of temperature
if (model.topP !== undefined) {
delete payload.generationConfig!.temperature;
payload.generationConfig!.topP = model.topP;
}
// Preemptive error detection with server-side payload validation before sending it upstream
const validated = GeminiWire_API_Generate_Content.Request_schema.safeParse(payload);
if (!validated.success) {
@@ -79,6 +79,12 @@ export function aixToOpenAIChatCompletions(openAIDialect: OpenAIDialects, model:
user: undefined,
};
// Top-P instead of temperature
if (model.topP !== undefined) {
delete payload.temperature;
payload.top_p = model.topP;
}
if (hotFixOpenAIo1Family)
payload = _fixRequestForOpenAIO1_maxCompletionTokens(payload);