您可以使用任何可以托管 Go 二进制文件的服务将 Firebase Genkit 流部署为 Web 服务。作为示例,本页面将引导您完成部署默认示例流程的一般过程,并指出您必须在哪些位置执行特定于提供方的操作。
为 Genkit 示例项目创建一个目录:
mkdir -p ~/tmp/genkit-cloud-project
cd ~/tmp/genkit-cloud-project
如果您要使用 IDE,请将其打开并转到此目录。
在项目目录中初始化 Go 模块:
go mod init example/cloudrun
在项目中初始化 Genkit:
genkit init
选择要使用的模型提供商。
接受其余提示的默认值。
genkit
工具将创建一个示例源文件,以帮助您开始开发自己的 AI 流程。不过,对于本教程的其余部分,您只需部署示例流程即可。修改示例文件(
main.go
或genkit.go
),以明确指定流服务器应监听的端口:if err := genkit.Init(ctx, &genkit.Options{FlowAddr: ":3400"}, // Add this parameter. ); err != nil { log.Fatal(err) }
如果您的提供方要求您监听特定端口,请务必相应地配置 Genkit。
实现某种形式的身份验证和授权,以控制对您计划部署的流程的访问。
由于大多数生成式 AI 服务都是按流量计费的,因此您很可能不希望允许对调用它们的端点进行开放访问。某些托管服务会提供一个身份验证层作为部署在其上的应用的前端,您可以使用该前端来实现此目的。
使 API 凭据可供部署的函数使用。根据您选择的模型提供程序,执行以下某项操作:
Gemini (Google AI)
Gemini (Vertex AI)
在 Cloud 控制台中,为您的项目启用 Vertex AI API。
如果您还没有服务帐号,请在 IAM 页面上创建一个用于访问 Vertex AI API 的服务帐号。
向该帐号授予 Vertex AI User 角色。
在托管环境中设置应用默认凭据。
使用您的 Google Cloud 项目 ID 和您要使用的 Vertex AI API 位置配置该插件。为此,您可以在托管环境中或在
vertexai.Init()
调用中设置GCLOUD_PROJECT
和GCLOUD_LOCATION
环境变量。
您需要为本教程设置的唯一密钥是为模型提供程序设置,但一般而言,您必须为流使用的每项服务执行类似的操作。
可选:在开发者界面中尝试按照您的流程操作:
为您选择的模型提供程序设置本地环境:
Gemini (Google AI)
export GOOGLE_GENAI_API_KEY=<your API key>
Gemini (Vertex AI)
export GCLOUD_PROJECT=<your project ID>
export GCLOUD_LOCATION=us-central1
gcloud auth application-default login
启动界面:
genkit start
在开发者界面 (http://localhost:4000/) 中,运行流程:
点击 menuSuggestionFlow。
在输入 JSON 标签页上,为模型提供主题:
"banana"
点击运行。
如果到目前为止一切正常,您可以使用提供商的工具构建和部署流程。