PaLM API 使用 OAuth 进行身份验证

PaLM API 使用 OAuth 进行身份验证

PaLM API 允许您根据自己的数据调整模型。由于它是您的数据和调整的模型,因此需要比 API 密钥更严格的访问控制。

若要运行本快速入门,需要:

  • 一个 Google Cloud 项目。
  • gcloud CLI 的本地安装

设置云项目

若要完成本快速入门,首先需要设置云项目。

1. 启用 API

在使用 Google API 之前,您需要在 Google Cloud 项目中启用它们。
在 Google Cloud 控制台中,启用 Google Generative Language API。
启用API

2. 配置 OAuth 同意屏幕

接下来,配置项目的 OAuth 同意屏幕,并将您自己添加为测试 用户。如果您已经完成了 Cloud 项目的此步骤,请跳到 下一节。

  1. 在 Google Cloud 控制台中,转到 OAuth > API 和服务>菜单 同意屏幕。

转到 OAuth 同意屏幕

  1. 为您的应用选择用户类型“外部”,然后单击“创建”。

  2. 填写应用注册表单(可以将大多数字段留空), ,然后点按“存储并继续”。

  3. 现在,您可以跳过添加范围,然后单击保存并继续。在 未来,当您创建用于 Google Workspace 外部的应用时 组织,则必须添加并验证 应用程序需要。

  4. 添加测试用户:
    在“测试用户”下,单击“添加用户”。
    输入您的电子邮件地址和任何其他授权测试用户,然后 单击保存并继续。

  5. 查看应用注册摘要。要进行更改,请单击编辑。如果 应用注册看起来正常,单击“返回仪表板”。

3. 授权桌面应用程序的凭据

若要以最终用户身份进行身份验证并访问应用中的用户数据,需要 创建一个或多个 OAuth 2.0 客户端 ID。客户端 ID 用于标识 单个应用程序连接到 Google 的 OAuth 服务器。如果您的应用在多个平台上运行, 您必须为每个平台创建单独的客户端 ID。

  1. 在 Google Cloud 控制台中,转到 API 和服务>凭据>菜单。

转到凭据

  1. 单击 OAuth 客户端 ID >创建凭据。

  2. 单击“桌面应用”>“应用程序类型”。

  3. 在“名称”字段中,键入凭据的名称。此名称仅 显示在 Google Cloud 控制台中。

  4. 单击创建。此时将显示 OAuth 客户端创建的屏幕,其中显示您的新 客户端 ID 和客户端密码。

  5. 单击“确定”。新创建的凭据将显示在“OAuth 2.0 客户端”下 ID。

  6. 单击下载按钮以保存 JSON 文件。它将被另存为 ,并将其重命名为并移动到您的工作目录。client_secret_.jsonclient_secret.json

设置应用程序默认凭据

要将文件转换为可用的凭据,请传递其 位置命令的参数。client_secret.jsongcloud auth application-default login--client-id-file

gcloud auth application-default login --client-id-file=client_secret.json --scopes='https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/generative-language.tuning'

通过本教程中简化的项目设置,您将得到“Google 尚未 已验证此应用程序。这是正常的,选择“继续”。

这会将生成的令牌放置在已知位置,以便可以访问它 by 或客户端库。

gcloud auth application-default login --no-browser --client-id-file=client_secret.json --scopes='https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/generative-language.tuning'

测试

pip install google-generativeai
import google.generativeai as palm

print('Available base models:', [m.name for m in palm.list_models()])
print('My tuned models:', [m.name for m in palm.list_tuned_models()])

output:
Available base models: [‘models/chat-bison-001’, ‘models/text-bison-001’, ‘models/embedding-gecko-001’]
My tuned models: []

你可能感兴趣的:(palm,数据库,服务器)