Package generativelanguage is an auto-generated package for the Generative Language API.
The Gemini API allows developers to build generative AI applications using Gemini models. Gemini is our most capable model in the world, built from the ground up to be multimodal. It can generalize and seamlessly understand, operate across, and combine different types of information. You can use the Gemini API for use cases like reasoning across text and images, content generation, dialogue agents, summarization and classification systems, and more.
NOTE: This package is in beta. It is not stable, and may be subject to changes.
General documentation
For information that is relevant for all client libraries please reference https://pkg.go.dev/cloud.google.com/go#pkg-overview. Some information on this page includes:
- Authentication and Authorization
- Timeouts and Cancellation
- Testing against Client Libraries
- Debugging Client Libraries
- Inspecting errors
Example usage
To get started with this package, create a client.
ctx := context.Background() // This snippet has been automatically generated and should be regarded as a code template only. // It will require modifications to work: // - It may require correct/in-range values for request initialization. // - It may require specifying regional endpoints when creating the service client as shown in: // https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options c, err := generativelanguage.NewDiscussClient(ctx) if err != nil { // TODO: Handle error. } defer c.Close()
The client will use your default application credentials. Clients should be reused instead of created as needed. The methods of Client are safe for concurrent use by multiple goroutines. The returned client must be Closed when it is done being used.
Using the Client
The following is an example of making an API call with the newly created client.
ctx := context.Background() // This snippet has been automatically generated and should be regarded as a code template only. // It will require modifications to work: // - It may require correct/in-range values for request initialization. // - It may require specifying regional endpoints when creating the service client as shown in: // https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options c, err := generativelanguage.NewDiscussClient(ctx) if err != nil { // TODO: Handle error. } defer c.Close() req := &generativelanguagepb.CountMessageTokensRequest{ // TODO: Fill request struct fields. // See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#CountMessageTokensRequest. } resp, err := c.CountMessageTokens(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp
Use of Context
The ctx passed to NewDiscussClient is used for authentication requests and for creating the underlying connection, but is not used for subsequent calls. Individual methods on the client use the ctx given to them.
To close the open connection, use the Close() method.
Functions
func DefaultAuthScopes
func DefaultAuthScopes() []string
DefaultAuthScopes reports the default set of authentication scopes to use with this package.
ChunkIterator
type ChunkIterator struct {
// Response is the raw response for the current page.
// It must be cast to the RPC response type.
// Calling Next() or InternalFetch() updates this value.
Response interface{}
// InternalFetch is for use by the Google Cloud Libraries only.
// It is not part of the stable interface of this package.
//
// InternalFetch returns results from a single call to the underlying RPC.
// The number of results is no greater than pageSize.
// If there are no more results, nextPageToken is empty and err is nil.
InternalFetch func(pageSize int, pageToken string) (results []*generativelanguagepb.Chunk, nextPageToken string, err error)
// contains filtered or unexported fields
}
ChunkIterator manages a stream of *generativelanguagepb.Chunk.
func (*ChunkIterator) Next
func (it *ChunkIterator) Next() (*generativelanguagepb.Chunk, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*ChunkIterator) PageInfo
func (it *ChunkIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
CorpusIterator
type CorpusIterator struct {
// Response is the raw response for the current page.
// It must be cast to the RPC response type.
// Calling Next() or InternalFetch() updates this value.
Response interface{}
// InternalFetch is for use by the Google Cloud Libraries only.
// It is not part of the stable interface of this package.
//
// InternalFetch returns results from a single call to the underlying RPC.
// The number of results is no greater than pageSize.
// If there are no more results, nextPageToken is empty and err is nil.
InternalFetch func(pageSize int, pageToken string) (results []*generativelanguagepb.Corpus, nextPageToken string, err error)
// contains filtered or unexported fields
}
CorpusIterator manages a stream of *generativelanguagepb.Corpus.
func (*CorpusIterator) Next
func (it *CorpusIterator) Next() (*generativelanguagepb.Corpus, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*CorpusIterator) PageInfo
func (it *CorpusIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
CreateTunedModelOperation
type CreateTunedModelOperation struct {
// contains filtered or unexported fields
}
CreateTunedModelOperation manages a long-running operation from CreateTunedModel.
func (*CreateTunedModelOperation) Done
func (op *CreateTunedModelOperation) Done() bool
Done reports whether the long-running operation has completed.
func (*CreateTunedModelOperation) Metadata
func (op *CreateTunedModelOperation) Metadata() (*generativelanguagepb.CreateTunedModelMetadata, error)
Metadata returns metadata associated with the long-running operation. Metadata itself does not contact the server, but Poll does. To get the latest metadata, call this method after a successful call to Poll. If the metadata is not available, the returned metadata and error are both nil.
func (*CreateTunedModelOperation) Name
func (op *CreateTunedModelOperation) Name() string
Name returns the name of the long-running operation. The name is assigned by the server and is unique within the service from which the operation is created.
func (*CreateTunedModelOperation) Poll
func (op *CreateTunedModelOperation) Poll(ctx context.Context, opts ...gax.CallOption) (*generativelanguagepb.TunedModel, error)
Poll fetches the latest state of the long-running operation.
Poll also fetches the latest metadata, which can be retrieved by Metadata.
If Poll fails, the error is returned and op is unmodified. If Poll succeeds and the operation has completed with failure, the error is returned and op.Done will return true. If Poll succeeds and the operation has completed successfully, op.Done will return true, and the response of the operation is returned. If Poll succeeds and the operation has not completed, the returned response and error are both nil.
func (*CreateTunedModelOperation) Wait
func (op *CreateTunedModelOperation) Wait(ctx context.Context, opts ...gax.CallOption) (*generativelanguagepb.TunedModel, error)
Wait blocks until the long-running operation is completed, returning the response and any errors encountered.
See documentation of Poll for error-handling information.
DiscussCallOptions
type DiscussCallOptions struct {
GenerateMessage []gax.CallOption
CountMessageTokens []gax.CallOption
}
DiscussCallOptions contains the retry settings for each method of DiscussClient.
DiscussClient
type DiscussClient struct {
// The call options for this service.
CallOptions *DiscussCallOptions
// contains filtered or unexported fields
}
DiscussClient is a client for interacting with Generative Language API. Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
An API for using Generative Language Models (GLMs) in dialog applications.
Also known as large language models (LLMs), this API provides models that are trained for multi-turn dialog.
func NewDiscussClient
func NewDiscussClient(ctx context.Context, opts ...option.ClientOption) (*DiscussClient, error)
NewDiscussClient creates a new discuss service client based on gRPC. The returned client must be Closed when it is done being used to clean up its underlying connections.
An API for using Generative Language Models (GLMs) in dialog applications.
Also known as large language models (LLMs), this API provides models that are trained for multi-turn dialog.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewDiscussClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func NewDiscussRESTClient
func NewDiscussRESTClient(ctx context.Context, opts ...option.ClientOption) (*DiscussClient, error)
NewDiscussRESTClient creates a new discuss service rest client.
An API for using Generative Language Models (GLMs) in dialog applications.
Also known as large language models (LLMs), this API provides models that are trained for multi-turn dialog.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewDiscussRESTClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func (*DiscussClient) Close
func (c *DiscussClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*DiscussClient) Connection (deprecated)
func (c *DiscussClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated: Connections are now pooled so this method does not always return the same resource.
func (*DiscussClient) CountMessageTokens
func (c *DiscussClient) CountMessageTokens(ctx context.Context, req *generativelanguagepb.CountMessageTokensRequest, opts ...gax.CallOption) (*generativelanguagepb.CountMessageTokensResponse, error)
CountMessageTokens runs a model’s tokenizer on a string and returns the token count.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewDiscussClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.CountMessageTokensRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#CountMessageTokensRequest.
}
resp, err := c.CountMessageTokens(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*DiscussClient) GenerateMessage
func (c *DiscussClient) GenerateMessage(ctx context.Context, req *generativelanguagepb.GenerateMessageRequest, opts ...gax.CallOption) (*generativelanguagepb.GenerateMessageResponse, error)
GenerateMessage generates a response from the model given an input MessagePrompt.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewDiscussClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GenerateMessageRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GenerateMessageRequest.
}
resp, err := c.GenerateMessage(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
DocumentIterator
type DocumentIterator struct {
// Response is the raw response for the current page.
// It must be cast to the RPC response type.
// Calling Next() or InternalFetch() updates this value.
Response interface{}
// InternalFetch is for use by the Google Cloud Libraries only.
// It is not part of the stable interface of this package.
//
// InternalFetch returns results from a single call to the underlying RPC.
// The number of results is no greater than pageSize.
// If there are no more results, nextPageToken is empty and err is nil.
InternalFetch func(pageSize int, pageToken string) (results []*generativelanguagepb.Document, nextPageToken string, err error)
// contains filtered or unexported fields
}
DocumentIterator manages a stream of *generativelanguagepb.Document.
func (*DocumentIterator) Next
func (it *DocumentIterator) Next() (*generativelanguagepb.Document, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*DocumentIterator) PageInfo
func (it *DocumentIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
GenerativeCallOptions
type GenerativeCallOptions struct {
GenerateContent []gax.CallOption
GenerateAnswer []gax.CallOption
StreamGenerateContent []gax.CallOption
EmbedContent []gax.CallOption
BatchEmbedContents []gax.CallOption
CountTokens []gax.CallOption
}
GenerativeCallOptions contains the retry settings for each method of GenerativeClient.
GenerativeClient
type GenerativeClient struct {
// The call options for this service.
CallOptions *GenerativeCallOptions
// contains filtered or unexported fields
}
GenerativeClient is a client for interacting with Generative Language API. Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
API for using Large Models that generate multimodal content and have additional capabilities beyond text generation.
func NewGenerativeClient
func NewGenerativeClient(ctx context.Context, opts ...option.ClientOption) (*GenerativeClient, error)
NewGenerativeClient creates a new generative service client based on gRPC. The returned client must be Closed when it is done being used to clean up its underlying connections.
API for using Large Models that generate multimodal content and have additional capabilities beyond text generation.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewGenerativeClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func NewGenerativeRESTClient
func NewGenerativeRESTClient(ctx context.Context, opts ...option.ClientOption) (*GenerativeClient, error)
NewGenerativeRESTClient creates a new generative service rest client.
API for using Large Models that generate multimodal content and have additional capabilities beyond text generation.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewGenerativeRESTClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func (*GenerativeClient) BatchEmbedContents
func (c *GenerativeClient) BatchEmbedContents(ctx context.Context, req *generativelanguagepb.BatchEmbedContentsRequest, opts ...gax.CallOption) (*generativelanguagepb.BatchEmbedContentsResponse, error)
BatchEmbedContents generates multiple embeddings from the model given input text in a synchronous call.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewGenerativeClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.BatchEmbedContentsRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#BatchEmbedContentsRequest.
}
resp, err := c.BatchEmbedContents(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*GenerativeClient) Close
func (c *GenerativeClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*GenerativeClient) Connection (deprecated)
func (c *GenerativeClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated: Connections are now pooled so this method does not always return the same resource.
func (*GenerativeClient) CountTokens
func (c *GenerativeClient) CountTokens(ctx context.Context, req *generativelanguagepb.CountTokensRequest, opts ...gax.CallOption) (*generativelanguagepb.CountTokensResponse, error)
CountTokens runs a model’s tokenizer on input content and returns the token count.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewGenerativeClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.CountTokensRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#CountTokensRequest.
}
resp, err := c.CountTokens(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*GenerativeClient) EmbedContent
func (c *GenerativeClient) EmbedContent(ctx context.Context, req *generativelanguagepb.EmbedContentRequest, opts ...gax.CallOption) (*generativelanguagepb.EmbedContentResponse, error)
EmbedContent generates an embedding from the model given an input Content.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewGenerativeClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.EmbedContentRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#EmbedContentRequest.
}
resp, err := c.EmbedContent(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*GenerativeClient) GenerateAnswer
func (c *GenerativeClient) GenerateAnswer(ctx context.Context, req *generativelanguagepb.GenerateAnswerRequest, opts ...gax.CallOption) (*generativelanguagepb.GenerateAnswerResponse, error)
GenerateAnswer generates a grounded answer from the model given an input GenerateAnswerRequest.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewGenerativeClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GenerateAnswerRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GenerateAnswerRequest.
}
resp, err := c.GenerateAnswer(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*GenerativeClient) GenerateContent
func (c *GenerativeClient) GenerateContent(ctx context.Context, req *generativelanguagepb.GenerateContentRequest, opts ...gax.CallOption) (*generativelanguagepb.GenerateContentResponse, error)
GenerateContent generates a response from the model given an input GenerateContentRequest.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewGenerativeClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GenerateContentRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GenerateContentRequest.
}
resp, err := c.GenerateContent(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*GenerativeClient) SetGoogleClientInfo
func (c *GenerativeClient) SetGoogleClientInfo(keyval string)
func (*GenerativeClient) StreamGenerateContent
func (c *GenerativeClient) StreamGenerateContent(ctx context.Context, req *generativelanguagepb.GenerateContentRequest, opts ...gax.CallOption) (generativelanguagepb.GenerativeService_StreamGenerateContentClient, error)
StreamGenerateContent generates a streamed response from the model given an input GenerateContentRequest.
ModelCallOptions
type ModelCallOptions struct {
GetModel []gax.CallOption
ListModels []gax.CallOption
GetTunedModel []gax.CallOption
ListTunedModels []gax.CallOption
CreateTunedModel []gax.CallOption
UpdateTunedModel []gax.CallOption
DeleteTunedModel []gax.CallOption
}
ModelCallOptions contains the retry settings for each method of ModelClient.
ModelClient
type ModelClient struct {
// The call options for this service.
CallOptions *ModelCallOptions
// LROClient is used internally to handle long-running operations.
// It is exposed so that its CallOptions can be modified if required.
// Users should not Close this client.
LROClient *lroauto.OperationsClient
// contains filtered or unexported fields
}
ModelClient is a client for interacting with Generative Language API. Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
Provides methods for getting metadata information about Generative Models.
func NewModelClient
func NewModelClient(ctx context.Context, opts ...option.ClientOption) (*ModelClient, error)
NewModelClient creates a new model service client based on gRPC. The returned client must be Closed when it is done being used to clean up its underlying connections.
Provides methods for getting metadata information about Generative Models.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewModelClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func NewModelRESTClient
func NewModelRESTClient(ctx context.Context, opts ...option.ClientOption) (*ModelClient, error)
NewModelRESTClient creates a new model service rest client.
Provides methods for getting metadata information about Generative Models.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewModelRESTClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func (*ModelClient) Close
func (c *ModelClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*ModelClient) Connection (deprecated)
func (c *ModelClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated: Connections are now pooled so this method does not always return the same resource.
func (*ModelClient) CreateTunedModel
func (c *ModelClient) CreateTunedModel(ctx context.Context, req *generativelanguagepb.CreateTunedModelRequest, opts ...gax.CallOption) (*CreateTunedModelOperation, error)
CreateTunedModel creates a tuned model. Intermediate tuning progress (if any) is accessed through the [google.longrunning.Operations] service.
Status and results can be accessed through the Operations service. Example: GET /v1/tunedModels/az2mb0bpw6i/operations/000-111-222
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewModelClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.CreateTunedModelRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#CreateTunedModelRequest.
}
op, err := c.CreateTunedModel(ctx, req)
if err != nil {
// TODO: Handle error.
}
resp, err := op.Wait(ctx)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*ModelClient) CreateTunedModelOperation
func (c *ModelClient) CreateTunedModelOperation(name string) *CreateTunedModelOperation
CreateTunedModelOperation returns a new CreateTunedModelOperation from a given name. The name must be that of a previously created CreateTunedModelOperation, possibly from a different process.
func (*ModelClient) DeleteTunedModel
func (c *ModelClient) DeleteTunedModel(ctx context.Context, req *generativelanguagepb.DeleteTunedModelRequest, opts ...gax.CallOption) error
DeleteTunedModel deletes a tuned model.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewModelClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.DeleteTunedModelRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#DeleteTunedModelRequest.
}
err = c.DeleteTunedModel(ctx, req)
if err != nil {
// TODO: Handle error.
}
}
func (*ModelClient) GetModel
func (c *ModelClient) GetModel(ctx context.Context, req *generativelanguagepb.GetModelRequest, opts ...gax.CallOption) (*generativelanguagepb.Model, error)
GetModel gets information about a specific Model.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewModelClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GetModelRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GetModelRequest.
}
resp, err := c.GetModel(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*ModelClient) GetTunedModel
func (c *ModelClient) GetTunedModel(ctx context.Context, req *generativelanguagepb.GetTunedModelRequest, opts ...gax.CallOption) (*generativelanguagepb.TunedModel, error)
GetTunedModel gets information about a specific TunedModel.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewModelClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GetTunedModelRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GetTunedModelRequest.
}
resp, err := c.GetTunedModel(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*ModelClient) ListModels
func (c *ModelClient) ListModels(ctx context.Context, req *generativelanguagepb.ListModelsRequest, opts ...gax.CallOption) *ModelIterator
ListModels lists models available through the API.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
"google.golang.org/api/iterator"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewModelClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.ListModelsRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#ListModelsRequest.
}
it := c.ListModels(ctx, req)
for {
resp, err := it.Next()
if err == iterator.Done {
break
}
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
}
func (*ModelClient) ListTunedModels
func (c *ModelClient) ListTunedModels(ctx context.Context, req *generativelanguagepb.ListTunedModelsRequest, opts ...gax.CallOption) *TunedModelIterator
ListTunedModels lists tuned models owned by the user.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
"google.golang.org/api/iterator"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewModelClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.ListTunedModelsRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#ListTunedModelsRequest.
}
it := c.ListTunedModels(ctx, req)
for {
resp, err := it.Next()
if err == iterator.Done {
break
}
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
}
func (*ModelClient) UpdateTunedModel
func (c *ModelClient) UpdateTunedModel(ctx context.Context, req *generativelanguagepb.UpdateTunedModelRequest, opts ...gax.CallOption) (*generativelanguagepb.TunedModel, error)
UpdateTunedModel updates a tuned model.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewModelClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.UpdateTunedModelRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#UpdateTunedModelRequest.
}
resp, err := c.UpdateTunedModel(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
ModelIterator
type ModelIterator struct {
// Response is the raw response for the current page.
// It must be cast to the RPC response type.
// Calling Next() or InternalFetch() updates this value.
Response interface{}
// InternalFetch is for use by the Google Cloud Libraries only.
// It is not part of the stable interface of this package.
//
// InternalFetch returns results from a single call to the underlying RPC.
// The number of results is no greater than pageSize.
// If there are no more results, nextPageToken is empty and err is nil.
InternalFetch func(pageSize int, pageToken string) (results []*generativelanguagepb.Model, nextPageToken string, err error)
// contains filtered or unexported fields
}
ModelIterator manages a stream of *generativelanguagepb.Model.
func (*ModelIterator) Next
func (it *ModelIterator) Next() (*generativelanguagepb.Model, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*ModelIterator) PageInfo
func (it *ModelIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
PermissionCallOptions
type PermissionCallOptions struct {
CreatePermission []gax.CallOption
GetPermission []gax.CallOption
ListPermissions []gax.CallOption
UpdatePermission []gax.CallOption
DeletePermission []gax.CallOption
TransferOwnership []gax.CallOption
}
PermissionCallOptions contains the retry settings for each method of PermissionClient.
PermissionClient
type PermissionClient struct {
// The call options for this service.
CallOptions *PermissionCallOptions
// contains filtered or unexported fields
}
PermissionClient is a client for interacting with Generative Language API. Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
Provides methods for managing permissions to PaLM API resources.
func NewPermissionClient
func NewPermissionClient(ctx context.Context, opts ...option.ClientOption) (*PermissionClient, error)
NewPermissionClient creates a new permission service client based on gRPC. The returned client must be Closed when it is done being used to clean up its underlying connections.
Provides methods for managing permissions to PaLM API resources.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewPermissionClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func NewPermissionRESTClient
func NewPermissionRESTClient(ctx context.Context, opts ...option.ClientOption) (*PermissionClient, error)
NewPermissionRESTClient creates a new permission service rest client.
Provides methods for managing permissions to PaLM API resources.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewPermissionRESTClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func (*PermissionClient) Close
func (c *PermissionClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*PermissionClient) Connection (deprecated)
func (c *PermissionClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated: Connections are now pooled so this method does not always return the same resource.
func (*PermissionClient) CreatePermission
func (c *PermissionClient) CreatePermission(ctx context.Context, req *generativelanguagepb.CreatePermissionRequest, opts ...gax.CallOption) (*generativelanguagepb.Permission, error)
CreatePermission create a permission to a specific resource.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewPermissionClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.CreatePermissionRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#CreatePermissionRequest.
}
resp, err := c.CreatePermission(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*PermissionClient) DeletePermission
func (c *PermissionClient) DeletePermission(ctx context.Context, req *generativelanguagepb.DeletePermissionRequest, opts ...gax.CallOption) error
DeletePermission deletes the permission.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewPermissionClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.DeletePermissionRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#DeletePermissionRequest.
}
err = c.DeletePermission(ctx, req)
if err != nil {
// TODO: Handle error.
}
}
func (*PermissionClient) GetPermission
func (c *PermissionClient) GetPermission(ctx context.Context, req *generativelanguagepb.GetPermissionRequest, opts ...gax.CallOption) (*generativelanguagepb.Permission, error)
GetPermission gets information about a specific Permission.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewPermissionClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GetPermissionRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GetPermissionRequest.
}
resp, err := c.GetPermission(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*PermissionClient) ListPermissions
func (c *PermissionClient) ListPermissions(ctx context.Context, req *generativelanguagepb.ListPermissionsRequest, opts ...gax.CallOption) *PermissionIterator
ListPermissions lists permissions for the specific resource.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
"google.golang.org/api/iterator"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewPermissionClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.ListPermissionsRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#ListPermissionsRequest.
}
it := c.ListPermissions(ctx, req)
for {
resp, err := it.Next()
if err == iterator.Done {
break
}
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
}
func (*PermissionClient) TransferOwnership
func (c *PermissionClient) TransferOwnership(ctx context.Context, req *generativelanguagepb.TransferOwnershipRequest, opts ...gax.CallOption) (*generativelanguagepb.TransferOwnershipResponse, error)
TransferOwnership transfers ownership of the tuned model. This is the only way to change ownership of the tuned model. The current owner will be downgraded to writer role.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewPermissionClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.TransferOwnershipRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#TransferOwnershipRequest.
}
resp, err := c.TransferOwnership(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*PermissionClient) UpdatePermission
func (c *PermissionClient) UpdatePermission(ctx context.Context, req *generativelanguagepb.UpdatePermissionRequest, opts ...gax.CallOption) (*generativelanguagepb.Permission, error)
UpdatePermission updates the permission.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewPermissionClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.UpdatePermissionRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#UpdatePermissionRequest.
}
resp, err := c.UpdatePermission(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
PermissionIterator
type PermissionIterator struct {
// Response is the raw response for the current page.
// It must be cast to the RPC response type.
// Calling Next() or InternalFetch() updates this value.
Response interface{}
// InternalFetch is for use by the Google Cloud Libraries only.
// It is not part of the stable interface of this package.
//
// InternalFetch returns results from a single call to the underlying RPC.
// The number of results is no greater than pageSize.
// If there are no more results, nextPageToken is empty and err is nil.
InternalFetch func(pageSize int, pageToken string) (results []*generativelanguagepb.Permission, nextPageToken string, err error)
// contains filtered or unexported fields
}
PermissionIterator manages a stream of *generativelanguagepb.Permission.
func (*PermissionIterator) Next
func (it *PermissionIterator) Next() (*generativelanguagepb.Permission, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*PermissionIterator) PageInfo
func (it *PermissionIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
RetrieverCallOptions
type RetrieverCallOptions struct {
CreateCorpus []gax.CallOption
GetCorpus []gax.CallOption
UpdateCorpus []gax.CallOption
DeleteCorpus []gax.CallOption
ListCorpora []gax.CallOption
QueryCorpus []gax.CallOption
CreateDocument []gax.CallOption
GetDocument []gax.CallOption
UpdateDocument []gax.CallOption
DeleteDocument []gax.CallOption
ListDocuments []gax.CallOption
QueryDocument []gax.CallOption
CreateChunk []gax.CallOption
BatchCreateChunks []gax.CallOption
GetChunk []gax.CallOption
UpdateChunk []gax.CallOption
BatchUpdateChunks []gax.CallOption
DeleteChunk []gax.CallOption
BatchDeleteChunks []gax.CallOption
ListChunks []gax.CallOption
}
RetrieverCallOptions contains the retry settings for each method of RetrieverClient.
RetrieverClient
type RetrieverClient struct {
// The call options for this service.
CallOptions *RetrieverCallOptions
// contains filtered or unexported fields
}
RetrieverClient is a client for interacting with Generative Language API. Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
An API for semantic search over a corpus of user uploaded content.
func NewRetrieverClient
func NewRetrieverClient(ctx context.Context, opts ...option.ClientOption) (*RetrieverClient, error)
NewRetrieverClient creates a new retriever service client based on gRPC. The returned client must be Closed when it is done being used to clean up its underlying connections.
An API for semantic search over a corpus of user uploaded content.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func NewRetrieverRESTClient
func NewRetrieverRESTClient(ctx context.Context, opts ...option.ClientOption) (*RetrieverClient, error)
NewRetrieverRESTClient creates a new retriever service rest client.
An API for semantic search over a corpus of user uploaded content.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverRESTClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func (*RetrieverClient) BatchCreateChunks
func (c *RetrieverClient) BatchCreateChunks(ctx context.Context, req *generativelanguagepb.BatchCreateChunksRequest, opts ...gax.CallOption) (*generativelanguagepb.BatchCreateChunksResponse, error)
BatchCreateChunks batch create Chunks.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.BatchCreateChunksRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#BatchCreateChunksRequest.
}
resp, err := c.BatchCreateChunks(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) BatchDeleteChunks
func (c *RetrieverClient) BatchDeleteChunks(ctx context.Context, req *generativelanguagepb.BatchDeleteChunksRequest, opts ...gax.CallOption) error
BatchDeleteChunks batch delete Chunks.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.BatchDeleteChunksRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#BatchDeleteChunksRequest.
}
err = c.BatchDeleteChunks(ctx, req)
if err != nil {
// TODO: Handle error.
}
}
func (*RetrieverClient) BatchUpdateChunks
func (c *RetrieverClient) BatchUpdateChunks(ctx context.Context, req *generativelanguagepb.BatchUpdateChunksRequest, opts ...gax.CallOption) (*generativelanguagepb.BatchUpdateChunksResponse, error)
BatchUpdateChunks batch update Chunks.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.BatchUpdateChunksRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#BatchUpdateChunksRequest.
}
resp, err := c.BatchUpdateChunks(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) Close
func (c *RetrieverClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*RetrieverClient) Connection (deprecated)
func (c *RetrieverClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated: Connections are now pooled so this method does not always return the same resource.
func (*RetrieverClient) CreateChunk
func (c *RetrieverClient) CreateChunk(ctx context.Context, req *generativelanguagepb.CreateChunkRequest, opts ...gax.CallOption) (*generativelanguagepb.Chunk, error)
CreateChunk creates a Chunk.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.CreateChunkRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#CreateChunkRequest.
}
resp, err := c.CreateChunk(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) CreateCorpus
func (c *RetrieverClient) CreateCorpus(ctx context.Context, req *generativelanguagepb.CreateCorpusRequest, opts ...gax.CallOption) (*generativelanguagepb.Corpus, error)
CreateCorpus creates an empty Corpus.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.CreateCorpusRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#CreateCorpusRequest.
}
resp, err := c.CreateCorpus(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) CreateDocument
func (c *RetrieverClient) CreateDocument(ctx context.Context, req *generativelanguagepb.CreateDocumentRequest, opts ...gax.CallOption) (*generativelanguagepb.Document, error)
CreateDocument creates an empty Document.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.CreateDocumentRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#CreateDocumentRequest.
}
resp, err := c.CreateDocument(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) DeleteChunk
func (c *RetrieverClient) DeleteChunk(ctx context.Context, req *generativelanguagepb.DeleteChunkRequest, opts ...gax.CallOption) error
DeleteChunk deletes a Chunk.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.DeleteChunkRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#DeleteChunkRequest.
}
err = c.DeleteChunk(ctx, req)
if err != nil {
// TODO: Handle error.
}
}
func (*RetrieverClient) DeleteCorpus
func (c *RetrieverClient) DeleteCorpus(ctx context.Context, req *generativelanguagepb.DeleteCorpusRequest, opts ...gax.CallOption) error
DeleteCorpus deletes a Corpus.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.DeleteCorpusRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#DeleteCorpusRequest.
}
err = c.DeleteCorpus(ctx, req)
if err != nil {
// TODO: Handle error.
}
}
func (*RetrieverClient) DeleteDocument
func (c *RetrieverClient) DeleteDocument(ctx context.Context, req *generativelanguagepb.DeleteDocumentRequest, opts ...gax.CallOption) error
DeleteDocument deletes a Document.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.DeleteDocumentRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#DeleteDocumentRequest.
}
err = c.DeleteDocument(ctx, req)
if err != nil {
// TODO: Handle error.
}
}
func (*RetrieverClient) GetChunk
func (c *RetrieverClient) GetChunk(ctx context.Context, req *generativelanguagepb.GetChunkRequest, opts ...gax.CallOption) (*generativelanguagepb.Chunk, error)
GetChunk gets information about a specific Chunk.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GetChunkRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GetChunkRequest.
}
resp, err := c.GetChunk(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) GetCorpus
func (c *RetrieverClient) GetCorpus(ctx context.Context, req *generativelanguagepb.GetCorpusRequest, opts ...gax.CallOption) (*generativelanguagepb.Corpus, error)
GetCorpus gets information about a specific Corpus.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GetCorpusRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GetCorpusRequest.
}
resp, err := c.GetCorpus(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) GetDocument
func (c *RetrieverClient) GetDocument(ctx context.Context, req *generativelanguagepb.GetDocumentRequest, opts ...gax.CallOption) (*generativelanguagepb.Document, error)
GetDocument gets information about a specific Document.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GetDocumentRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GetDocumentRequest.
}
resp, err := c.GetDocument(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) ListChunks
func (c *RetrieverClient) ListChunks(ctx context.Context, req *generativelanguagepb.ListChunksRequest, opts ...gax.CallOption) *ChunkIterator
ListChunks lists all Chunks in a Document.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
"google.golang.org/api/iterator"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.ListChunksRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#ListChunksRequest.
}
it := c.ListChunks(ctx, req)
for {
resp, err := it.Next()
if err == iterator.Done {
break
}
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
}
func (*RetrieverClient) ListCorpora
func (c *RetrieverClient) ListCorpora(ctx context.Context, req *generativelanguagepb.ListCorporaRequest, opts ...gax.CallOption) *CorpusIterator
ListCorpora lists all Corpora owned by the user.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
"google.golang.org/api/iterator"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.ListCorporaRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#ListCorporaRequest.
}
it := c.ListCorpora(ctx, req)
for {
resp, err := it.Next()
if err == iterator.Done {
break
}
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
}
func (*RetrieverClient) ListDocuments
func (c *RetrieverClient) ListDocuments(ctx context.Context, req *generativelanguagepb.ListDocumentsRequest, opts ...gax.CallOption) *DocumentIterator
ListDocuments lists all Documents in a Corpus.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
"google.golang.org/api/iterator"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.ListDocumentsRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#ListDocumentsRequest.
}
it := c.ListDocuments(ctx, req)
for {
resp, err := it.Next()
if err == iterator.Done {
break
}
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
}
func (*RetrieverClient) QueryCorpus
func (c *RetrieverClient) QueryCorpus(ctx context.Context, req *generativelanguagepb.QueryCorpusRequest, opts ...gax.CallOption) (*generativelanguagepb.QueryCorpusResponse, error)
QueryCorpus performs semantic search over a Corpus.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.QueryCorpusRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#QueryCorpusRequest.
}
resp, err := c.QueryCorpus(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) QueryDocument
func (c *RetrieverClient) QueryDocument(ctx context.Context, req *generativelanguagepb.QueryDocumentRequest, opts ...gax.CallOption) (*generativelanguagepb.QueryDocumentResponse, error)
QueryDocument performs semantic search over a Document.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.QueryDocumentRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#QueryDocumentRequest.
}
resp, err := c.QueryDocument(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) UpdateChunk
func (c *RetrieverClient) UpdateChunk(ctx context.Context, req *generativelanguagepb.UpdateChunkRequest, opts ...gax.CallOption) (*generativelanguagepb.Chunk, error)
UpdateChunk updates a Chunk.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.UpdateChunkRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#UpdateChunkRequest.
}
resp, err := c.UpdateChunk(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) UpdateCorpus
func (c *RetrieverClient) UpdateCorpus(ctx context.Context, req *generativelanguagepb.UpdateCorpusRequest, opts ...gax.CallOption) (*generativelanguagepb.Corpus, error)
UpdateCorpus updates a Corpus.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.UpdateCorpusRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#UpdateCorpusRequest.
}
resp, err := c.UpdateCorpus(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*RetrieverClient) UpdateDocument
func (c *RetrieverClient) UpdateDocument(ctx context.Context, req *generativelanguagepb.UpdateDocumentRequest, opts ...gax.CallOption) (*generativelanguagepb.Document, error)
UpdateDocument updates a Document.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewRetrieverClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.UpdateDocumentRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#UpdateDocumentRequest.
}
resp, err := c.UpdateDocument(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
TextCallOptions
type TextCallOptions struct {
GenerateText []gax.CallOption
EmbedText []gax.CallOption
BatchEmbedText []gax.CallOption
CountTextTokens []gax.CallOption
}
TextCallOptions contains the retry settings for each method of TextClient.
TextClient
type TextClient struct {
// The call options for this service.
CallOptions *TextCallOptions
// contains filtered or unexported fields
}
TextClient is a client for interacting with Generative Language API. Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
API for using Generative Language Models (GLMs) trained to generate text.
Also known as Large Language Models (LLM)s, these generate text given an input prompt from the user.
func NewTextClient
func NewTextClient(ctx context.Context, opts ...option.ClientOption) (*TextClient, error)
NewTextClient creates a new text service client based on gRPC. The returned client must be Closed when it is done being used to clean up its underlying connections.
API for using Generative Language Models (GLMs) trained to generate text.
Also known as Large Language Models (LLM)s, these generate text given an input prompt from the user.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewTextClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func NewTextRESTClient
func NewTextRESTClient(ctx context.Context, opts ...option.ClientOption) (*TextClient, error)
NewTextRESTClient creates a new text service rest client.
API for using Generative Language Models (GLMs) trained to generate text.
Also known as Large Language Models (LLM)s, these generate text given an input prompt from the user.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewTextRESTClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
// TODO: Use client.
_ = c
}
func (*TextClient) BatchEmbedText
func (c *TextClient) BatchEmbedText(ctx context.Context, req *generativelanguagepb.BatchEmbedTextRequest, opts ...gax.CallOption) (*generativelanguagepb.BatchEmbedTextResponse, error)
BatchEmbedText generates multiple embeddings from the model given input text in a synchronous call.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewTextClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.BatchEmbedTextRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#BatchEmbedTextRequest.
}
resp, err := c.BatchEmbedText(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*TextClient) Close
func (c *TextClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*TextClient) Connection (deprecated)
func (c *TextClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated: Connections are now pooled so this method does not always return the same resource.
func (*TextClient) CountTextTokens
func (c *TextClient) CountTextTokens(ctx context.Context, req *generativelanguagepb.CountTextTokensRequest, opts ...gax.CallOption) (*generativelanguagepb.CountTextTokensResponse, error)
CountTextTokens runs a model’s tokenizer on a text and returns the token count.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewTextClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.CountTextTokensRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#CountTextTokensRequest.
}
resp, err := c.CountTextTokens(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*TextClient) EmbedText
func (c *TextClient) EmbedText(ctx context.Context, req *generativelanguagepb.EmbedTextRequest, opts ...gax.CallOption) (*generativelanguagepb.EmbedTextResponse, error)
EmbedText generates an embedding from the model given an input message.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewTextClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.EmbedTextRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#EmbedTextRequest.
}
resp, err := c.EmbedText(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
func (*TextClient) GenerateText
func (c *TextClient) GenerateText(ctx context.Context, req *generativelanguagepb.GenerateTextRequest, opts ...gax.CallOption) (*generativelanguagepb.GenerateTextResponse, error)
GenerateText generates a response from the model given an input message.
Example
package main
import (
"context"
generativelanguage "cloud.google.com/go/ai/generativelanguage/apiv1beta"
generativelanguagepb "cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb"
)
func main() {
ctx := context.Background()
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in:
// https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
c, err := generativelanguage.NewTextClient(ctx)
if err != nil {
// TODO: Handle error.
}
defer c.Close()
req := &generativelanguagepb.GenerateTextRequest{
// TODO: Fill request struct fields.
// See https://pkg.go.dev/cloud.google.com/go/ai/generativelanguage/apiv1beta/generativelanguagepb#GenerateTextRequest.
}
resp, err := c.GenerateText(ctx, req)
if err != nil {
// TODO: Handle error.
}
// TODO: Use resp.
_ = resp
}
TunedModelIterator
type TunedModelIterator struct {
// Response is the raw response for the current page.
// It must be cast to the RPC response type.
// Calling Next() or InternalFetch() updates this value.
Response interface{}
// InternalFetch is for use by the Google Cloud Libraries only.
// It is not part of the stable interface of this package.
//
// InternalFetch returns results from a single call to the underlying RPC.
// The number of results is no greater than pageSize.
// If there are no more results, nextPageToken is empty and err is nil.
InternalFetch func(pageSize int, pageToken string) (results []*generativelanguagepb.TunedModel, nextPageToken string, err error)
// contains filtered or unexported fields
}
TunedModelIterator manages a stream of *generativelanguagepb.TunedModel.
func (*TunedModelIterator) Next
func (it *TunedModelIterator) Next() (*generativelanguagepb.TunedModel, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*TunedModelIterator) PageInfo
func (it *TunedModelIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.