本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
注意
在本節中,我們假設您計劃使用的語言和內嵌模型已部署。對於 提供的模型 AWS,您應該已經擁有 SageMaker AI 端點的 ARN 或對 Amazon Bedrock 的存取權。對於其他模型提供者,您應該具有 API 金鑰,用於驗證和授權對模型的請求。
Jupyter AI 支援各種模型提供者和語言模型,請參閱其支援的模型
Jupyter AI 的組態取決於您使用的是聊天 UI 還是魔術命令。
在聊天 UI 中設定模型提供者
注意
您可以依照相同的指示設定數個 LLMs 和內嵌模型。不過,您必須設定至少一個語言模型。
設定聊天 UI
-
在 JupyterLab 中,選擇左側導覽面板中的聊天圖示 (
) 來存取聊天介面。
-
選擇左窗格右上角的組態圖示 (
)。這會開啟 Jupyter AI 組態面板。
-
填寫與服務供應商相關的欄位。
-
適用於 JumpStart 或 Amazon Bedrock 提供的模型
-
在語言模型下拉式清單中,
sagemaker-endpoint
針對使用 JumpStart 部署的模型,或bedrock
針對 Amazon Bedrock 管理的模型,選取 。 -
參數會根據您的模型部署在 SageMaker AI 或 Amazon Bedrock 上而有所不同。
-
對於使用 JumpStart 部署的模型:
-
在端點名稱中輸入端點的名稱,然後在區域名稱中部署模型 AWS 區域 的 。若要擷取 SageMaker AI 端點的 ARN,請瀏覽至左側選單,https://console.aws.amazon.com/sagemaker/
然後選擇推論和端點。 -
貼上為您的模型量身打造的請求結構描述的 JSON,以及剖析模型輸出的對應回應路徑。
注意
您可以在下列範例筆記本
中找到各種 JumpStart 基礎模型的請求和回應格式。每個筆記本都以其示範的模型命名。
-
-
對於 Amazon Bedrock 管理的模型:新增將登入資料存放在 AWS 您系統的 AWS 設定檔 (選用),然後以區域名稱部署 AWS 區域 模型的 。
-
-
(選用) 選取您可以存取的內嵌模型。內嵌模型用於從本機文件中擷取其他資訊,讓文字產生模型能夠回應這些文件內容內的問題。
-
選擇儲存變更,然後導覽至左窗格左上角的左箭頭圖示 (
)。這會開啟 Jupyter AI 聊天 UI。您可以開始與模型互動。
-
-
對於第三方供應商託管的模型
-
下列快照是聊天 UI 組態面板的圖例,其設定為叫用 JumpStart 提供的 Flan-t5-small模型,並在 SageMaker AI 中部署。

將額外的模型參數和自訂參數傳遞至您的請求
您的模型可能需要額外的參數,例如自訂屬性,以核准使用者協議或調整其他模型參數,例如溫度或回應長度。我們建議您使用生命週期組態,將這些設定設定為 JupyterLab 應用程式的啟動選項。如需如何建立生命週期組態並將其連接至您的網域,或從 SageMaker AI 主控台
使用下列 JSON 結構描述來設定您的額外參數:
{
"AiExtension": {
"model_parameters": {
"<provider_id>:<model_id>": { Dictionary of model parameters which is unpacked and passed as-is to the provider.}
}
}
}
}
下列指令碼是 JSON 組態檔案的範例,您可以在建立 JupyterLab 應用程式 LCC 時用來設定部署在 Amazon Bedrock 上的 AI21 實驗室 Jurassic-2 模型長度上限。增加模型產生的回應長度可防止模型回應的系統性截斷。
#!/bin/bash
set -eux
mkdir -p /home/sagemaker-user/.jupyter
json='{"AiExtension": {"model_parameters": {"bedrock:ai21.j2-mid-v1": {"model_kwargs": {"maxTokens": 200}}}}}'
# equivalent to %%ai bedrock:ai21.j2-mid-v1 -m {"model_kwargs":{"maxTokens":200}}
# File path
file_path="/home/sagemaker-user/.jupyter/jupyter_jupyter_ai_config.json"
#jupyter --paths
# Write JSON to file
echo "$json" > "$file_path"
# Confirmation message
echo "JSON written to $file_path"
restart-jupyter-server
# Waiting for 30 seconds to make sure the Jupyter Server is up and running
sleep 30
下列指令碼是用於建立 JupyterLab 應用程式 LCC 的 JSON 組態檔案範例,用於設定部署在 Amazon Bedrock 上的 Anthropic Claude 模型的其他模型參數。
#!/bin/bash
set -eux
mkdir -p /home/sagemaker-user/.jupyter
json='{"AiExtension": {"model_parameters": {"bedrock:anthropic.claude-v2":{"model_kwargs":{"temperature":0.1,"top_p":0.5,"top_k":25
0,"max_tokens_to_sample":2}}}}}'
# equivalent to %%ai bedrock:anthropic.claude-v2 -m {"model_kwargs":{"temperature":0.1,"top_p":0.5,"top_k":250,"max_tokens_to_sample":2000}}
# File path
file_path="/home/sagemaker-user/.jupyter/jupyter_jupyter_ai_config.json"
#jupyter --paths
# Write JSON to file
echo "$json" > "$file_path"
# Confirmation message
echo "JSON written to $file_path"
restart-jupyter-server
# Waiting for 30 seconds to make sure the Jupyter Server is up and running
sleep 30
將 LCC 連接至網域或使用者設定檔後,請在啟動 JupyterLab 應用程式時將 LCC 新增至您的空間。若要確保 LCC 已更新您的組態檔案,請在終端機more ~/.jupyter/jupyter_jupyter_ai_config.json
中執行 。檔案的內容應對應至傳遞至 LCC 的 JSON 檔案內容。
在筆記本中設定模型提供者
使用 %%ai
和 %ai
魔術命令,透過 JupyterLab 或 Studio Classic 筆記本中的 Jupyter AI 叫用模型
-
在筆記本環境中安裝模型提供者特有的用戶端程式庫。例如,使用 OpenAI 模型時,您需要安裝
openai
用戶端程式庫。您可以在 Jupyter AI Model 提供者清單的 Python 套件 (s) 欄中找到每個提供者所需的用戶端程式庫清單。 https://jupyter-ai.readthedocs.io/en/latest/users/index.html#model-providers注意
對於 託管的模型 AWS,
boto3
已安裝在 JupyterLab 所使用的 SageMaker AI 分佈映像中,或與 Studio Classic 搭配使用的任何資料科學映像中。 -
-
對於 託管的模型 AWS
請確定您的執行角色具有許可,可叫用 JumpStart 所提供模型的 SageMaker AI 端點,或者您可以存取 Amazon Bedrock。
-
對於第三方供應商託管的模型
使用環境變數在筆記本環境中匯出提供者的 API 金鑰。您可以使用下列魔術命令。以
provider_API_key
Jupyter AI Model 提供者清單中環境變數欄中的環境變數取代命令中的 。 %env provider_API_key=your_API_key
-