nbdev
、ノートブック駆動の開発プラットフォームです。軽量のマークアップを使用してノートブックを作成するだけで、高品質のドキュメント、テスト、継続的インテグレーション、パッケージ化を無料で入手できます。
nbdev
使用すると、常にライブ オブジェクトをすぐに利用できるため、コードのデバッグとリファクタリングが従来のプログラミング環境よりもはるかに簡単になります。 nbdev
テストとドキュメントが第一級であるため、ソフトウェア エンジニアリングのベスト プラクティスも推進しています。
nbdev-index
を介した多くのパッケージのすぐに使用できるサポートを含む)__all__
に含まれます。nbdev は、macOS、Linux、およびほとんどの Unix スタイルのオペレーティング システムで動作します。 Windows では WSL では動作しますが、cmd または Powershell では動作しません。
pip を使用して nbdev をインストールできます。
pip install nbdev
…または conda (または mamba) を使用します。
conda install -c fastai nbdev
nbdev
、Jupyter とプロジェクトの両方で使用するのと同じ Python 環境にインストールする必要があることに注意してください。
nbdev の使用方法を学ぶ最良の方法は、書面によるウォークスルーまたはビデオ ウォークスルーを完了することです。
あるいは、 unsilence
Python ライブラリを使用してコーディング セクションを高速化したビデオ ウォークスルーの短縮バージョンもあります。これは 27 分速くなりますが、理解するのが少し難しくなります。
ターミナルからnbdev_help
を実行して、使用可能なコマンドの完全なリストを表示することもできます。
!n bdev_help
nbdev_bump_version Increment version in settings.ini by one
nbdev_changelog Create a CHANGELOG.md file from closed and labeled GitHub issues
nbdev_clean Clean all notebooks in `fname` to avoid merge conflicts
nbdev_conda Create a `meta.yaml` file ready to be built into a package, and optionally build and upload it
nbdev_create_config Create a config file.
nbdev_docs Create Quarto docs and README.md
nbdev_export Export notebooks in `path` to Python modules
nbdev_filter A notebook filter for Quarto
nbdev_fix Create working notebook from conflicted notebook `nbname`
nbdev_help Show help for all console scripts
nbdev_install Install Quarto and the current library
nbdev_install_hooks Install Jupyter and git hooks to automatically clean, trust, and fix merge conflicts in notebooks
nbdev_install_quarto Install latest Quarto on macOS or Linux, prints instructions for Windows
nbdev_merge Git merge driver for notebooks
nbdev_migrate Convert all markdown and notebook files in `path` from v1 to v2
nbdev_new Create an nbdev project.
nbdev_prepare Export, test, and clean notebooks, and render README if needed
nbdev_preview Preview docs locally
nbdev_proc_nbs Process notebooks in `path` for docs rendering
nbdev_pypi Create and upload Python package to PyPI
nbdev_readme Create README.md from readme_nb (index.ipynb by default)
nbdev_release_both Release both conda and PyPI packages
nbdev_release_gh Calls `nbdev_changelog`, lets you edit the result, then pushes to git and calls `nbdev_release_git`
nbdev_release_git Tag and create a release in GitHub for the current version
nbdev_requirements Writes a `requirements.txt` file to `directory` based on settings.ini.
nbdev_sidebar Create sidebar.yml
nbdev_test Test in parallel notebooks matching `path`, passing along `flags`
nbdev_trust Trust notebooks matching `fname`
nbdev_update Propagate change in modules matching `fname` to notebooks that created them
nbdev_update_license Allows you to update the license of your project.
A: エクスポートされていないセルや、 import
ステートメントと他のコードが混在するセルを含めることはできません。たとえば、これを単一のセルで実行しないでください。
import some_module
some_module . something ()
代わりに、これを 2 つのセルに分割し、1 つはimport some_module
実行し、もう 1 つはsome_module.something()
を実行します。
その理由は、ドキュメント Web サイトを作成するときに、ノートブックでインポート、エクスポートされたセル、およびshow_doc
関数を実行することによって、ドキュメント化された関数のすべての署名が最新であることを確認するためです。インポートを他のコードと混合すると、その他のコードも実行されるため、Web サイトの作成時にエラー (または少なくとも速度低下) が発生する可能性があります。
A: 最初のプロジェクトをセットアップすると、nbdev は Quarto を自動的にダウンロードしてインストールしようとします。これは、ドキュメント Web サイトの作成に使用するプログラムです。
Quarto の標準インストール プロセスでは root アクセスが必要なため、nbdev はインストール中に root パスワードを要求します。ほとんどの人にとって、これは問題なく機能し、すべてが自動的に処理されます。その場合は、root アクセスを使用しないインストールについて説明するこのセクションの残りの部分をスキップしてください。
Linux に root アクセスなしで Quarto をインストールする必要がある場合は、まずcd
保存したい場所に移動し、次に Quarto をダウンロードして、次のように入力します。
dpkg -x quarto * .deb .
mv opt/quarto ./
rmdir opt
mkdir -p ~ /.local/bin
ln -s " $( pwd ) " /quarto/bin/quarto ~ /.local/bin
この Quarto の非ルート バージョンを使用するには、 PATH
環境変数に~/.local/bin
必要です。 (あるいは、 ln -s
ステップを変更して、シンボリックリンクをパスの別の場所に配置します。)
A: このビデオを見てください。心配しないでください。過去 3 年間、ディープ ラーニング ライブラリ、API クライアント、Python 言語拡張機能、ターミナル ユーザー インターフェイスなどを含む幅広い「非常に本格的な」ソフトウェア プロジェクトにnbdev
使用してきたにもかかわらず、私たちも同様の結果を得ることができました。 !
nbdev
に貢献したい場合は、必ず貢献ガイドラインを確認してください。このプロジェクトは、fastai の行動規範に準拠しています。参加することにより、この規範を遵守することが期待されます。一般に、私たちはオープンソース ソフトウェア開発において一般に受け入れられているベスト プラクティスを遵守するよう努めています。
クローンされたリポジトリでnbdev_install_hooks
実行して、 nbdev
の git フックがインストールされていることを確認します。
Copyright © 2019 以降 fast.ai, Inc. Apache License バージョン 2.0 (「ライセンス」) に基づいてライセンスされています。ライセンスに準拠する場合を除き、このプロジェクトのファイルを使用することはできません。ライセンスのコピーは、このリポジトリの LICENSE ファイルで提供されます。