Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type OpenAIChatStreamChunk ¶ added in v0.0.64
type OpenAIChatStreamChunk struct {
ID string `json:"id" example:"chatcmpl-123"`
Object string `json:"object" example:"chat.completion.chunk"`
Created int64 `json:"created" example:"1694268190"`
Model string `json:"model" example:"mistral:instruct"`
Choices []OpenAIStreamChoice `json:"choices" openapi_include_type:"chatservice.OpenAIStreamChoice"`
}
OpenAIChatStreamChunk represents a single chunk of data in an SSE stream for an OpenAI-compatible chat completion.
type OpenAIStreamChoice ¶ added in v0.0.64
type OpenAIStreamChoice struct {
Index int `json:"index" example:"0"`
Delta OpenAIStreamDelta `json:"delta" openapi_include_type:"chatservice.OpenAIStreamDelta"`
FinishReason *string `json:"finish_reason,omitempty" example:"stop"`
}
OpenAIStreamChoice represents a choice within a stream chunk. It contains the delta, which is the actual content being streamed.
type OpenAIStreamDelta ¶ added in v0.0.64
type OpenAIStreamDelta struct {
// The role of the author of this message.
Role string `json:"role,omitempty" example:"assistant"`
// The contents of the chunk.
Content string `json:"content,omitempty" example:" world"`
ToolCalls []OpenAIStreamToolCall `json:"tool_calls,omitempty"`
}
OpenAIStreamDelta contains the incremental content update (the "delta") for a streaming chat response.
type OpenAIStreamFunctionCall ¶ added in v0.0.69
type OpenAIStreamFunctionCall struct {
Name string `json:"name,omitempty"`
Arguments string `json:"arguments,omitempty"`
}
OpenAIStreamFunctionCall represents function details within a tool call stream chunk.
type OpenAIStreamToolCall ¶ added in v0.0.69
type OpenAIStreamToolCall struct {
Index int `json:"index"`
ID string `json:"id,omitempty"`
Type string `json:"type,omitempty"`
Function *OpenAIStreamFunctionCall `json:"function,omitempty"`
}
OpenAIStreamToolCall represents a tool call within a stream chunk.
type Service ¶
type Service interface {
OpenAIChatCompletions(ctx context.Context, taskChainID string, req taskengine.OpenAIChatRequest) (*taskengine.OpenAIChatResponse, []taskengine.CapturedStateUnit, error)
OpenAIChatCompletionsStream(ctx context.Context, taskChainID string, req taskengine.OpenAIChatRequest, speed time.Duration) (<-chan OpenAIChatStreamChunk, error)
}
func New ¶
func New( env execservice.TasksEnvService, chainService taskchainservice.Service, ) Service
func WithActivityTracker ¶
func WithActivityTracker(service Service, tracker libtracker.ActivityTracker) Service
WithActivityTracker creates a new decorated service that tracks activity
Click to show internal directories.
Click to hide internal directories.