mirror of
https://github.com/alibaba/higress.git
synced 2026-04-21 03:57:28 +08:00
fix(ai-proxy): add system message handling for Bedrock requests (#2516)
This commit is contained in:
@@ -723,10 +723,18 @@ func (b *bedrockProvider) onChatCompletionRequestBody(ctx wrapper.HttpContext, b
|
|||||||
|
|
||||||
func (b *bedrockProvider) buildBedrockTextGenerationRequest(origRequest *chatCompletionRequest, headers http.Header) ([]byte, error) {
|
func (b *bedrockProvider) buildBedrockTextGenerationRequest(origRequest *chatCompletionRequest, headers http.Header) ([]byte, error) {
|
||||||
messages := make([]bedrockMessage, 0, len(origRequest.Messages))
|
messages := make([]bedrockMessage, 0, len(origRequest.Messages))
|
||||||
for i := range origRequest.Messages {
|
systemMessages := make([]systemContentBlock, 0)
|
||||||
messages = append(messages, chatMessage2BedrockMessage(origRequest.Messages[i]))
|
|
||||||
|
for _, msg := range origRequest.Messages {
|
||||||
|
if msg.Role == roleSystem {
|
||||||
|
systemMessages = append(systemMessages, systemContentBlock{Text: msg.StringContent()})
|
||||||
|
} else {
|
||||||
|
messages = append(messages, chatMessage2BedrockMessage(msg))
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
request := &bedrockTextGenRequest{
|
request := &bedrockTextGenRequest{
|
||||||
|
System: systemMessages,
|
||||||
Messages: messages,
|
Messages: messages,
|
||||||
InferenceConfig: bedrockInferenceConfig{
|
InferenceConfig: bedrockInferenceConfig{
|
||||||
MaxTokens: origRequest.MaxTokens,
|
MaxTokens: origRequest.MaxTokens,
|
||||||
|
|||||||
Reference in New Issue
Block a user