本文へスキップ

ChemCrow

Andres M Bran, Sam Cox, Andrew White, Philippe Schwaller / White Laboratory

ChemCrow は、Langchain を用いて構築された Python 化学エージェントパッケージで、言語モデルの推論を RDKit、paper-qa、化学データベース、反応計画ツールに接続します。

掲載情報の更新 ·

概要

ChemCrow は、言語モデルインターフェースを通じて、集中的な推論を要する化学タスクを支援することを目的とした、ツールを利用する化学エージェントパッケージです。Langchain を基盤とし、RDKit、paper-qa、Pubchem、chem-space などの化学ソフトウェアや情報源を組み合わせています。そのワークフロー上の役割は、自然言語の質問を専門ツールに接続することであり、単独の予測モデルや化学データベースとして機能することではありません。

README では、ChemCrow インスタンスを作成し、その run メソッドを使って質問を送信する Python インターフェースが紹介されています。例には、分子量の検索と反応生成物の予測が含まれます。これらの例での入力は自然言語による化学の質問です。記載されたやり取りではエージェントの応答が返されますが、出典の抜粋には構造化出力のスキーマは指定されていません。設定項目には、言語モデルの選択、temperature、ストリーミング設定が含まれます。記載されたセットアップには OpenAI API キーが必要ですが、Serp API の設定は任意です。

逆合成計画と反応生成物予測には、ChemCrow はデフォルトで RXN4Chem を使用します。README には、このサービスは遅い場合があり、API キーが必要だと記されています。また、あらかじめ作成された Docker イメージを使ってこれらのツールをセルフホストし、local_rxn 設定でその方法を選ぶ代替手段も説明されています。これらの統合は外部依存であり、ChemCrow 内で開発されたデータベースや予測モデルではありません。

API の利用制限により、公開パッケージには ChemCrow 論文で説明されているすべてのツールが含まれていません。また README では、このリポジトリは論文と同じ結果を出さないと明示的に警告しています。提供されたパッケージング用ソースには Python 要件が記載されていますが、テスト済みの互換性を裏付けるものではなく、このリポジトリの性能結果も示されていません。

主な機能

  • Langchain ベースのエージェントインターフェースにより、ChemCrow.run を通じて自然言語の化学質問を送信できます。
  • RDKit と paper-qa に加え、Pubchem や chem-space などの化学情報源と連携します。
  • RXN4Chem を利用した逆合成計画と反応生成物予測に対応します。
  • README に記載された Docker イメージを使って、反応予測ツールと逆合成ツールを任意でセルフホストできます。
  • 言語モデルの選択、temperature、ストリーミング、ローカル反応ツールへのルーティングを設定できます。

用途

  • 評価案:README の例に沿ったワークフローで、分子量に関する質問への応答を、独立して確認した化学参照値と比較します。
  • 評価案:既知の参照結果がある代表的なケースを用いて、反応生成物予測と逆合成計画を評価します。
  • 評価案:paper-qa と化学データベースの連携が化学文献調査のワークフローを支援するかを調べ、返された情報を原資料と照合します。

使い方

  1. 公式 README を読み、エージェントインターフェースと、このパッケージのツールセットが論文のものと異なるという警告を確認します。
  2. setup.py に記載された Python 要件と依存関係を確認し、README のパッケージインストール手順に従います。これらの記載は要件として扱い、互換性がテスト済みである証拠とは見なさないでください。
  3. 必要な OpenAI API キーを環境内で設定し、共有ノートブックやリポジトリ内のファイルに認証情報を記載しないでください。Serp API は、その任意の連携を使う場合にのみ設定します。
  4. README の Python の例に従って ChemCrow インスタンスを作成し、分子量に関する質問を送信します。科学的な作業に応答を使用する前に、独立して検証してください。
  5. 反応ツールについては、デフォルトの RXN4Chem サービスと、ドキュメントに記載されたセルフホスト型 Docker の方法から選択します。API アクセス、コンテナのセットアップ、local_rxn 設定については README を参照してください。
  6. 評価の範囲を ChemCrow 論文およびリンク先の実験リポジトリと照らし合わせます。公開パッケージがこれらの実験を再現すると想定しないでください。

関連リソース

ChemCP は、RDKit.js を使って SMILES 文字列からインタラクティブな2D分子図と計算記述子を生成し、MCP Apps 対応ホスト向けにチャット内ビューアを提供する MCP App です。

TypeScriptJavaScript

ケモインフォマティクス

ChemDataExtractor

オープンソース

ChemDataExtractor v2 は、科学文献から化学物質エンティティ、物性、スペクトル、表形式データを抽出する Python ツールキットで、HTML、XML、PDF 用のリーダーを備えています。

オープンソースPython

文献・研究

Chemistry Development Kit

オープンソース

Chemistry Development Kit (CDK) は、他のプログラム内で化学表現、ファイル変換、構造検索、フィンガープリント、QSAR記述子の計算、分子レンダリングに利用できる Java ライブラリです。

オープンソース

ケモインフォマティクス

Coscientist

エージェント

Coscientist は、大規模言語モデルを用いた化学研究向けに、簡単な実装と関連する研究データを提供し、合成計画、ライブラリー選択、複数回の実行、最適化を扱います。

文献・研究 · ラボ自動化

Datamol

オープンソース

Datamol は RDKit を基盤とする Python 分子処理ライブラリで、構造変換、標準化、フィンガープリント、配座生成、可視化、ローカルまたはリモートのファイル I/O 用ツールを備えています。

オープンソースPython

ケモインフォマティクス

Datamol に基づく分子調製、類似性分析、骨格ワークフロー、コンフォマー処理を案内し、入力検証と再現性に関するガイダンスも提供する K-Dense Scientific Agent Skill。

Python

ケモインフォマティクス · 創薬

関連ガイド

概要

化学AIエージェントの技術スタックを構築するには

言語モデル、オーケストレーション、Skills、MCPインターフェース、API、ライブラリ、データを分離して、化学AIエージェントスタックを設計します。提案する分子・材料ワークフローを参考に、入出力契約を定義し、権限、評価、再現可能なデプロイを計画します。

エージェント

科学ワークフローのエージェントとスキル

検査可能な入力、制限されたツール、再利用可能なスキル、証拠に結び付いた出力、明示的な人間の承認を備えた、範囲の明確な科学エージェントワークフローを計画します。ChemCrow、PaperQA、Coscientist、Scientific Agent Skills の役割を比較しますが、相互運用性が検証済みであるとは想定しません。