40 lines
831 B
Go
Raw Normal View History

2023-06-04 22:54:54 +08:00
package remote_http
import (
"ai-gateway/common/dto"
"ai-gateway/common/utils"
2024-02-21 12:04:40 +08:00
"context"
2024-02-21 12:37:24 +08:00
"errors"
2023-06-04 22:54:54 +08:00
"fmt"
)
type aiApiImpl struct {
}
2024-02-21 12:04:40 +08:00
func (aiApiImpl) Completions(ctx context.Context, prompt, groupId string) (*dto.AiRes, error) {
2023-06-04 22:54:54 +08:00
logger := utils.NewLog("")
2024-02-21 12:04:40 +08:00
url := "https://ai-service.mylomen.com/text/v3/completions"
2023-06-04 22:54:54 +08:00
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))
2024-02-21 12:37:24 +08:00
return nil, errors.New("接口异常")
2023-06-04 22:54:54 +08:00
}
return &aiResult.Data, nil
}