mirror of
https://github.com/songquanpeng/one-api.git
synced 2025-09-18 01:26:37 +08:00
feat: add session/prefix cache for doubao
This commit is contained in:
parent
3915ce9814
commit
111a5faeed
@ -7,9 +7,13 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func GetRequestURL(meta *meta.Meta) (string, error) {
|
func GetRequestURL(meta *meta.Meta) (string, error) {
|
||||||
|
var context = ""
|
||||||
|
if meta.Cache {
|
||||||
|
context = "context/"
|
||||||
|
}
|
||||||
switch meta.Mode {
|
switch meta.Mode {
|
||||||
case relaymode.ChatCompletions:
|
case relaymode.ChatCompletions:
|
||||||
return fmt.Sprintf("%s/api/v3/chat/completions", meta.BaseURL), nil
|
return fmt.Sprintf("%s/api/v3/%schat/completions", meta.BaseURL, context), nil
|
||||||
case relaymode.Embeddings:
|
case relaymode.Embeddings:
|
||||||
return fmt.Sprintf("%s/api/v3/embeddings", meta.BaseURL), nil
|
return fmt.Sprintf("%s/api/v3/embeddings", meta.BaseURL), nil
|
||||||
default:
|
default:
|
||||||
|
@ -31,6 +31,7 @@ func RelayTextHelper(c *gin.Context) *model.ErrorWithStatusCode {
|
|||||||
return openai.ErrorWrapper(err, "invalid_text_request", http.StatusBadRequest)
|
return openai.ErrorWrapper(err, "invalid_text_request", http.StatusBadRequest)
|
||||||
}
|
}
|
||||||
meta.IsStream = textRequest.Stream
|
meta.IsStream = textRequest.Stream
|
||||||
|
meta.Cache = len(textRequest.ContextId) > 0
|
||||||
|
|
||||||
// map model name
|
// map model name
|
||||||
meta.OriginModelName = textRequest.Model
|
meta.OriginModelName = textRequest.Model
|
||||||
|
@ -31,6 +31,7 @@ type Meta struct {
|
|||||||
RequestURLPath string
|
RequestURLPath string
|
||||||
PromptTokens int // only for DoResponse
|
PromptTokens int // only for DoResponse
|
||||||
SystemPrompt string
|
SystemPrompt string
|
||||||
|
Cache bool
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetByContext(c *gin.Context) *Meta {
|
func GetByContext(c *gin.Context) *Meta {
|
||||||
|
@ -65,6 +65,8 @@ type GeneralOpenAIRequest struct {
|
|||||||
// Others
|
// Others
|
||||||
Instruction string `json:"instruction,omitempty"`
|
Instruction string `json:"instruction,omitempty"`
|
||||||
NumCtx int `json:"num_ctx,omitempty"`
|
NumCtx int `json:"num_ctx,omitempty"`
|
||||||
|
// SessionCache or PrefixCache context id
|
||||||
|
ContextId string `json:"context_id,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r GeneralOpenAIRequest) ParseInput() []string {
|
func (r GeneralOpenAIRequest) ParseInput() []string {
|
||||||
|
Loading…
Reference in New Issue
Block a user