開始使用 Red Hat AI Inference on IBM Cloud

準備好在您的應用程式中開始運用 AI 了嗎? 在本教學中,您將學習如何利用基礎模型進行推論,並生成由人工智慧驅動的回應。 只需 15 分鐘,您就能與大型語言模型進行對話,並將對話式人工智慧整合到您的工作流程中。

Red Hat® AI Inference on IBM Cloud® 這是一款由 Red Hat OpenShift AI 驅動、具備商業應用準備度、私有且安全的生成式 AI 解決方案。 本教學重點在於引導您開始進行推論,藉此與基礎模型進行互動,這是開始使用人工智慧最快速的方式。

您將達成的目標

在本教學中,您將執行以下任務:

  • 設定您的 IBM Cloud 帳戶和專案。
  • 向推論 API 進行驗證。
  • 利用基礎模型生成您的第一個聊天對話完成內容。
  • 瞭解如何使用您自己的資料來客製化模型的下一步驟。

開始之前

請確認您已具備以下項目:

  • 「隨用隨付」或「訂閱制」的 IBM Cloud 帳戶。 不支援試用帳號。 如需更多資訊或欲升級您的帳戶,請參閱「帳戶類型」。

  • Red Hat AI Inference 專案

  • 在「Red Hat AI Inference」服務中,具備「Writer」角色或更高權限。 如需更多資訊,請參閱《 管理 IAM 存取權限 》。

取得您的專案 ID 和 API 端點

所有 API 請求均需提供您的專案 ID。

  1. 前往 Red Hat AI Inference 專案頁面。

  2. 開啟您的專案。

  3. 請複製您的專案 ID,並將其保存起來,以便進行後續步驟。

API 端點

所有 API 請求均採用以下基本格式:URL:

https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference

請將 <project_id> 替換為您的專案 ID。

對 API 進行驗證

在與基礎模型進行互動之前,您需要對 API 請求進行身份驗證。 您可以使用持有人憑證或 IBM Cloud API 金鑰。 本教學將說明如何搭配服務 ID 與 API 金鑰,以程式化方式進行存取。 有關使用 Bearer 憑證的更多資訊,請參閱「使用 Bearer 憑證進行驗證」。

建立服務 ID 並授予存取權限

服務識別碼是控制和分配 Red Hat AI Inference 專案存取權限的一種實用方式。 建立服務 ID,然後將其授予您專案的存取權限。

  1. 在 IBM Cloud 控制台中,前往「管理」>「存取權限 (IAM)」>「服務 ID」,然後點選「建立」。

  2. 請輸入服務 ID 的名稱和說明,然後按一下「建立」。

  3. 在服務 ID 頁面中,點選「指派存取權限」。

  4. 請選擇 Red Hat AI Inference 作為服務。

  5. 在「資源」中,選取「特定資源」,然後選擇您的專案。 透過這種方式,您可以限制對特定專案的存取權限。

  6. 在「角色與動作」中,請選擇適當的服務存取角色:

    • 若需建立聊天自動完成功能,請選擇「撰稿人」。
    • 若您僅需閱讀聊天內容的自動完成建議或查看模型資訊,請選擇「閱讀器」。

    API 存取無需平台存取角色。

  7. (可選)新增條件(例如基於時間的存取權限),以進一步限制服務 ID 的存取範圍。

  8. 檢視存取摘要,然後按一下「指派」。

建立 API 金鑰

既然您的服務 ID 已可存取您的 Red Hat AI Inference 專案,請建立一個服務 ID API 金鑰,以便在 API 呼叫中使用。

  1. 在服務 ID 頁面中,點選「API 金鑰」。

  2. 點擊「建立」,並為您的 API 金鑰輸入名稱。

  3. 關於外洩金鑰的處理,請選取「停用外洩金鑰」,以便在偵測到金鑰外洩時自動停用該金鑰。

  4. 為金鑰設定有效期限。 基於安全考量,建議定期輪替金鑰。

  5. 按一下建立

  6. 請複製 API 金鑰,並將其儲存於安全的位置。 無法再次檢視該金鑰。

現在您可以使用該 API 金鑰來驗證您的請求。 在下一步中,您將在 API 呼叫的 Authorization: Bearer 標頭中使用此金鑰。

探索可選機型

不同的基礎模型各有其優勢,因此仔細檢視專案中可用的模型至關重要。

請執行以下 API 呼叫,以列出所有可用的模型。 請將 <project_id> 替換為您的專案 ID,並將 <api_key> 替換為您的服務 ID API 金鑰:

curl -L 'https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/models' \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer <api_key>"
from openai import OpenAI
client = OpenAI(
  api_key="<api_key>",
  base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)
models = client.models.list()
print(models)

此回應會列出所有可供使用的模型,並附上其功能相關的資訊。 您可以嘗試不同的模型,以找出最符合您使用情境的那一個。

生成您的第一個聊天完成內容

現在,請向模型發送訊息,並接收由 AI 生成的回覆。

請執行以下 API 呼叫,並將 <project_id> 替換為您的專案 ID,將 <api_key> 替換為您的服務 ID API 金鑰:

curl https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <api_key>" \
  -d '{
    "model": "granite-4-0-h-small",
    "messages": [
      {
        "role": "developer",
        "content": "You are a helpful assistant"
      },
      {
        "role": "user",
        "content": "Hello! Tell me about yourself"
      }
    ]
  }'
from openai import OpenAI
client = OpenAI(
  api_key="<api_key>",
  base_url="https://us-east.rhai.ibm.com/v1/projects/<project_id>/inference",
)
completion = client.chat.completions.create(
  model="granite-4-0-h-small",
  messages=[
    {"role": "developer", "content": "You are a helpful assistant."},
    {"role": "user", "content": "Hello! Tell me about yourself"}
  ]
)
print(completion.choices[0].message)

您應該會收到模型發來的自我介紹訊息。

理解該請求

讓我們來分析一下你剛才的做法:

模型
您指定了 granite-4-0-h-small,這是可用的基礎模型之一。 不同型號具備不同的功能與性能特點。
訊息
您提供了兩則訊息。 其中一則是一則開發者訊息,用來設定系統提示,並指示模型應如何運作。 該使用者訊息中包含了您希望模型回答的實際問題。
API 端點
該請求已傳送至您專案的推論端點,該端點負責將請求路由至適當的模型。

您可以透過調整系統提示、新增更多訊息,或針對不同使用情境選用不同的模型,來客製化模型的行為。

下一步

既然您已成功開始使用推論功能,接下來您可以進行以下操作:

繼續進行推論

  • 進一步了解推論功能, 探索諸如串流式回應、調整模型參數以及管理對話歷史紀錄等進階功能。

  • 請參閱 OpenAI 聊天自動完成 API 文件,以取得完整的 API 參考資料。

  • 您可以透過 Python SDK 或其他程式語言,將推論功能整合至您的應用程式中。

使用您的資料自訂模型

已廢棄

準備好超越通用模型的範疇了嗎? 您可以透過模型對齊,將貴組織的特定知識與技能整合到基礎模型中:

  1. 建立分類體系 其中包含您的商業知識與技能。

  2. 根據您的分類體系 產生合成資料

  3. 訓練自訂模型 符合您的具體需求。

透過這種方式,您可以對模型進行微調,使其理解您的業務背景、術語及需求,這已超越了通用型模型所能提供的範圍。