Red Hat® AI InstructLab on IBM Cloud® 是由 Red Hat Enterprise Linux AI 驅動的商業就緒、私有且安全的生成式 AI 解決方案。
開始使用 Red Hat AI InstructLab on IBM Cloud
準備好透過 Red Hat® AI InstructLab on IBM Cloud® 深入了解 人工智能以模型形式獲取、處理、創建和應用知識,以進行預測、建議或決策的能力。!
InstructLab 是一個開放原始碼專案,來自 IBM 和 Red Hat,是進入 機器學習人工智慧 (AI) 和電腦科學的一個分支,著重於使用資料和演算法來模仿人類學習的方式,逐步提高 AI 模型的準確性。世界的一個具成本效益的切入點。 您可以使用 InstructLab 對大型語言模型做出貢獻,而無需擁有和操作硬體基礎架構。
何謂 Red Hat AI InstructLab?
要使用 InstructLab,您不需要有任何預先存在的知識。 您甚至不需要有創作的想法。 讓我們先熟悉一下這些概念。
InstructLab 是一個用於增強 大型語言模型 (LLM) 的專案,它是使用機器學習技術生成人類語言的人工智能模型。 您可以先在分類系統或資料目錄中提供對您的企業最重要的知識和技能。 分類法會用來產生合成資料,然後透過多階段的微調來訓練模型。 這個過程不僅提供一般知識,還提供對您獨特的商業需求而言最重要的特定技能和背景,讓您的 LLM 符合您的目標。
如需詳細資訊,請參閱 如何運作。 或者,跳進並開始 準備和上傳您的第一個分類系統。
設定您的 IBM Cloud® 帳戶
在繼續之前,請確定您已取得下列資料。
-
Pay-As-You-Go 或 Subscription IBM Cloud® 帳戶。 不支援試算帳戶。 如需詳細資訊或升級帳戶,請參閱 帳戶類型。
-
選項:如果您使用私人儲存庫儲存分類學知識文件,請建立 Secrets Manager 實例。
選項:準備分類學
-
使用 IBM Cloud 分類法或建立您自己的分類法。
-
如果您還沒有分類系統,您可以 fork IBM Cloud taxonomy repo 並將其克隆到您的本機。 這個分類系統已經為您建立了正確的檔案結構。 您可以在相應的目錄中新增知識和技能。
-
若要建立您自己的分類系統,請參閱 準備分類系統 以取得更多資訊。
您也可以使用 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. 保存變更,並將變更推送到 fork。
f. 可選:驗證更新的分類系統。
-
在瀏覽器中,開啟 Github 套件庫的 Releases 頁面。 例如:
https://github.com/<my-org>/taxonomy/releases。 -
按一下建立發佈。
-
建立標籤、選擇目標分支,並輸入發行版的名稱。
-
按一下 Publish a release(發佈新版本 )。
-
按一下原始碼 ( tar.gz ),下載發行版自動產生的封裝
tar.gz檔案。 -
可選:如果您使用私人資源庫存放分類學知識文件,請完成下列步驟。
-
依照 GitHub 文件 建立經典的個人存取權標 (PAT)。
-
在儲存庫存取部分,將您的 PAT 範圍擴展至您的分類系統儲存庫。
-
在儲存庫權限部分,選擇「內容」>
read-only與「元資料」>read-only。
-
使用主控台上傳分類系統
完成以下步驟,將您的分類系統儲存於 Object Storage。
-
從「專案」頁面,選擇您的專案。
-
按一下分類系統。
-
按一下上傳,然後輸入下列詳細資訊。
- 分類架構檔案
- 選擇您的
.tar.gz檔案。 - 分類架構名稱
- 為分類系統命名。
- 專用儲存庫存取
-
- 如果您的分類學知識文件位於私有 repo 中,請啟用此選項。
- Secrets Manager 服務實例 :選擇現有的實例或建立一個實例。
- Secrets Manager secret (秘密 ): 選取現有的秘密或建立一個秘密。 如果您要建立秘訣,請選擇「Key-value secret」類型,然後以下列格式加入您的個人存取權標。 請注意
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 指令時,您必須單獨設定每個值。 如需詳細資訊,請參閱 Config 指令參考。
-
從 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 -
透過建立 Key-value secret,將您的個人存取權標 (PAT) 加入 Secrets Manager。 確保您的鍵值詳細資料以下列格式儲存。
{ "github_url": "https://...", "github_pat": "xxxxx" }建立 key-value secret 的範例指令。
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.cloudExample command to use an existing Object Storage instance and bucket as well as Secrets Manager credentials.
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
下一步為何?
現在您已上傳了分類系統,下一步就是 從分類系統中產生資料。