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.