オントロジーの構築ファンクションオントロジーの編集関数をデプロイする

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

関数をデプロイする

前提条件

このガイドでは、Python または TypeScript v2 の関数をすでに作成し、公開している必要があります。チュートリアルについては、Python 関数のはじめにまたは TypeScript v2 関数のはじめにのドキュメントを確認してください。

デプロイ済み実行モードとサーバーレス実行モードを選択する

エンロールメントでサーバーレス関数が有効になっている場合、新しいリポジトリではデフォルトでサーバーレス関数が使用されます。一般的に、ほとんどのユースケースでサーバーレス関数を推奨します。デプロイ済み関数が役立つ場合もありますが、サーバーレス実行モードではメンテナンスの負担が少なく、長期間稼働するデプロイに伴うコストの発生を回避できます。

デプロイ済み関数には、サーバーレス関数では利用できない機能があります。

  • デプロイ済み関数は長期間稼働するため、関数が再起動に対応できる場合は、ローカルキャッシュを使用できる可能性があります。
  • サーバーレス関数は、提供されたソースオブジェクトのクライアントを使用する外部ソースをサポートしていますが、サードパーティーのクライアントはサポートしていません。サードパーティーのクライアントで外部 API を呼び出すには、関数をデプロイする必要があります。
  • デプロイ済み関数は GPU の割り当てをサポートしており、並列処理によって計算負荷の高いモデルの学習や推論のワークフローを高速化できますが、サーバーレス関数はサポートしていません。
  • デプロイ済み関数はサービスディスカバリー API の全機能にアクセスできますが、サーバーレス関数がアクセスできるのは、api_gateway や telemetry などのサービスディスカバリー API の限られた一部のみです。

デプロイ済み関数には、サーバーレス実行にはない制限があります。

  • サーバーレス関数では、単一の関数の異なるバージョンをオンデマンドで実行できるため、より安全にアップグレードできます。デプロイ済み関数では、一度に実行できる関数のバージョンは1つのみです。
  • サーバーレス関数は実行時にのみコストが発生しますが、デプロイ済み関数はデプロイが稼働している間、コストが発生します。
  • サーバーレス関数はインフラストラクチャが自動的に管理されるため、初期セットアップや長期的なメンテナンスの負担が少なくなります。

エンロールメントでサーバーレス関数を有効にするには、Palantir 管理者にお問い合わせください。

アーキテクチャ

関数は、オンデマンドのリソースを利用するサーバーレスモードで実行することも、長期間稼働するコンテナにデプロイすることもできます。

エンロールメントでサーバーレス関数が有効になっている場合は、デプロイ済み関数ではなくサーバーレス関数の使用を推奨します。デプロイ済み関数が役立つケースもありますが、サーバーレスエグゼキューターは一般的に柔軟性が高くなっています。

関数をデプロイすると、受信する実行リクエストを処理するための長期間稼働する環境が作成されます。この環境はリクエスト量に応じてスケーリングされ、自動化されたプロセスによってときどき再起動されます。単一のリポジトリにあるすべての関数は、単一のデプロイでホストされます。

関数の実行モードとデプロイ設定は、Marketplace を通じて関数を配布する際にパッケージ化され、再現されます。詳細と制限については、Marketplace のデプロイ済み関数を確認してください。

コンピューティングコスト

デプロイ済み関数では、稼働中のデプロイに対してコンピューティングコストが発生します。サーバーレス関数では、実行時にのみコストが発生します。

関数をデプロイする

以下の手順に沿って、関数を設定してデプロイします。

  1. 関数リポジトリを開いてブランチタブに移動し、タグとリリースを選択します。
  2. デプロイする関数にカーソルを合わせ、Ontology Manager で開くを選択します。

選択した関数を Ontology Manager で開きます。

  1. 左側のバージョンセレクターから、使用する関数のバージョンを選択します。
  2. 実行を設定を選択します。

関数の実行を設定します。

  1. 環境でサーバーレス関数が有効になっている場合、サーバーレスとデプロイ済みを切り替える選択肢が表示されます。選択されておらず、デプロイも存在しない場合は、デフォルトでサーバーレスが使用されます。

サーバーレスモードの関数の設定。

  1. 実行モードの選択肢であるデプロイ済を選択します。

  2. 関数のデプロイが存在しない場合は、デプロイを作成するを選択します。

既存のデプロイがない場合の、デプロイ済みモードの関数の設定。

  1. デプロイを初めて作成するときは、設定にデフォルト値が適用されます。ページの末尾までスクロールすると、設定全体を表示できます。

デプロイ済みモードの関数の設定。

  1. 必要に応じてデプロイ設定を変更します。以下を設定できます。
    • CPU、GPU、メモリーなど、デプロイに割り当てるコンピューティングリソース。
    • リクエスト負荷に基づく自動スケーリングの最小制限と最大制限。
    • 起動時にデプロイに設定される環境変数。
    • タイムアウトエラーが返されるまでに関数の実行が許可される合計時間。他のデプロイ設定とは異なり、タイムアウトは関数のバージョンごとに個別に設定します。

デプロイ済みモードの関数のメモリー割り当てを変更します。

  1. 変更を保存してデプロイを起動するには、保存してデプロイを開始するを選択します。デプロイを開始せずに保存するを選択して、デプロイを起動せずに設定を保存することもできます。

デプロイ済みモードの関数で、保存してデプロイを開始します。

  1. 保存してデプロイを開始するを選択した場合は、関数をホストするデプロイが起動するまで待つ必要があります。これには数分かかる場合があります。

  2. デプロイが稼働していることを確認するには、関数を含むコードリポジトリに移動して関数を実行します。関数が正常に実行され、期待される結果が返されるはずです。

デプロイ済みモードの関数を実行します。