Documentation
¶
Index ¶
- Constants
- type Config
- type GenerationOptions
- type QueryDataContext
- type Tool
- func (t Tool) Authorized(verifiedAuthServices []string) bool
- func (t Tool) EmbedParams(ctx context.Context, paramValues parameters.ParamValues, ...) (parameters.ParamValues, error)
- func (t Tool) GetAuthTokenHeaderName(_ tools.SourceProvider) (string, error)
- func (t Tool) GetParameters() parameters.Parameters
- func (t Tool) Invoke(ctx context.Context, resourceMgr tools.SourceProvider, ...) (any, util.ToolboxError)
- func (t Tool) Manifest() tools.Manifest
- func (t Tool) McpManifest() tools.McpManifest
- func (t Tool) RequiresClientAuthorization(resourceMgr tools.SourceProvider) (bool, error)
- func (t Tool) ToConfig() tools.ToolConfig
Constants ¶
View Source
const Guidance = `Tool guidance:
Inputs:
1. query: A natural language formulation of a database query.
Outputs: (all optional)
1. disambiguation_question: Clarification questions or comments where the tool needs the users' input.
2. generated_query: The generated query for the user query.
3. intent_explanation: An explanation for why the tool produced ` + "`generated_query`" + `.
4. query_result: The result of executing ` + "`generated_query`" + `.
5. natural_language_answer: The natural language answer that summarizes the ` + "`query`" + ` and ` + "`query_result`" + `.
Usage guidance:
1. If ` + "`disambiguation_question`" + ` is produced, then solicit the needed inputs from the user and try the tool with a new ` + "`query`" + ` that has the needed clarification.
2. If ` + "`natural_language_answer`" + ` is produced, use ` + "`intent_explanation`" + ` and ` + "`generated_query`" + ` to see if you need to clarify any assumptions for the user.`
Guidance is the tool guidance string.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
Name string `yaml:"name" validate:"required"`
Type string `yaml:"type" validate:"required"`
Source string `yaml:"source" validate:"required"`
Description string `yaml:"description" validate:"required"`
Location string `yaml:"location" validate:"required"`
Context *QueryDataContext `yaml:"context" validate:"required"`
GenerationOptions *GenerationOptions `yaml:"generationOptions,omitempty"`
AuthRequired []string `yaml:"authRequired"`
Annotations *tools.ToolAnnotations `yaml:"annotations,omitempty"`
}
func (Config) Initialize ¶
func (Config) ToolConfigType ¶
type GenerationOptions ¶
type GenerationOptions struct {
*geminidataanalyticspb.GenerationOptions
}
GenerationOptions wraps geminidataanalyticspb.GenerationOptions to support YAML decoding via protojson.
func (*GenerationOptions) UnmarshalYAML ¶
func (g *GenerationOptions) UnmarshalYAML(b []byte) error
type QueryDataContext ¶
type QueryDataContext struct {
*geminidataanalyticspb.QueryDataContext
}
QueryDataContext wraps geminidataanalyticspb.QueryDataContext to support YAML decoding via protojson.
func (*QueryDataContext) UnmarshalYAML ¶
func (q *QueryDataContext) UnmarshalYAML(b []byte) error
type Tool ¶
type Tool struct {
Config
AllParams parameters.Parameters
// contains filtered or unexported fields
}
func (Tool) Authorized ¶
func (Tool) EmbedParams ¶
func (t Tool) EmbedParams(ctx context.Context, paramValues parameters.ParamValues, embeddingModelsMap map[string]embeddingmodels.EmbeddingModel) (parameters.ParamValues, error)
func (Tool) GetAuthTokenHeaderName ¶
func (t Tool) GetAuthTokenHeaderName(_ tools.SourceProvider) (string, error)
func (Tool) GetParameters ¶
func (t Tool) GetParameters() parameters.Parameters
func (Tool) Invoke ¶
func (t Tool) Invoke(ctx context.Context, resourceMgr tools.SourceProvider, params parameters.ParamValues, accessToken tools.AccessToken) (any, util.ToolboxError)
func (Tool) McpManifest ¶
func (t Tool) McpManifest() tools.McpManifest
func (Tool) RequiresClientAuthorization ¶
func (t Tool) RequiresClientAuthorization(resourceMgr tools.SourceProvider) (bool, error)
func (Tool) ToConfig ¶
func (t Tool) ToConfig() tools.ToolConfig
Click to show internal directories.
Click to hide internal directories.