haixunMaster/haixun-backend/internal/logic/ai/mapper.go

29 lines
709 B
Go
Raw Normal View History

2026-06-23 09:54:27 +00:00
package ai
import (
"haixun-backend/internal/model/ai/domain/enum"
domai "haixun-backend/internal/model/ai/domain/usecase"
"haixun-backend/internal/types"
)
func toGenerateRequest(req *types.AIChatReq, token string) domai.GenerateRequest {
messages := make([]domai.Message, 0, len(req.Messages))
for _, msg := range req.Messages {
messages = append(messages, domai.Message{
Role: msg.Role,
Content: msg.Content,
})
}
return domai.GenerateRequest{
Provider: enum.ProviderID(req.Provider),
Model: req.Model,
Credential: domai.Credential{
APIKey: token,
},
System: req.System,
Messages: messages,
Temperature: req.Temperature,
MaxTokens: req.MaxTokens,
}
}