ロボットの Python 3.11 へのアップグレード

Diligent はロボットが使用する Python のバージョンをアップグレードします。以下のスケジュールに基づいて、クラウドベースのロボット エージェントが Python 3.8.x から Python 3.11.x にアップグレードされます。移行期間中は、どちらのバージョンの Python もロボットでサポートされます。

このアップグレードには、Pandas のバージョン 1.2.4 から 2.2.0 への更新および Requests のバージョン 2.26.0 から 2.31.0 への更新を含む、関連ライブラリの更新も含まれています。

組織で HighBond ロボットまたはワークフロー ロボットを使用している場合は、このトピックをお読みいただき、アップグレードの影響についてよく理解するようにしてください。

Python Software Foundation は、Python 3.8 が 2024 年 10 月 14 日に正式にサポート終了になると発表しました。

お客様への影響

1 つ以上の Python/HCL スクリプトが、Python 3.11 へのアップグレードの影響を受ける可能性があります。Python 3.8 で実行されるスクリプト ロジックが Python 3.11 で実行されなくなった場合は、スクリプト ロジックを更新する必要があります。

メモ

  • [ロボット]のホームページには、まもなく廃止される Python コードを含んだスクリプトがアクティブ化されているすべてのロボットの一覧のテーブルが表示されます。
  • まもなく廃止される Python コードを含んだスクリプトがアクティブ化されているロボットには、警告アイコンが表示されます。このアイコンは、ロボットを最新のパッケージにアップグレードしてスクリプトをアクティブ化すると消えます。

ロボットのお客様は Python のアップグレードをオプトアウトできません。

既存のスクリプトが Python 3.11 で問題なく実行されるかどうかを確認する最も簡単な方法は、ロボットスクリプト エディターでスクリプトを開いて実行してみることです。詳細、、および注意事項についてはロボットスクリプト エディターで既存の Python/HCL スクリプトをテストするを参照してください。

重要

2024 年 10 月 14 日までに十分な時間をとって、お使いのすべての Python/HCL スクリプトをテストしてください。この日以降、Python 3.8 はロボットで使用できなくなります。スケジュールされたロボットのタスクの中断を避けるため、必要なスクリプトの更新は期限よりも十分前に行ってください。

スケジュールを更新

予定日 影響を受ける領域 詳細
2023 年 12 月半ば HighBond ロボット

新しく作成されたスクリプト

  • Python 3.11、Pandas 1.2.4、Requests 2.26.0 で実行されます。他の選択肢はありません。

Python のアップグレード前に作成された既存のスクリプト

  • スケジュールされたタスクでは、スクリプトが編集されない限り、Python 3.8 でも実行を継続します。

  • ロボットスクリプト エディターで開いた場合、Python 3.11 での実行がデフォルトとなります。期間限定で、既存のスクリプトを手動でダウングレードして Python 3.8 で実行されるようにするオプションがスクリプト エディターで提供されます。

2024 年 4 月 4 日 HighBond ロボット

新しく作成されたスクリプト

  • 対応するライブラリを使用する最新の Python バージョン(Python 3.11、Pandas 2.2.0、Requests 2.31.0)で実行されます。他の選択肢はありません。

2023 年 12 月の Python アップグレード前に作成された既存のスクリプト

  • スケジュールされたタスクでは、スクリプトは編集されない限り引き続き Python 3.8 で実行されます。

  • ロボットのスクリプト エディターで開いた場合は、デフォルトでは、対応するライブラリを使用する最新の Python バージョン(Python 3.11、Pandas 2.2.0、Requests 2.31.0)で実行されます。2024 年 6 月末までは、既存のスクリプトをダウングレードして Python 3.8 で実行されるようにするオプションがスクリプト エディターで提供されます。

2023 年 12 月以降に Python 3.11 にアップグレードされたスクリプト

  • スケジュールされたタスクでは、スクリプトは編集されない限り引き続き古いライブラリ(Pandas 1.2.4、Requests 2.26.0)を使用する Python 3.11 で実行されます。

  • ロボットのスクリプト エディターで開いた場合は、デフォルトでは、対応するライブラリを使用する最新の Python バージョン(Python 3.11、Pandas 2.2.0、Requests 2.31.0)で実行されます。2024 年 6 月末までは、既存のスクリプトを手動でダウングレードして古いライブラリ(Pandas 1.2.4、Requests 2.26.0)を使用する Python 3.11 で実行されるようにするオプションがスクリプト エディターで提供されます。

