Share
Embed
Transcript
16 slides
-
アジェンダ - LLM 創薬チャレンジでトライしたこと - LLM の理想と現状 - まとめ LLM
創薬チャレンジの詳細は以下のサイトにまとめています。 https://github.com/yamasakih/LLM-DD-Challenge/blob/master/contest.md -
LLM創薬チャレンジ 序盤 - LLM に創薬に必要なプログラムを一から実装させてみる - 「タニモト係数で類似度を求める」、「 SDFから特定のタグの情報を抜き出す」ぐらいならできるが少 し難しくなると実装できない。 ❌
- Embedding を用いて Word2Vec みたいにできないか試す - 計算自体はできるが Embedding が SMILES だけにフィットしているわけでないので目立った効果 はなさそう。 ❌ - GPT-4 API や GPT plugin は Waitlist に登録したもののまだ使えない - GPT-3.5 の GUI や API ではやれることに限界があり、不十分であった。 ❌ - AutoGPT のリリースがあり創薬チャレンジで試すことにした。 -
AutoGPT AutoGPT では設定ファイルに記載した設定をもとに内部で ChatGPT を用いながら、設定されている Goal を 実行するために何をすべきかを ChemCrow 同様
AI が自発的に提案し、ユーザが許可をすると実行をします。 ai_goals: - Implement a Python script named smiles_from_sdf.py using RDKit to output the SMILES key of the chemical structure with IC50_range_nM tag "<100" (note that it is a string) from /workspace/Auto-GPT/autogpt/auto_gpt_workspace/CBLB_inhibitors_vsF.sdf to /workspace/Auto-GPT/autogpt/auto_gpt_workspace/CBLB_inhibitors_vsF.txt using RDKit. - Run smiles_from_sdf.py - Shutdown when task is done. ai_role: Medicinal Chemist and Chemoinformatician -
AutoGPT AutoGPT では設定ファイルに記載した設定をもとに内部で ChatGPT を用いながら、設定されている Goal を 実行するために何をすべきかを ChemCrow 同様
AI が自発的に提案し、ユーザが許可をすると実行をします。 ai_goals: - RDKit を使用して CBLB_inhibitors_vsF.sdf から IC50_range_nM タグ "<100" を持つ 化学構造のSMILESキーを CBLB_inhibitors_vsF.txt に出力するsmiles_from_sdf.pyという Pythonスクリプトを実装してください。 - smiles_from_sdf.py を実行してください。 - タスクが終了したらシャットダウンしてください。 ai_role: メディシナルケミストやケモインフォマティシャンとしてふるまってください -
Chemoinformatics plugin より複雑な作業を可能にするために AutoGPT が利用できる plugin を作成し提供しまし た。 タニモト係数計算 SMILES
が正しいかの判定 重複している SMILES を削除 docking のためのタンパク質の変換 PDB からリガンドの抽出 REINVENT による構造生成 -
Chemoinformatics plugin DockStream や REINVENT は JSON で設定ファイルを作成しそれぞれ Docking や構
造生成を行うことができる。 LLM に今回のデータセットに対して DockStream や REINVENT を行うための JSON ファイルを作成するように指示したところ作成し実行することができた。 ai_goals: - 8gcy.pdbからタンパク質のアポ構造とリガンドのみの PDBをそれぞれ作成してください。 - target_preparation_example.jsonc を読んで、 target preparation を実行するための json ファイルの出力方法を確認してください。 - 作成したタンパク質 apo pdb とリガンド Z3N.pdb の2つの PDB を使用するように設定 json ファイルを更新し、 8gcy_preparation_setting.json として出力してください。 - 8gcy_preparation_setting.jsonを使って、 target preparation を実行する。 - タスクが終了したらシャットダウンしてください。 -
LLM創薬チャレンジ 最終提出化合物 1. PDB(8GCY)からアポタンパクとリガンドを抽出 2. AutoDock にて docking をするための前処理 3.
AutoDock で docking を行い REINVENT で その docking score を指標として構造生成 4. 既知構造と重複構造をフィルターし docking score TOP 10 を提出 -
LLM創薬チャレンジ 最終提出化合物 1. PDB(8GCY)からアポタンパクとリガンドを抽出 2. AutoDock にて docking をするための前処理 3.
AutoDock で docking を行い REINVENT で その docking score を指標として構造生成 4. 既知構造と重複構造をフィルターし docking score TOP 10 を提出 -
LLM創薬チャレンジ 最終提出化合物 1. PDB(8GCY)からアポタンパクとリガンドを抽出 2. AutoDock にて docking をするための前処理 3.
AutoDock で docking を行い REINVENT で その docking score を指標として構造生成 4. 既知構造と重複構造をフィルターし docking score TOP 10 を提出 💡 化学構造の安定性や合成容易性を判断するツールを組み込むことで さらなるブラッシュアップができると期待できる -
LLM の理想 人間がタスクに必要なコードやツールを LLM に指示したら作成してくれる。 ⚪⚪したいから △△なツールを 作ってよ。 わかりました。 …
お待ちください … お待ちください … お待ちください すいませんできませ ん。 💡 2023/8/25 現在の技術では複雑なタスクの場合まだ難しい -
LLM の現状 人間が必要なコードやツールを提供し LLM に指示したらタスクを実行してくれる △△なツールを 作ったから⚪⚪ してよ。 わかりました。 …
10 分後 できました。 💡 人間がツールを用意したり LLM の出力をレビューしたりすることで活用できる -
LLM にちょうどよいタスク タスク LLM などの活用方法 例 細かくルールやフォーマットが 定義されている プログラムや RPA
で自動化する 予算を管理している Excel シートで 予算 100万円以上のレコードのみ にする ルールやフォーマットがあるが、細 かく定義されていない、または よく変更されることがある LLM を活用しやすいタスクと言える フォーマットが異なる領収書の宛 名、金額などをまとめる 文章の要約や評価など ルールやフォーマットが定義されて いない LLM には適していないが、過去の 事例からルールやフォーマットを整 備するのに活用するのもあり -
LLM にちょうどよいタスク タスク LLM などの活用方法 例 細かくルールやフォーマットが 定義されている プログラムや RPA
で自動化する 予算を管理している Excel シートで 予算 100万円以上のレコードのみ にする ルールやフォーマットがあるが、細 かく定義されていない、またはよく 変更されることがある LLM を活用しやすいタスクと言える フォーマットが異なる領収書の宛 名、金額などをまとめる 文章の要約や評価など ルールやフォーマットが定義されて いない LLM には適していないが、過去の 事例からルールやフォーマットを整 備するのに活用するのもあり 💡 LLM の今後の性能や機能のアップデートに備えて 自分たちの業務で「LLM が活用できそうなタスク」をあらかじめまとめておくといい -
まとめ - AutoGPT を用いることで LLM に Docking や構造生成など創薬の SBDD やケモイン
フォマティクスで行うタスクを試行させることができた。 - しかし、本来人間が期待している「人間がタスクに必要なコードやツールを LLM に指 示したら作成し、実行してくれる」ことは実現できなかった。 - LLM を活用しやすいタスクにしぼり LLM を活用したり、今後の LLM の性能アップに 期待しそのようなタスクをリストアップしておくことが重要である。