本文へスキップ

ChEMBL Webresource Client

Michal Nowotka, Eloy Felix / ChEMBL group

ChEMBL データとケモインフォマティクスサービスのクエリに使用する、ChEMBL グループが保守する公式 Python クライアント。QuerySet 形式のフィルター、遅延取得、ローカルでの結果キャッシュを備えています。

掲載情報の更新 ·

概要

ChEMBL Webresource Client は、ChEMBL データとケモインフォマティクスツールにアクセスするために、ChEMBL グループが開発・サポートする Python ライブラリです。これは ChEMBL Web サービスへのプログラム用アクセス層であり、単独で利用できるデータベースや予測モデルではありません。ドキュメントに記載されたインターフェースが HTTPS 通信を処理するため、ユーザーは SQL を記述したり REST リクエストを直接管理したりせずに、サービスのリソースを利用できます。

クエリ設計は Django の QuerySet インターフェースに準拠しています。入力には、エンドポイント固有のフィールドフィルターと、返却するフィールドの任意のリストが含まれます。出力はサービスの結果であり、必要に応じてクライアントが取得し、ローカルファイルシステムにキャッシュします。サポートされる検索方法には、完全一致と大文字小文字を区別しない一致、メンバーシップ、数値比較、範囲、null チェック、正規表現、検索が含まれます。遅延評価では値が必要になるまでデータ要求を保留するため、レコードを利用する前にクエリを構築する Python ワークフローに適しています。

only メソッドを使うと返却フィールドを制限できますが、指定するフィールドは選択したエンドポイントに存在する必要があります。ネストしたフィールドの選択は、その粒度では保持されません。molecule_properties__alogp を選択すると、molecule_properties を選択したものとして扱われます。また README によると、多対多関係について only は SQL の結合最適化を提供しません。

設定項目には、ローカルキャッシュ、キャッシュの有効期限、再試行回数、リクエストの並行数、タイムアウトが含まれます。ドキュメントでは、FAST_SAVE 設定にキャッシュデータが失われる可能性があるとされています。これらの設定は、繰り返し取得するワークフローを計画する際の検討事項になりますが、出典の抜粋からは、測定済みの性能、エンドポイントごとの出力スキーマ、または検証済みの科学的結果は確認できません。

主な機能

  • HTTPS 通信を処理しながら、ChEMBL データとケモインフォマティクスツールにアクセスする公式 Python インターフェースを提供します。
  • 完全一致、大文字小文字を区別しないテキスト一致、メンバーシップ、比較、範囲、null チェック、正規表現、検索など、QuerySet 形式のフィルターをサポートします。
  • 遅延評価を行い、値が必要になったときにのみデータを要求します。
  • 取得した結果をローカルにキャッシュします。キャッシュの有効化、期限、SQLite キャッシュファイル名を設定できます。
  • `only` で返却フィールドを制限できますが、エンドポイントでのフィールドの利用可否と、ドキュメントに記載されたネストフィールドの制限に従います。
  • タイムアウト、HTTP 再試行、リクエストの並行数、キャッシュの保存動作に関する設定を利用できます。

用途

  • 評価案:REST リクエスト処理を独自に実装せず、Python でフィルター付きの ChEMBL データ取得ワークフローを構築し、創薬データの準備に利用する。
  • 評価案:後続の解析に使うレコードのフィールドを選んで取得し、ネストしたフィールドの挙動が必要な詳細度を提供するか確認する。
  • 評価案:代表的なワークロードと選択したキャッシュ設定を使い、繰り返し行う探索的クエリに対するローカルキャッシュと遅延取得の適性を評価する。

使い方

  1. ライブラリを Python ワークフローに統合する前に、公式クライアント READMEを読み、クエリインターフェース、インストール方法、設定オプションを確認します。
  2. README に記載されたパッケージのインストール手順に従います。リンク先のサンプルノートブックを出発点となる参考資料として利用できますが、ここでは利用可能であることを確認していません。
  3. ChEMBL API ドキュメントを参照し、適切なエンドポイントとそのフィールドを特定します。取得する予定のレコードに合う、ドキュメントに記載された検索タイプを選択します。
  4. 返却フィールドを絞り込む場合は、そのエンドポイントで利用できるフィールドに only を適用します。特定のプロパティを細かく指定して利用する前に、ネストフィールドの制限を確認します。
  5. README の指示に従い、クライアントを使用する前に設定を行います。キャッシュの有効期限、再試行、並行数、タイムアウトの要件を確認し、FAST_SAVE に関して記載されたデータ損失のリスクも考慮します。
  6. ワークフローを拡張する前に、代表的な小規模クエリを評価し、返却フィールドと取得時の動作を確認します。これは提案する評価手順であり、テスト完了の報告ではありません。

関連リソース

ChEMBL MCP (cyanheads) は、MCP クライアントを ChEMBL の化合物、標的、生物活性、医薬品の記録に接続し、構造検索と、オプションで DuckDB を用いた大規模な活性データセットの分析を提供します。

オープンソースTypeScript

創薬 · 科学データ

PocketScout MCPは、公開されている構造、生物活性、保存性、変異、文献のデータを用いて既知のタンパク質結合部位を評価するためのツールをAIアシスタントに提供し、標的選定や結合タンパク質設計を支援します。

オープンソースPython

創薬 · 科学データ

RCSB MCP (cnyambura) は、RCSB PDB のエントリおよびポリマーのメタデータ、構造ファイルのダウンロード、カスタム Data API クエリを MCP クライアントに提供するサードパーティ製 MCP サーバーです。

Python

創薬 · 科学データ

RCSB PDB Data API は、REST および GraphQL を通じて、PDB エントリーと一部の計算構造モデルの構造メタデータ、分子配列、化学記述子、注釈にアクセスできます。

創薬 · 科学データ

UniProt MCP (cyanheads) は、AI クライアントを UniProt のタンパク質検索、注釈、識別子マッピング、プロテオーム、分類学、アミノ酸配列に接続するサードパーティ製 MCP サーバーです。

オープンソースTypeScript

創薬 · 科学データ

AIDDISON Explorer

プラットフォーム

AIDDISON Explorerは、目標プロファイル、設計上の制約、予測物性、合成可能性に基づいて分子候補を生成し、順位付けするホスト型創薬プラットフォームです。

分子生成 · 創薬

関連ガイド

ワークフロー

タンパク質・構造生物学のAIワークフロー:UniProt・RCSB PDB・Agent

タンパク質の同定情報と配列から、RCSB の構造メタデータ、観察されたリガンド接触、提案する下流候補評価まで、証拠に基づくタンパク質ワークフローを構築します。生物種、アイソフォーム、鎖、欠損データ、実験的検証について明示的に確認します。

APIs

化学AIアプリの科学API:PubChemとRCSB PDB入門

PubChem PUG RESTとRCSB PDB Data APIを基盤に化学AIを統合する方法を解説します。文書化されたリクエスト、化学的同一性の確認、明示的なエラー処理、来歴、そしてAPIとMCPラッパーの明確な境界を取り上げます。