パッケージ
Pythonパッケージをインポートするには、wrangler.toml構成ファイルと同じディレクトリ内のrequirements.txtファイルにパッケージ名を追加します。
例えば、あなたのWorkerがFastAPI ↗に依存している場合、次のように追加します:
fastapi上記の例では、requirements.txtにPythonパッケージの明示的なバージョンが宣言されていないことに気付いたかもしれません。
Workersでは、Pythonパッケージのバージョンは互換性の日付と互換性フラグを介して設定されます。特定の互換性の日付に基づいて、特定のバージョンのPyodide Pythonランタイム ↗があなたのWorkerに提供され、特定のバージョンに固定された特定のPythonパッケージのセットが提供されます。
新しいバージョンのPyodideや追加のPythonパッケージがWorkersで利用可能になると、ここに互換性フラグとその関連する互換性の日付を公開します。
PyodideがサポートするPythonパッケージのサブセット ↗がWorkersランタイムによって直接提供されています:
- aiohttp: 3.9.3
- aiohttp-tests: 3.9.3
- aiosignal: 1.3.1
- annotated-types: 0.6.0
- annotated-types-tests: 0.6.0
- anyio: 4.2.0
- async-timeout: 4.0.3
- attrs: 23.2.0
- certifi: 2024.2.2
- charset-normalizer: 3.3.2
- distro: 1.9.0
- fastapi: 0.110.0
- frozenlist: 1.4.1
- h11: 0.14.0
- h11-tests: 0.14.0
- hashlib: 1.0.0
- httpcore: 1.0.4
- httpx: 0.27.0
- idna: 3.6
- jsonpatch: 1.33
- jsonpointer: 2.4
- langchain: 0.1.8
- langchain-core: 0.1.25
- langchain-openai: 0.0.6
- langsmith: 0.1.5
- lzma: 1.0.0
- micropip: 0.6.0
- multidict: 6.0.5
- numpy: 1.26.4
- numpy-tests: 1.26.4
- openai: 1.12.0
- openssl: 1.1.1n
- packaging: 23.2
- pydantic: 2.6.1
- pydantic-core: 2.16.2
- pydecimal: 1.0.0
- pydoc-data: 1.0.0
- pyyaml: 6.0.1
- regex: 2023.12.25
- regex-tests: 2023.12.25
- requests: 2.31.0
- six: 1.16.0
- sniffio: 1.3.0
- sniffio-tests: 1.3.0
- sqlite3: 1.0.0
- ssl: 1.0.0
- starlette: 0.36.3
ここにリストされていないパッケージを探していますか?Githubでディスカッションを開く ↗ことで、サポートしてほしい内容を教えてください。
非同期でリクエストを行うことができるHTTPライブラリのみがサポートされています。現在、これにはaiohttp ↗とhttpx ↗が含まれています。また、Python Workersの外部関数インターフェースを使用して、JavaScriptのfetch() APIを使用してHTTPリクエストを行うこともできます。