资讯 社区 文档 控制台
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术
AR与VR
数据智能
场景方案
部署方案
行业应用
智能教育
智能医疗
智能零售
智能工业
企业服务
智能政务
信息服务
智能园区

访问令牌

访问令牌

1. 什么是访问令牌

访问令牌用于AI Studio用户进行身份验证,可通过访问令牌向 AI Studio执行授权范围(如仓库相关的读取访问权限、服务 API 的调用权限等)指定的特定操作。

个人访问令牌管理

目前访问令牌允许执行以下权限范围的操作:

  1. Git仓库相关:是指对 AI Studio模型库repo相关操作的权限。

    • 读取:具有此权限的令牌只能用于提供对您账户下仓库的访问权限。如果您需要从AI Studio读取内容(例如,在下载私有模型或进行推理时),请使用此权限。
    • 写入:具有此权限的令牌另外授予对您账户下仓库的写入访问权限。如果您需要创建或修改仓库的内容(例如,在训练模型或修改模型卡时),请使用此令牌。
  2. 非Git仓库相关:是指对该帐号下其他与仓库管理无关的 API 调用权限,如大模型开发 API调用授权。

说明:目前 AI Studio个人中心的默认访问令牌权限包括以上所有权限范围,后续权限范围管理功能将逐步上线,敬请期待。

注意:请谨慎管理您的访问令牌,若该令牌意外泄漏可尽快通过邮箱( aistudio@baidu.com )联系平台更新修改 Token Key。

2. 如何使用访问令牌

AI Studio访问令牌目前支持以下三种使用方式:

  1. 在接口调用时,添加token为入参;
  2. 执行前,设置环境变量AISTUDIO_ACCESS_TOKEN=token值,随后请求将会直接使用环境变量中的token,无需再次输入;
  3. 执行前,设置token值到文件${AISTUDIO_CACHE_HOME}/.cache/aistudio/.auth/token的正文(AISTUDIO_CACHE_HOME值为可配置的sdk本地工作目录,默认为$HOME)(注意:此方式在 AI Studio项目notebook中禁用)

说明:以上三种使用方式的优先级为1>2>3,即前一种设置方式的token值会被优先使用,后一种方法设置的token值将被忽略。

3. 访问令牌应用示例

3.1 示例一:ERNIE Bot SDK的认证鉴权

ERNIE Bot SDK是文心&飞桨官方提供的Python软件开发工具包,简称EB SDK。

EB SDK提供便捷易用的Python接口,可调用文心一言大模型能力,完成包含文本创作、通用对话、语义向量、AI作图在内的多项任务。由于调用文心一言大模型功能属于付费服务,所以使用EB SDK需要优先完成认证鉴权。

EB SDK认证鉴权主要是设置后端和access token,分别通过api_typeaccess_token参数来指定。

对于 AI Studio 的用户,默认使用aistudio后端(api_typeaistudio),可前往个人中心的 访问令牌页面 查看个人专属 access token,复制后填入下面代码中即可(替换{YOUR-ACCESS-TOKEN})。

import erniebot

erniebot.api_type = 'aistudio'
erniebot.access_token = "{YOUR-ACCESS-TOKEN}"

请注意

  • 不同后端的access token获取方式不同,特定后端获取的access token无法用于其他后端的认证鉴权(上述示例为使用aistudio后端的情况)。
  • Access Token属于个人账户的重要隐私信息,切记随意对外公开。
  • aistudio后端的Access Token对应每个用户的个人账户,目前每个账户均拥有100万token的免费额度,可以用于EB SDK相关功能的调用。

更多 ERNIE Bot SDK相关教程及应用体验可参见以下内容:

  1. ERNIE Bot SDK基础使用教程
  2. ERNIE Bot SDK进阶使用教程
  3. ERNIE Bot SDK基础功能体验
  4. ERNIE Bot SDK函数调用功能体验

2 示例二:AI Studio模型库SDK的认证鉴权

飞桨AI Studio模型库 是用户分享深度学习模型、demo体验和相关范例教程的地方,支持用户轻松地创建和管理自己的模型,可通过界面或开发环境快速方便地上传、下载相关模型文件并进行二次开发。

aistudio_sdk.hub库可帮助您在不离开开发环境的情况下与Hub进行交互。您可以轻松创建和管理您的个人仓库,下载和上传文件,并从Hub获得有用的模型和相关元数据。

3.2.1 安装

首先请先安装aistudio-sdk库:

pip install -i https://pypi.org/simple/ aistudio-sdk==0.1.3

3.2.2 快速使用

1. 创建仓库 create repo

使用create_repo()创建一个空仓库,并使用repo_id参数为其命名,此参数由仓库所有者的 UID 和模型英文名组成(userid/model_name_en),可在模型详情页查看并复制.

repo_id 查看复制示意

from aistudio_sdk.hub import create_repo
os.environ["AISTUDIO_ACCESS_TOKEN"] = ""

res = create_repo(
    repo_id='myrepoid',
    model_name='mymodelname',
    desc='mydesc',
    private=False,
    license='Apache License 2.0'
)
print(res)
2. 文件下载 download
from aistudio_sdk.hub import download
os.environ["AISTUDIO_ACCESS_TOKEN"] = ""

res = download(
    repo_id='myname/myrepoid',
    filename='mydir/my file.txt',
    revision='mybranch'
)
print(res)
3. 文件上传 upload
from aistudio_sdk.hub import upload
os.environ["AISTUDIO_ACCESS_TOKEN"] = ""

res = upload(
    repo_id='myname/myrepoid',
    path_or_fileobj='mydir/my file.txt',
    path_in_repo='dir1/dir2/my cloud file.txt'
)
print(res)

更多API 功能即将上线,敬请期待。

注意事项
  1. 特别注意不要混用 ~波浪线 与 /Users/${your_username} 。已测得在特殊情况下,会报错本地文件已存在,导致进程不成功,不同版本的python,表现情况也不同。尽可能使用绝对路径。
  2. 上传普通文件大小限5M。上传大文件(LFS)限5G。
附录

常用参数说明如下:

参数名称 参数说明 数据类型
token Git token 访问令牌。 string
repo_id 仓库名称 string
model_name 模型名称,默认值为仓库名称 string
desc 仓库描述 string
private 公开或者私密:True 私密,False 公开 bool
license license string
filename 下载目标文件名路径,例如path/file1.txt string
path_or_fileobj 待传的本地文件名路径,如/Users/myname/Downloads/README.md string
path_in_repo 上传到仓库里的路径,例如mydir/README.md string
revision 分支 string
上一篇
服务部署
下一篇
数据集