2024 年 4 月 4 日 ワークフローロボット

新しく作成されたスクリプト

  • 対応するライブラリを使用する最新の Python バージョン(Python 3.11、Pandas 2.2.0、Requests 2.31.0)で実行されます。他の選択肢はありません。

Python のアップグレード前に作成された既存のスクリプト

  • スケジュールされたタスクでは、スクリプトが編集されない限り、Python 3.8 でも実行を継続します。

  • ロボットのスクリプト エディターで開いた場合は、デフォルトでは、Python 3.11 で実行されます。2024 年 6 月末までは、既存のスクリプトをダウングレードして Python 3.8 で実行されるようにするオプションがスクリプト エディターで提供されます。

2024 年 7 月 4 日

HighBond ロボット

ワークフローロボット

Python のアップグレード前に作成された既存のスクリプト

古いライブラリ(Pandas 1.2.4、Requests 2.26.0)を使用する Python コード 3.8 または 3.11 のスクリプトは、手動でダウンロード、アップロード、またはアクティブ化することはできません。さらに、Python 3.11(HCL 3.0.*)と互換性のないスクリプトは、API やツールキットでアップロードまたはアクティブ化することはできません。

2024 年 7 月 12 日

HighBond ロボット

ワークフローロボット

Python のアップグレード前に作成された既存のスクリプト

  • [ロボット]のホームページには、まもなく廃止される Python コードを含んだスクリプトがアクティブ化されているすべてのロボットの一覧のテーブルが表示されます。
  • まもなく廃止される Python コードを含んだスクリプトがアクティブ化されているロボットには、警告アイコンが表示されます。このアイコンは、ロボットを最新のパッケージにアップグレードしてスクリプトをアクティブ化すると消えます。

2024 年 10 月 14 日

HighBond ロボット

ワークフローロボット

すべてのスクリプト(スケジュールされたタスク内の未編集スクリプトを含む)

  • 新しいライブラリ(Pandas 2.2.0、Requests 2.31.0)を使用する Python 3.11 で実行されます。他の選択肢はありません。

Python 3.8 は正式にサポート終了となります。「Python バージョンの状態」を参照してください。

ロボットスクリプト エディターで既存の Python/HCL スクリプトをテストする

注意

ロボットスクリプト エディターで既存の Python スクリプトを開くと、デフォルトで Python 3.11 ランタイム環境が起動します。インストール済みの Python 依存関係(パッケージ)の指定バージョンも更新される場合があります。

スクリプト エディターで既存のスクリプトを開く

  1. Launchpad ホームページ(www.highbond.com)から、ロボット アプリを選択して開きます。

    すでに Diligent One を使用している場合は、左側のナビゲーション メニューを使用してロボット アプリに切り替えることができます。

  2. ロボットのダッシュボードから、該当するロボットの種類のタブを選択します。

    • HighBond ロボット

    • ワークフロー ロボット

  3. ロボットに移動し、そのロボットを選択して開きます。

  4. ロボットの右上隅で、[開発]をクリックし、開発モードに切り替えます。

  5. [スクリプトバージョン] タブで、テストしたいスクリプトのバージョンを選択します。

    通常は、本番モードでアクティブ化されたスクリプトのバージョンを選択する必要があります。アクティブ化されたバージョンがない場合は、別のバージョンを選択する理由がない限り、最新のスクリプトバージョンを選択します。

  6. バージョンの詳細]パネルで、[スクリプト編集]をクリックします。を

    ロボットスクリプト エディターは起動プロセスを開始し、Python 3.11 ランタイム環境を読み込みます。スクリプトが現在正常に実行されている場合、ランタイム環境に関連するテストは必要ありません。

ランタイム環境を確認する

