Documentation
¶
Index ¶
- func ConvertToChatOpenai(provider base.ProviderInterface, response *ChatResponse, ...) (openaiResponse *types.ChatCompletionResponse, ...)
- type ChatCompletionMessage
- type ChatEventDelta
- type ChatEventDeltaMessage
- type ChatResponse
- type ChatStreamResponse
- type CohereError
- type CohereProvider
- func (p *CohereProvider) ConvertToRerank(response *RerankResponse, request *types.RerankRequest) (*types.RerankResponse, *types.OpenAIErrorWithStatusCode)
- func (p *CohereProvider) CreateChatCompletion(request *types.ChatCompletionRequest) (*types.ChatCompletionResponse, *types.OpenAIErrorWithStatusCode)
- func (p *CohereProvider) CreateChatCompletionStream(request *types.ChatCompletionRequest) (requester.StreamReaderInterface[string], *types.OpenAIErrorWithStatusCode)
- func (p *CohereProvider) CreateRerank(request *types.RerankRequest) (*types.RerankResponse, *types.OpenAIErrorWithStatusCode)
- func (p *CohereProvider) GetFullRequestURL(requestURL string) string
- func (p *CohereProvider) GetModelList() ([]string, error)
- func (p *CohereProvider) GetRequestHeaders() (headers map[string]string)
- type CohereProviderFactory
- type CohereStreamHandler
- type MessageContent
- type ModelDetails
- type ModelListResponse
- type RerankDocumentsItemText
- type RerankRequest
- type RerankRequestDocumentsItem
- type RerankResponse
- type RerankResponseResultsItem
- type Usage
- type UsageBilledUnits
- type V2ChatRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConvertToChatOpenai ¶
func ConvertToChatOpenai(provider base.ProviderInterface, response *ChatResponse, request *types.ChatCompletionRequest) (openaiResponse *types.ChatCompletionResponse, errWithCode *types.OpenAIErrorWithStatusCode)
Types ¶
type ChatCompletionMessage ¶
type ChatCompletionMessage struct {
types.ChatCompletionMessage
ToolPlan string `json:"tool_plan,omitempty"`
}
func (*ChatCompletionMessage) ToChatCompletionMessage ¶
func (cc *ChatCompletionMessage) ToChatCompletionMessage() *types.ChatCompletionMessage
type ChatEventDelta ¶
type ChatEventDelta struct {
Message *ChatEventDeltaMessage `json:"message,omitempty"`
Usage *Usage `json:"usage,omitempty"`
FinishReason string `json:"finish_reason,omitempty"`
}
type ChatEventDeltaMessage ¶
type ChatEventDeltaMessage struct {
Role string `json:"role,omitempty"`
Content MessageContent `json:"content,omitempty"`
ToolCalls *types.ChatCompletionToolCalls `json:"tool_calls,omitempty"`
ToolPlan string `json:"tool_plan,omitempty"`
}
func (*ChatEventDeltaMessage) ToString ¶
func (m *ChatEventDeltaMessage) ToString() string
type ChatResponse ¶
type ChatStreamResponse ¶
type ChatStreamResponse struct {
Id string `json:"id,omitempty"`
Index int `json:"index,omitempty"`
Delta *ChatEventDelta `json:"delta,omitempty" url:"delta,omitempty"`
Type string `json:"type,omitempty"`
}
type CohereError ¶
type CohereError struct {
Message string `json:"message,omitempty"`
}
type CohereProvider ¶
type CohereProvider struct {
base.BaseProvider
}
func (*CohereProvider) ConvertToRerank ¶
func (p *CohereProvider) ConvertToRerank(response *RerankResponse, request *types.RerankRequest) (*types.RerankResponse, *types.OpenAIErrorWithStatusCode)
func (*CohereProvider) CreateChatCompletion ¶
func (p *CohereProvider) CreateChatCompletion(request *types.ChatCompletionRequest) (*types.ChatCompletionResponse, *types.OpenAIErrorWithStatusCode)
func (*CohereProvider) CreateChatCompletionStream ¶
func (p *CohereProvider) CreateChatCompletionStream(request *types.ChatCompletionRequest) (requester.StreamReaderInterface[string], *types.OpenAIErrorWithStatusCode)
func (*CohereProvider) CreateRerank ¶
func (p *CohereProvider) CreateRerank(request *types.RerankRequest) (*types.RerankResponse, *types.OpenAIErrorWithStatusCode)
func (*CohereProvider) GetFullRequestURL ¶
func (p *CohereProvider) GetFullRequestURL(requestURL string) string
func (*CohereProvider) GetModelList ¶
func (p *CohereProvider) GetModelList() ([]string, error)
func (*CohereProvider) GetRequestHeaders ¶
func (p *CohereProvider) GetRequestHeaders() (headers map[string]string)
获取请求头
type CohereProviderFactory ¶
type CohereProviderFactory struct{}
func (CohereProviderFactory) Create ¶
func (f CohereProviderFactory) Create(channel *model.Channel) base.ProviderInterface
创建 CohereProvider
type CohereStreamHandler ¶
type CohereStreamHandler struct {
Usage *types.Usage
Request *types.ChatCompletionRequest
// contains filtered or unexported fields
}
func (*CohereStreamHandler) HandlerStream ¶
func (h *CohereStreamHandler) HandlerStream(rawLine *[]byte, dataChan chan string, errChan chan error)
转换为OpenAI聊天流式请求体
type MessageContent ¶
type ModelDetails ¶
type ModelListResponse ¶
type ModelListResponse struct {
Models []ModelDetails `json:"models"`
}
type RerankDocumentsItemText ¶
type RerankDocumentsItemText struct {
Text string `json:"text"`
}
type RerankRequest ¶
type RerankRequest struct {
Model string `json:"model,omitempty"`
Query string `json:"query" url:"query"`
Documents []string `json:"documents,omitempty"`
TopN int `json:"top_n,omitempty"`
RankFields []string `json:"rank_fields,omitempty"`
ReturnDocuments bool `json:"return_documents,omitempty"`
MaxChunksPerDoc *int `json:"max_chunks_per_doc,omitempty"`
}
type RerankRequestDocumentsItem ¶
type RerankRequestDocumentsItem struct {
String string
RerankRequestDocumentsItemText *RerankDocumentsItemText
}
type RerankResponse ¶
type RerankResponse struct {
Id *string `json:"id,omitempty"`
Results []*RerankResponseResultsItem `json:"results,omitempty"`
Meta *Usage `json:"meta,omitempty"`
}
type RerankResponseResultsItem ¶
type RerankResponseResultsItem struct {
Document *RerankDocumentsItemText `json:"document,omitempty"`
Index int `json:"index"`
RelevanceScore float64 `json:"relevance_score"`
}
type Usage ¶
type Usage struct {
BilledUnits *UsageBilledUnits `json:"billed_units,omitempty"`
}
type UsageBilledUnits ¶
type V2ChatRequest ¶
type V2ChatRequest struct {
Model string `json:"model"`
Messages []types.ChatCompletionMessage `json:"messages,omitempty"`
Tools []*types.ChatCompletionTool `json:"tools,omitempty"`
StrictTools *bool `json:"strict_tools,omitempty"`
ResponseFormat *types.ChatCompletionResponseFormat `json:"response_format,omitempty"`
MaxTokens *int `json:"max_tokens,omitempty"`
StopSequences any `json:"stop_sequences,omitempty"`
Temperature *float64 `json:"temperature,omitempty"`
Seed *int `json:"seed,omitempty"`
FrequencyPenalty *float64 `json:"frequency_penalty,omitempty"`
PresencePenalty *float64 `json:"presence_penalty,omitempty"`
K *float64 `json:"k,omitempty"`
P *float64 `json:"p,omitempty"`
ReturnPrompt *bool `json:"return_prompt,omitempty"`
Logprobs *bool `json:"logprobs,omitempty"`
ToolChoice *string `json:"tool_choice,omitempty"`
Stream bool `json:"stream"`
}
func ConvertFromChatOpenai ¶
func ConvertFromChatOpenai(request *types.ChatCompletionRequest) (*V2ChatRequest, *types.OpenAIErrorWithStatusCode)
Click to show internal directories.
Click to hide internal directories.