Documentation
¶
Overview ¶
Package guest 是 Guest 插槽:怎么想;工具须经 Gateway(本包不定义 Lifecycle)。
Index ¶
- func Chat(ctx context.Context, g Guest, message string) (string, error)
- func Complete(ctx context.Context, in CompleteInput) (*schema.Message, error)
- func DeltaHandler(ctx context.Context) func(delta string)
- func RewriteGenerateError(err error, hadMedia bool) error
- func ToolInfoFromJSONSchema(name, desc string, parametersJSON map[string]any) (*schema.ToolInfo, error)
- func UserMessage(text string, images []UserImage) *schema.Message
- func Wire(in Input) string
- func WithDeltaHandler(ctx context.Context, fn func(delta string)) context.Context
- type CompleteInput
- type Guest
- type Input
- type UserImage
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeltaHandler ¶
DeltaHandler 读取流式回调;无则 nil。
func RewriteGenerateError ¶
RewriteGenerateError 有图时把「明确不支持视觉」转成可行动提示;不维护模型名单。
func ToolInfoFromJSONSchema ¶
func ToolInfoFromJSONSchema(name, desc string, parametersJSON map[string]any) (*schema.ToolInfo, error)
ToolInfoFromJSONSchema 用 OpenAI function parameters JSON object 构造 ToolInfo。
func UserMessage ¶
UserMessage 构造 user schema:有图则走 UserInputMultiContent(OpenAI/千问多模态协议),无图保持纯文本。
Types ¶
type CompleteInput ¶
type CompleteInput struct {
Model einomodel.ToolCallingChatModel
Messages []*schema.Message
Tools []*schema.ToolInfo
// Stream 显式开流;也可由 ctx 上 WithDeltaHandler 触发。
Stream bool
}
CompleteInput 一轮模型完成(可选工具 + 流式)。
Click to show internal directories.
Click to hide internal directories.