fixed a bug while using ask() which given []map
This commit is contained in:
parent
e2b696a221
commit
946fcfd6e5
9
agent.go
9
agent.go
@ -355,7 +355,7 @@ func makeChatMessages(args []goja.Value) []ChatMessage {
|
||||
case reflect.Slice:
|
||||
out = append(out, makeChatMessageFromSlice(vv2, defaultRole))
|
||||
case reflect.Map:
|
||||
out = append(out, makeChatMessageFromSlice(vv2, defaultRole))
|
||||
out = append(out, makeChatMessageFromMap(vv2, defaultRole))
|
||||
case reflect.Struct:
|
||||
item := ChatMessage{}
|
||||
u.Convert(vv2.Interface(), &item)
|
||||
@ -399,9 +399,10 @@ func makeChatMessageFromSlice(vv reflect.Value, defaultRole string) ChatMessage
|
||||
}
|
||||
|
||||
func makeChatMessageFromMap(vv reflect.Value, defaultRole string) ChatMessage {
|
||||
role := u.String(vv.MapIndex(reflect.ValueOf(RoleUser)).Interface())
|
||||
if role == "" {
|
||||
role = defaultRole
|
||||
role := defaultRole
|
||||
roleValue := vv.MapIndex(reflect.ValueOf("role"))
|
||||
if roleValue.IsValid() {
|
||||
role = u.String(roleValue.Interface())
|
||||
}
|
||||
contents := make([]ChatMessageContent, 0)
|
||||
content := u.String(vv.MapIndex(reflect.ValueOf("content")).Interface())
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user