型ヒントサポート#

_images/type_hints.gif

Amplify SDK は全ての関数、メソッド、アトリビュートに型アノテーションを定義しています。これにより、Visual Studio Code 等の IDE や Google Colaboratory において、コードの補完や型チェックによるコードのエラーを検出することができます。

ヒント

Visual Studio Code を使用している場合は Python 拡張機能をインストールし、次の設定を追加することでコード補完と型チェックが有効になります。

settings.json

{
    "python.languageServer": "Pylance",
    "python.analysis.typeCheckingMode": "basic",
}

ヒント

呼び出すメソッドや関数によっては必ずしも型や配列の次元が確定できないことがあります。

例えば amplify.einsum() 関数は、引数の値によって Poly または PolyArray を返すため、型を確定できず型チェッカーによるエラーや警告が発生することがあります。このような場合は、次のように型を明示的に指定することでエラーを回避することができます。

from amplify import Poly, einsum

# 引数 "ij,ki,kj->" により Poly (スカラー) を返すことが期待されるが型チェッカーには判別できない
objective: Poly = einsum("ij,ki,kj->", d, q1, q2)  # type: ignore