2024-04-05 17:36:48 +00:00
|
|
|
package adaptor
|
2024-01-21 15:21:42 +00:00
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/gin-gonic/gin"
|
2024-04-05 17:31:44 +00:00
|
|
|
"github.com/songquanpeng/one-api/relay/meta"
|
2024-02-17 16:15:31 +00:00
|
|
|
"github.com/songquanpeng/one-api/relay/model"
|
|
|
|
"io"
|
2024-01-21 15:21:42 +00:00
|
|
|
"net/http"
|
|
|
|
)
|
|
|
|
|
|
|
|
type Adaptor interface {
|
2024-04-05 17:31:44 +00:00
|
|
|
Init(meta *meta.Meta)
|
|
|
|
GetRequestURL(meta *meta.Meta) (string, error)
|
|
|
|
SetupRequestHeader(c *gin.Context, req *http.Request, meta *meta.Meta) error
|
2024-02-17 16:15:31 +00:00
|
|
|
ConvertRequest(c *gin.Context, relayMode int, request *model.GeneralOpenAIRequest) (any, error)
|
2024-04-05 10:09:54 +00:00
|
|
|
ConvertImageRequest(request *model.ImageRequest) (any, error)
|
2024-04-05 17:31:44 +00:00
|
|
|
DoRequest(c *gin.Context, meta *meta.Meta, requestBody io.Reader) (*http.Response, error)
|
|
|
|
DoResponse(c *gin.Context, resp *http.Response, meta *meta.Meta) (usage *model.Usage, err *model.ErrorWithStatusCode)
|
2024-02-17 16:15:31 +00:00
|
|
|
GetModelList() []string
|
|
|
|
GetChannelName() string
|
2024-01-21 15:21:42 +00:00
|
|
|
}
|