はじめに
環境として、GoogleColaboratoryからGitHubへ完成したプロジェクトをリポジトリにアップしようとしたところ、下記エラーが出て焦ったという話です。
公式ディスカッションでも話題に上がっており、すでに対処あり&Geminiでのサポートもありますが、備忘録として投稿します。
エラー内容
エラーメッセージ:
There was an error rendering your Notebook: the 'state' key is missing from 'metadata.widgets'. Add 'state' to each, or remove 'metadata.widgets'.
翻 訳:
ノートブックのレンダリング中にエラーが発生しました: 'metadata.widgets' に 'state' キーがありません。各ノートブックに 'state' を追加するか、 'metadata.widgets' を削除してください。
内容と対処
Geminiいわく、ipywidgetsなどの便利なツールを利用していると、発生しやすいエラーだそうです。
私も実際にUI作成時に使用していましたので、思い当たる節が、、、。
解決方法としては、
- widgets部分を削除する
- .ipynbを.json拡張子などへ変更する
という感じで、参考URLでもみなさん対処をされていました。
が、少しwigets{}間の文量も多いため、渋っていたところ、
- ipywidgetsを使用しているコードのセル出力を削除する
という項目を試したところ、無事に解決しました。
おわりに
公式でもいくつか対処方法が上がっていますが、何個か比較して最もコストの低いものを見つけることができました。
一応、JSON形式のファイルで上げるのではなく、.py形式のファイルであれば正しく上げることができたので、そちらも対処方法として一考してみるのもいいかもしれないです。
ちなみにGeminiは「Widgets部を削除する」→「拡張子の変更」というかたちでの提案をしてきたので、自力で探してよかったなと思いました。
参 考