スクリプトのテストを実行するときに、スクリプト エディターでどのランタイム環境が現在アクティブであるかを確認することが役に立つ場合があります。

  1. スクリプトの最初のセルをクリックします。

  2. セルの左にある[詳細]アイコン をクリックして、[上のセルを追加]を選択します。

  3. 新しいセルに、次のコードを貼り付けます。

    import sys 
    print(sys.version)
  4. セルを実行します。

    結果には、現在アクティブなランタイム環境が表示されます。例:

    3.11.4 (main, Dec 15 2023, 23:07:06) [GCC 11.4.1 20230605 (Red Hat 11.4.1-2)]
    3.8.17 (default, Dec 15 2023, 23:05:28) [GCC 11.4.1 20230605 (Red Hat 11.4.1-2)]
  5. スクリプトのテストが終了したら、システムのバージョンコードを含むセルを削除します。

スクリプトを実行してテストする

スクリプトを実行して、Python 3.11 ランタイム環境と互換性があるかどうかをテストします。

ヒント

一般的にスクリプトは大規模なデータセットをインポートして分析するため、完了までに長時間かかる場合は、テスト用に小規模なサンプルデータセットを使用するようにスクリプトを一時的に変更できます。少量のデータを使用すると、組織のスクリプトをより迅速にテストできます。

ターゲットのデータセットのみを変更し、Python コードを変更しないように注意してください。

  1. 起動プロセスが完了したら、スクリプトを実行してテストします。

    スクリプトが正常に実行して完了する場合には、Python 3.11 と互換性があります。スクリプトのそれ以上のテストは必要ありません。スクリプトを保存およびコミットし、アクティブ化して、Python 3.11 ランタイム環境に関連付けることができます。スクリプトの保存とコミットおよびスクリプト バージョンをアクティブ化を参照してください。

  2. スクリプトが失敗する場合は、スクリプト ロジックを更新して 3.11 との互換性を持たせるようにする必要があります。Python のさまざまなバージョンと他の関連ライブラリの違いについて詳しくは、Python のリソースを参照してください。スクリプト ロジックを更新した後もなおスクリプトが失敗する場合、問題はおそらく Python ランタイム環境に関係ありません。スクリプトをデバッグする必要があります。

スクリプトの保存とコミット

スクリプトを保存およびコミットする際に、Python 3.11 ランタイム環境に関連付けます。

スクリプトの状態 アクション
Python 3.11 で正常に実行する
  • スクリプトは Python 3.11 ランタイム環境に関連付けられています

  • これ以上アクションは必要ありません

Python 3.11 で失敗する

  • Python 3.11 で正常に実行するようにスクリプト ロジックを更新する

スクリプトが Python 3.11 ランタイム環境にあることを確認する

  1. 次のようにして、Python 3.11 ランタイム環境がスクリプト エディターで現在アクティブであることを確認します。

    ランタイム環境を確認します。ランタイム環境を確認するを参照してください。

  2. スクリプト エディターのツールバーで[保存してコミット]をクリックします。

  3. 変更内容を説明するわかりやすいコミットメッセージを入力します。

    ヒント

    コミットメッセージに「Python 3.11 で実行します」を追加すると役に立つ場合があります。

  4. 省略可能。[タスクの実行ログファイルにスクリプト出力を保存]を選択します。

    ロボットのタスクを使用してスクリプトを実行する場合、このオプションはスクリプトの出力をすべてログファイルに保存します。保存された出力は、スクリプトの開発時やトラブルシューティング時に確認するのに役立ちます。詳細については、ログファイルへのスクリプト出力の保存を参照してください。

  5. コミット]をクリックして、スクリプトを保存して、コミットします。

    スクリプトは正常にコミットされました]メッセージが表示されます。

  6. ページヘッダーでロボット名をクリックします。

    ロボットの[スクリプトバージョン]タブに戻ります。スクリプトを保存してコミットするたびに、保存されたバージョンがこのタブに追加されます。

  7. 省略可能。スクリプトが Python 3.11 ランタイム環境に関連付けられていることを確認します。

    1. 直前に保存したスクリプトのバージョンを選択します。

    2. バージョンの詳細]パネルで、[スクリプトをダウンロード]をクリックします。

      スクリプトがコンピューターにダウンロードされます。

    3. テキストエディターでスクリプトを開きます。

      関連付けられたランタイム環境がスクリプトの先頭に表示されます。

      "runtime":"python3.11"

Python のリソース

次の表には、Python とその他の関連ライブラリの新機能のセクション、リリース ノート、および変更ログを示しています。これらのリソースを使用して、最新バージョンの Python とその他のライブラリの変更点を確認してください。