mirror of
https://github.com/coalaura/whiskr.git
synced 2025-12-02 20:22:52 +00:00
add provider sorting
This commit is contained in:
16
chat.go
16
chat.go
@@ -54,6 +54,7 @@ type Metadata struct {
|
||||
type Request struct {
|
||||
Prompt string `json:"prompt"`
|
||||
Model string `json:"model"`
|
||||
Provider string `json:"provider"`
|
||||
Temperature float64 `json:"temperature"`
|
||||
Iterations int64 `json:"iterations"`
|
||||
Tools Tools `json:"tools"`
|
||||
@@ -168,6 +169,21 @@ func (r *Request) Parse() (*openrouter.ChatCompletionRequest, error) {
|
||||
}
|
||||
}
|
||||
|
||||
switch r.Provider {
|
||||
case "throughput":
|
||||
request.Provider = &openrouter.ChatProvider{
|
||||
Sort: openrouter.ProviderSortingThroughput,
|
||||
}
|
||||
case "latency":
|
||||
request.Provider = &openrouter.ChatProvider{
|
||||
Sort: openrouter.ProviderSortingLatency,
|
||||
}
|
||||
case "price":
|
||||
request.Provider = &openrouter.ChatProvider{
|
||||
Sort: openrouter.ProviderSortingPrice,
|
||||
}
|
||||
}
|
||||
|
||||
if model.JSON && r.Tools.JSON {
|
||||
request.ResponseFormat = &openrouter.ChatCompletionResponseFormat{
|
||||
Type: openrouter.ChatCompletionResponseFormatTypeJSONObject,
|
||||
|
||||
Reference in New Issue
Block a user