# Gradio Spacesにおける依存関係の処理

## デフォルトの依存関係

デフォルトのGradio Spaces環境には、いくつかの依存関係がプリインストールされています:

* [`huggingface_hub`](https://huggingface.co/docs/huggingface_hub/index) クライアントライブラリを使用すると、Python で Hub 上のリポジトリとファイルを管理し、Space から [Inference Providers](./models-inference) にプログラムでアクセスできます。Inference Providers を使用してアプリ内でモデルをインスタンス化する場合、組み込みのアクセラレーション最適化の恩恵を受けることができます。このオプションは計算リソースの消費量も少なく、環境にも優しいです! 🌎

  Inference Providersへのプログラムによるアクセス方法の詳細については、この[ページ](https://huggingface.co/docs/huggingface_hub/how-to-inference)を参照してください。

* [`requests`](https://docs.python-requests.org/en/master/)は、アプリからサードパーティのAPIを呼び出す際に便利です。

* [`datasets`](https://github.com/huggingface/datasets) を使用すると、アプリ内で Hub から任意のデータセットを取得したり表示したりできます。

* [`gradio`](https://github.com/gradio-app/gradio)です。[`README.md`ファイル内で`sdk_version`を使用して、特定のバージョンを指定することもできます。](spaces-config-reference)

* `ffmpeg`、`cmake`、`libsm6` など、一般的な Debian パッケージ。

## 独自の依存関係の追加

アプリの実行に他のPythonパッケージが必要な場合は、リポジトリのルートに**requirements.txt**ファイルを追加してください。Spacesランタイムエンジンは、カスタム環境をオンザフライで作成します。また、メインの依存関係の前にインストールされる依存関係を記述した**pre-requirements.txt**ファイルを追加することもできます。pip自体を更新する必要がある場合に便利です。

Debian の依存関係もサポートされています。リポジトリのルートに **packages.txt** ファイルを追加し、すべての依存関係をそこに記載してください。各依存関係は1行ずつ記載し、各行は `apt-get install` によって読み取られてインストールされます。

