0 / 0
資料の 英語版 に戻る
パイプラインで使用するカスタム・コンポーネントの作成
最終更新: 2024年6月07日
パイプラインで使用するカスタム・コンポーネントの作成

オーケストレーション・パイプラインのカスタム・コンポーネントは、ユーザーが作成したスクリプトを実行します。 カスタム・コンポーネントを使用して、パイプライン間で再使用可能なスクリプトを共有できます。

カスタム・コンポーネントは、プロジェクト資産として作成します。 その後、そのプロジェクトで作成したパイプラインでコンポーネントを使用できます。 パイプライン用のカスタム・コンポーネントは、必要な数だけ作成できます。 現在、 Python 関数を使用して、プログラムでカスタム・コンポーネントを作成する必要があります。

プロジェクト資産としてのコンポーネントの作成

カスタム・コンポーネントを作成するには、 Python クライアントを使用して IBM Orchestration Pipelines で認証し、コンポーネントをコーディングしてから、指定したプロジェクトにそのコンポーネントを公開します。 プロジェクトで使用可能になったら、パイプライン内のノードにコンポーネントを割り当てて、パイプライン・フローの一部として実行することができます。

この例では、2 つの数値を一緒に追加するコンポーネントを公開してから、そのコンポーネントをパイプライン・ノードに割り当てるプロセスを示します。

  1. Python クライアントを使用して、関数をコンポーネントとして公開します。 IBM watsonxのプロジェクトの Jupyter Notebook で以下のコードを実行します。

    # Install libraries
    ! pip install ibm-orchestration-pipelines
    
    # Authentication
    from ibm_orchestration_pipelines import OrchestrationPipelines
    
    apikey = ''
    project_id = 'your_project_id'
    
    client = OrchestrationPipelines(apikey, url=service_url)
    
    
    # Define the function of the component
    
    # If you define the input parameters, users are required to 
    # input them in the UI
    
    def add_two_numbers(a: int, b: int) -> int:
        print('Adding numbers: {} + {}.'.format(a, b))
        return a + b + 10
    
    # Other possible functions might be sending a Slack message,
    # or listing directories in a storage volume, and so on.
    
    # Publish the component    
    client.publish_component(
        name='Add numbers', # Appears in UI as component name 
        func=add_two_numbers,
        description='Custom component adding numbers', # Appears in UI as component description 
        project_id=project_id,
        overwrite=True, # Overwrites an existing component with the same name 
    )
    

    新しい API キーを生成するには、以下のようにします。

    1. IBM Cloud ホーム・ページ に移動します。
    2. 「管理」>「アクセス (IAM)」をクリックします。
    3. API キーをクリックします
    4. 「作成」をクリック
  2. 「実行」 の下の 「パイプライン・コンポーネントの実行 (Run Pipelines component)」 というノードをキャンバスにドラッグします。
    カスタム・コンポーネント・ノードの取得

  3. 使用したいコンポーネントの名前を選択します。
    実際のコンポーネント機能の選択

  4. パイプライン・ジョブの一部としてノードを接続して実行します。
    コンポーネントの接続

パイプライン・コンポーネントの管理

これらの Python クライアント・メソッドを使用して、カスタム・パイプライン・コンポーネントを管理します。

表 1. パイプライン・コンポーネントの管理
メソッド 関数
client.get_components(project_id=project_id) プロジェクトからコンポーネントをリストします
client.get_component(project_id=project_id, component_id=component_id) ID によるコンポーネントの取得
client.get_component(project_id=project_id, name=component_name) 名前によるコンポーネントの取得
client.publish_component(component name) 新規コンポーネントの公開
client.delete_component(project_id=project_id, component_id=component_id) ID を指定してコンポーネントを削除する

親トピック: パイプラインの作成

生成 AI の検索と回答
これらの回答は、製品資料の内容に基づいて、 watsonx.ai のラージ言語モデルによって生成されます。 詳細