2026-02-04 11:06:13 +00:00
|
|
|
package providers
|
|
|
|
|
|
2026-02-17 16:13:10 +00:00
|
|
|
import (
|
|
|
|
|
"context"
|
2026-02-04 11:06:13 +00:00
|
|
|
|
2026-02-17 16:13:10 +00:00
|
|
|
"github.com/sipeed/picoclaw/pkg/providers/protocoltypes"
|
|
|
|
|
)
|
2026-02-04 11:06:13 +00:00
|
|
|
|
2026-02-17 16:13:10 +00:00
|
|
|
type ToolCall = protocoltypes.ToolCall
|
|
|
|
|
type FunctionCall = protocoltypes.FunctionCall
|
|
|
|
|
type LLMResponse = protocoltypes.LLMResponse
|
|
|
|
|
type UsageInfo = protocoltypes.UsageInfo
|
|
|
|
|
type Message = protocoltypes.Message
|
|
|
|
|
type ToolDefinition = protocoltypes.ToolDefinition
|
|
|
|
|
type ToolFunctionDefinition = protocoltypes.ToolFunctionDefinition
|
2026-02-04 11:06:13 +00:00
|
|
|
|
|
|
|
|
type LLMProvider interface {
|
|
|
|
|
Chat(ctx context.Context, messages []Message, tools []ToolDefinition, model string, options map[string]interface{}) (*LLMResponse, error)
|
|
|
|
|
GetDefaultModel() string
|
|
|
|
|
}
|