shaoyongjun 342fbf9a61 to:sync
2024-10-08 22:06:28 +08:00

40 lines
846 B
Go

package remote_http
import (
"context"
"errors"
"fmt"
"mylomen_server/common/dto"
"mylomen_server/common/utils"
)
type aiApiImpl struct {
}
func (aiApiImpl) Completions(ctx context.Context, prompt, groupId string) (*dto.AiRes, error) {
logger := utils.NewLog("")
url := "http://ai-service.service.consul:8080/text/v3/completions"
var aiResult Result[dto.AiRes]
resp, err := httpClient.R().
SetBody(map[string]interface{}{
"prompt": prompt,
"maxTokens": 500,
"groupId": groupId,
}).
SetSuccessResult(&aiResult).
Post(url)
if err != nil {
logger.Error(fmt.Sprintf("remote_http_wx_SendMsg error: %s", err.Error()))
return nil, err
}
if !resp.IsSuccessState() {
logger.Error(fmt.Sprintf("remote_http_wx_SendMsg resp:%+v", resp))
return nil, errors.New("接口异常")
}
return &aiResult.Data, nil
}