--- hide-toc: true --- # 型ヒントサポート ```{image} ../_images/type_hints.gif :class: bg-primary :align: center :class: sd-rounded-3 ``` Amplify SDK は全ての関数、メソッド、アトリビュートに型アノテーションを定義しています。これにより、Visual Studio Code 等の IDE や Google Colaboratory において、コードの補完や型チェックによるコードのエラーを検出することができます。 ````{hint} Visual Studio Code を使用している場合は [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python) 拡張機能をインストールし、次の設定を追加することでコード補完と型チェックが有効になります。 `settings.json` ```json { "python.languageServer": "Pylance", "python.analysis.typeCheckingMode": "basic", } ``` ```` ````{hint} 呼び出すメソッドや関数によっては必ずしも型や配列の次元が確定できないことがあります。 例えば {py:func}`amplify.einsum` 関数は、引数の値によって {py:class}`~amplify.Poly` または {py:class}`~amplify.PolyArray` を返すため、型を確定できず型チェッカーによるエラーや警告が発生することがあります。このような場合は、次のように型を明示的に指定することでエラーを回避することができます。 ```python from amplify import Poly, einsum # 引数 "ij,ki,kj->" により Poly (スカラー) を返すことが期待されるが型チェッカーには判別できない objective: Poly = einsum("ij,ki,kj->", d, q1, q2) # type: ignore ``` ````