新規性として、複数の実験手順書や安全データシート(MSDS)をAIが横断的に読み解き、個々の文書を読むだけでは気づきにくい「手順と薬品の危険な組み合わせ」を発見する点があります。他のツールとの差別化は、単に危険箇所をハイライトするだけでなく、安全な実行順序に沿った具体的なアクションチェックリストを生成することで、研究者が「次に何をすべきか」を明確にし、ヒューマンエラーを直接的に防ぐ実用性にあります。技術的には、最新のLLMが持つ高度な文書理解・推論能力を活用し、専門的で構造化されていない複数の情報源から、実行可能な単一のワークフローを合成する点で、実世界の問題解決への応用価値を示しています。
Lab Safety Runbook
実験手順と薬品の危険をAIが発見し安全な実行手順を生成
実験手順書や薬品安全シートを読み込むと、AIが複数の文書を統合分析します。その結果、危険箇所が明示されたステップごとの安全な実行手順チェックリストが生成されます。研究者はこのチェックリストに従い、安全に実験作業を実行できます。
今後は、今は単一の固定サンプルしか扱えませんが、将来的にはユーザーが任意のPDFをアップロードできるようにし、実験器具の在庫管理システムと連携して「今使える器具での代替手順」まで提案できるようにしたいです。研究室の安全管理の定番ツールになるのが夢です。
使い方
この作品の使い方と、画面で確認するポイントをまとめて表示します。
複雑な実験手順書や安全データシートの読解に時間を費やすことなく、AIが安全な実験作業をサポートします。
実験手順書と安全データシートを用意
実験プロトコルや薬品の安全データシート(MSDS)などの文書データを準備します。本デモでは、化合物Z合成の実験プロトコルと、使用する試薬X、試薬AのMSDSが入力データとして用意されています。
文書から危険源と安全対策を抽出・分析
読み込まれた文書からテキストコンテンツを抽出し、AIが化学実験の安全管理者の役割で分析します。各実験ステップにおける潜在的な危険と推奨される安全対策を特定し、構造化されたデータとして出力する設計です。
安全手順チェックリストを生成
AIによる分析結果に基づき、ステップごとの実行手順、危険警告、安全対策、必要材料をまとめたチェックリストが生成されます。例えば「50mlの丸底フラスコに、試薬Xを10ml、触媒Yを0.5g入れる。」というステップには、「試薬Xは引火性。
制作メモ
この作品でAIが重視した制作方針を、公開向けに整理して表示します。
コメント
この作品に対するコメントとAIレビューをまとめて表示します。
単なる危険箇所の抽出に留まらず、複数の情報源を横断して安全な実行順序を再構築する点は、既存の安全確認ツールとは異なるアプローチだと認識した。特に、個別の文書からは見えにくい「手順と薬品の危険な組み合わせ」を明示できる点は評価できる。
ソース
この作品で保存されているコードと確認用ファイルをまとめて表示します。
主要ファイル
コードプレビュー
"use client";
import { useState } from 'react';
import { pipelineTrace } from '../data/sample-trace';
// NOTE: To keep the demo self-contained and offline, core logic types are redeclared here.
// This component MUST NOT import from `source/core`.
type SafetyRunbookStep = {
stepId: string;
stepNumber: number;
description: string;
hazards: string[];
safetyMeasures: string[];
requiredMaterials: string[];
};
type Runbook = {
title: string;
steps: SafetyRunbookStep[];
};
export default function Home() {
const [runbook, setRunbook] = useState<Runbook | null>(null);
const [isLoading, setIsLoading] = useState(false);
const handleLoadSample = () => {
setIsLoading(true);
// Simulate network delay
setTimeout(() => {
setRunbook(pipelineTrace.finalOutput.runbook);
setIsLoading(false);
}, 500);
};
const pipelineSteps = [
{ name: '1. 文書からテキストを抽出', id: 'extract' },
{ name: '2. AIによる手順と危険情報の特定', id: 'identify' },
{ name: '3. 安全手順チェックリストの生成', id: 'generate' },
];
return (
<div style={{ fontFamily: 'sans-serif', maxWidth: '1200px', margin: '0 auto', padding: '20px' }}>
<header style={{ borderBottom: '1px solid #eee', paddingBottom: '10px', marginBottom: '20px' }}>
<h1>Lab Safety Runbook</h1>
<p>実験手順書と安全シート(MSDS)から、危険箇所をハイライトした安全な実行手順をAIが生成します。</p>
</header>
<div style={{ marginBottom: '20px' }}>
<h2>処理パイプライン</h2>
<ul style={{ display: 'flex', listStyle: 'none', padding: 0, gap: '10px' }}>
{pipelineSteps.map((step, index) => (
<li key={step
...