Red Hat® AI InstructLab on IBM Cloud® 是由 Red Hat Enterprise Linux AI 提供支持的业务就绪、私有和安全的生成式人工智能解决方案。
Red Hat AI InstructLab on IBM Cloud 入门
准备好通过 Red Hat® AI InstructLab on IBM Cloud® 深入了解 人工智能以模型的形式获取、处理、创造和应用知识,从而做出预测、建议或决策的能力。!
InstructLab 是一个开源项目,来自 IBM 和 Red Hat,是进入 机器学习人工智能(AI)和计算机科学的一个分支,专注于利用数据和算法来模仿人类学习的方式,逐步提高人工智能模型的准确性。世界的一个经济高效的切入点。 您可以使用 InstructLab 为大型语言模型做出贡献,而无需拥有和运行硬件基础设施。
什么是 Red Hat AI InstructLab?
要使用 InstructLab,您不需要任何已有知识。 你甚至还不需要有创作的想法。 让我们先熟悉一下这些概念。
InstructLab 是一个用于增强 大语言模型 的项目,这是一种使用机器学习技术生成人类语言的人工智能模型。 首先,您要在所谓的分类法或数据目录中提供对企业最重要的知识和技能。 分类法用于生成合成数据,然后通过多个阶段的微调来训练模型。 这一过程不仅提供一般知识,还提供对您的独特业务需求最为重要的特定技能和背景,从而使您的法律硕士课程与您的目标相一致。
如需了解更多信息,请参阅 如何操作。 或者,立即开始 准备和上传您的第一个分类法。
设置您的 IBM Cloud® 账户
在继续之前,请确保您具备以下条件
-
即用即付或订阅 IBM Cloud® 账户。 不支持试用账户。 如需了解更多信息或升级账户,请参阅 账户类型。
-
可选项:如果使用私有资源库存储分类知识文档,请创建 Secrets Manager 实例。
可选:准备分类法
-
使用 IBM Cloud 分类法或创建自己的分类法。
-
如果还没有分类法,可以 fork IBM Cloud 分类法软件仓库,然后克隆到本地计算机。 该分类法已为您创建了正确的文件结构。 您可以在相应的目录中添加知识和技能。
-
要创建自己的分类标准,请参阅“准备分类标准”获取更多信息。
您还可以使用 IBM Cloud 社区的 Jupyter 笔记本创建分类法。 更多信息,请参见 redhat-ai-instructlab-jupyter-notebooks GitHub repo。
-
-
更新分类法。 下面的示例在语言学目录中添加了押韵问题。
a. 在你的分叉中,在
compositional_skills/linguistics目录下创建一个qna.yaml文件。b. 在
qna.yml文件中,添加一个与押韵单词有关的问题。- answer: 'Here are two rhyming words for "cave": 1\. Brave 2\. Gave' question: 'Give me two words that rhyme with cave'c. 如果您添加的内容包括参考文档,如网络文章或 Github 中的文件,您可以像 本例 一样引用 GitHub 公共版本库和文件的 SHA。
document: repo: https://github.com/<organization>/<repository> commit: <commit_sha> patterns: - <filename>.mdd. 保存更改并将更改推送到分支。
f. 可选:验证更新的分类法。
-
在浏览器中打开Github仓库的发布页面。 例如:
https://github.com/<my-org>/taxonomy/releases。 -
单击创建发布。
-
创建一个标签,选择一个目标分支,并为发布输入一个名称。
-
点击发布新闻稿。
-
单击源代码 ( tar.gz ),下载从版本中自动生成的
tar.gz打包文件。 -
可选:如果分类知识文档使用的是私有资源库,请完成以下步骤。
-
按照 GitHub 文档 创建经典的个人访问令牌 (PAT)。
-
在 “版本库访问”部分,将您的 PAT 扩展到分类法版本库。
-
在版本库权限部分,选择内容 >
read-only和元数据 >read-only。
-
使用控制台上传分类标准
完成以下步骤,将分类标准存储在 Object Storage 中。
-
从项目 页面选择项目。
-
点击分类。
-
单击上传并输入以下详细信息。
- 分类文件
- 选择
.tar.gz文件。 - 分类名称
- 给分类法起一个字母数字名称。
- 专用存储库访问
-
- 如果您的分类知识文档位于私有资源库中,请启用此选项。
- Secrets Manager 服务实例 :选择现有实例或创建一个实例。
- Secrets Manager 秘密 : 选择一个现有秘密或创建一个秘密。 如果要创建密文,请选择键值密文类型,并按以下格式添加个人访问令牌。 注意
github_url的值必须包含https://。 URL 与您在分类文档参考repo部分中使用的 URL 相同。
{ "github_url": "https://...", "github_pat": "xxxxx" }更多信息,请参阅 创建键值机密。
- 云存储器
- 要么选择 Object Storage 实例和存储桶,要么创建一个实例和存储桶。
- 服务授权
- 选中复选框,允许 InstructLab 将您的分类法写入 Object Storage
- 可选的存储设置
- 在 Object Storage 中指定分类标准
tar.gz的存储路径。
-
点击上传
使用 CLI 将分类法添加到 Object Storage
完成以下步骤,将分类标准存储在 Object Storage 中。
您可以使用 set 命令保存 Object Storage 水桶的详细信息和凭证等。 这可以简化您今后的命令。 请注意,使用 set 命令时,必须单独设置每个值。 更多信息,请参阅 配置命令参考。
-
从 CLI 登录 IBM Cloud 账户。
ibmcloud login -a https://cloud.ibm.com --sso -r us-east -
如果计划允许 InstructLab 为您创建 IBM Cloud® Object Storage Instance 资源,则以资源组为目标。
ibmcloud target -g <resource_group>示例:
ibmcloud target -g Default
-
为 InstructLab 和 Object Storage 创建授权策略。
ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storage -
可选:如果使用私有 repo 来存储分类知识文档,请完成以下步骤。
-
创建服务授权,允许 InstructLab 访问 Secrets Manager 实例和机密。
ibmcloud iam authorization-policy-create Reader --source-service-name instructlab --target-service-name secrets-manager -
通过创建键值密文,将您的个人访问令牌 (PAT) 添加到 Secrets Manager。 确保按以下格式存储键值详细信息。
{ "github_url": "https://...", "github_pat": "xxxxx" }创建键值密文的示例命令。
ibmcloud secrets-manager secret-create --secret-prototype='{"name": "my-secret","description": "Description of my key-value secret.","secret_type": "kv","secret_group_id": "67d025e1-0248-418f-83ba-deb0ebfb9b4a","labels": ["dev","us-south"],"data": {"github_url": "https://...","github_pat": "xxxxx"},"custom_metadata": {"metadata_custom_key": "metadata_custom_value"},"version_custom_metadata": {"custom_version_key": "custom_version_value"}}'更多信息,请参阅 创建键值机密。
-
列出 Secrets Manager 实例。
ibmcloud resource service-instances --service-name secrets-manager -
获取实例详细信息。
ibmcloud resource service-instance INSTANCE
-
-
运行
taxonomy add --help命令,查看命令选项。ibmcloud ilab taxonomy add --help -
可选如果要使用现有的 Object Storage 实例,请获取服务实例详细信息。
- 列出 Object Storage 实例。
ibmcloud resource service-instances --service-name cloud-object-storage - 获取实例详细信息。
ibmcloud resource service-instances INSTANCE
- 列出 Object Storage 实例。
-
将分类法添加到 Object Storage 桶中。 查看以下命令示例。
快速启动 示例命令,用于在账户中自动创建 Object Storage 实例和水桶,并将
./taxonomy文件夹中的分类标准上传到该实例和水桶。ibmcloud ilab taxonomy add \ --name example-taxonomy-1 \ --taxonomy-path "./taxonomy"将分类标准从机器上的
taxonomy文件夹上传到现有 Object Storage 实例和邮筒的示例命令。ibmcloud ilab taxonomy add \ --name example-taxonomy-name-1 \ --taxonomy-path-cos "taxonomies/taxonomy.tar.gz" \ --taxonomy-path "./taxonomy" \ --cos-bucket example-cloud-object-storage-bucket-1 \ --cos-endpoint https://s3.us-east.cloud-object-storage.appdomain.cloud使用现有 Object Storage 实例和 bucket 以及 Secrets Manager 凭据的示例命令。
ibmcloud ilab taxonomy add \ --name example-taxonomy-1 \ --taxonomy-path-cos taxonomies/taxonomy.tar.gz \ --taxonomy-path "./taxonomy" \ --cos-endpoint https://s3.us-east.cloud-object-storage.appdomain.cloud \ --secrets-manager-git-id SEC-MGR-ID --secrets-manager-git-url https://URL将
/Users/USER/instructlab-taxonomy文件夹中的分类标准上传到自动创建的新邮筒的示例命令。ibmcloud ilab taxonomy add \ --name test \ --taxonomy-path "/Users/USER/instructlab-taxonomy" \ --cos-endpoint https://s3.us-east.cloud-object-storage.appdomain.cloud \ --cos-id 628e4348-2183-42fa-a03a-6f0f78453530
后续步骤?
上传分类标准后,下一步就 是从分类标准中生成数据。