サンドボックス・ファイルのアップロードとダウンロード
入力ファイルをサンドボックス・ワークスペースに転送し、コマンドによって生成された結果をダウンロードします。
実行中のサンドボックスでファイル操作を使用します。ローカルパスは、CLIまたは SDKを実行しているコンピュータ上のファイルを識別します。サンドボックス・パスは、ランタイム内のファイル(/workspace/script.pyなど)を識別します。
CLIの例では、接続値を設定します。
profile_name="DEFAULT"
region="us-chicago-1"
sandbox_id="SANDBOX_ID"ファイルをアップロードしています
script.pyという名前のローカル・ファイルを作成します。
print('Hello from the sandbox')サンドボックスにアップロードします。
oci --profile "$profile_name" --auth security_token --region "$region" \
generative-ai-sandbox sandbox-file write \
--sandbox-id "$sandbox_id" \
--sandbox-file-path /workspace/script.py \
--file ./script.pyアップロードされたスクリプトを実行します。
oci --profile "$profile_name" --auth security_token --region "$region" \
generative-ai-sandbox sandbox-command run-and-wait \
--sandbox-id "$sandbox_id" \
--command "python3 /workspace/script.py" \
--timeout PT1Mファイルのダウンロードできます。
サンドボックス・ファイルをローカル・ファイルに読み取ります。ダウンロードしたコンテンツに使用するローカル宛先を選択します。
oci --profile "$profile_name" --auth security_token --region "$region" \
generative-ai-sandbox sandbox-file read \
--sandbox-id "$sandbox_id" \
--sandbox-file-path /workspace/script.py \
--local-file ./downloaded-script.pyサンドボックスが停止または期限切れになる前に、必要な結果をダウンロードします。スナップショットを使用して、別のサンドボックスを作成するためのワークスペースを保持します。
Python SDKの使用
Python SDKの使用からクライアント設定を再利用して、認証されたclientを初期化します。実行中のサンドボックスのIDを設定し、ローカル・ファイルをアップロードして再度読み取ります。完全なクイックスタート例はサンドボックスを停止するため、このコードを使用して停止するか、別の実行中のサンドボックスを使用します。
sandbox_id = "SANDBOX_ID"
with open("script.py", "rb") as input_file:
client.write_sandbox_file(sandbox_id, "/workspace/script.py", input_file)
response = client.read_sandbox_file(sandbox_id, "/workspace/script.py")
with open("downloaded-script.py", "wb") as output_file:
output_file.write(response.data.content)