開発者向け

AIエージェント向け医薬品データ:ATCコードで医薬品をコーディングし、モデルが利用できるようにFHIRに保存する方法

AIエージェント向けに医薬品データベースを開発者が選択する方法:ATCコードで何ができるか、バンドルされた用語サブセットが何をカバーし、何をカバーしないか(相互作用なし)、MedicationStatementとMedicationAdministrationの構造、そしてエージェントがAnpheros Platformを通じて医薬品を読み取り、提案する方法。

著 公開日 1分で読めます

AIエージェントが「朝にノルバデックス20mg」と読み取る場合、それがタモキシフェンであり、抗エストロゲン薬、ATC L02BA01であり、一度きりの服用ではなく毎日の経口投与量であることを知る必要があります。「どの医薬品データベースを使用すべきか」という問いの背後にある本当の疑問は、その知識がどこから来るのか、そして医薬品がどのように保管されて次のシステムが同じように読み取れるようにするかということです。このガイドは、Anpherosプラットフォーム向けにその疑問に答え、プラットフォームが提供するものと提供しないものについて正直に説明します。

開発者向けの技術的なバージョン: AIエージェント向けの医薬品データ · developers.anpheros.com の FHIRコードシステム(リクエスト、レスポンス、制限事項を含む)。このページは平易な言葉での説明です。

まずコードから:ATC

WHOの解剖治療化学分類は、作用対象と作用内容によって整理されたコードを各有効成分に付与します:C09AA02 はエナラプリル(C 循環器系、C09 レニン・アンジオテンシン系、C09AA ACE阻害薬)です。ATCは無料、国際的、そして安定しているため、Anpherosはすべての医薬品にATCコードを付与しています。製品名は code.text に保持されるため、人は「ノルバデックス」を見続け、エージェントは L02BA01 を見ます。

ATCでは提供されないもの:剤形、包装サイズ、国内製品識別子、価格、または相互作用。これらは国固有であり、多くの場合ライセンスが必要です。これらを必要とするエージェントは、2番目のソースが必要です。

プラットフォームが提供するもの

  • バンドルされたATCサブセット:検索用。ヨーロッパの人々が実際に服用している医薬品に対応できる十分な量で、表示名が含まれ、GET /v1/terminology/atc?q= で検索可能、コードでも GET /v1/terminology/atc/{code} で検索可能です。同じサブセットがMCPツールの lookup_code をバックアップしています。サブセット外のコードもリソースに使用される場合がありますが、その場合、検索には表示がありません。
  • バンドルされたLOINCサブセット:測定値と検査結果用。/v1/terminology/loinc の下で同じエンドポイントを使用します。
  • 適切な形状のFHIRリソース:治療計画用 MedicationStatement(人が何を、いつから、どのくらいの頻度で服用するか)、服用された各用量用の MedicationAdministration(そのステートメントにリンク)、ATC J07ワクチンコード付きの Immunization、および薬物アレルギー用のATC付き AllergyIntolerance。

プラットフォームが提供しないもの:完全な医薬品データベース、相互作用チェック、用量範囲チェック、または臨床意思決定支援。これらは意図的に外部に置かれています。なぜなら、それらを含めるとプラットフォームが医療機器になるからです。エージェントがこれらを必要とする場合は、ライセンスされたサービスを使用し、プラットフォームを記録として保持してください。

エージェントが医薬品を読み取る方法

コンテキストAPIは、ATCコード、テキスト、投与量、および出所(誰が入力したか:患者、医療従事者、インポート)とともに、アクティブな医薬品をトークン予算内で返します。これにより、モデルはリソースの山ではなく、クリーンなリストを見ることができます。MCP経由では同じものが get_patient_context であり、MedicationStatement?patient=…&status=active での search_fhir は生の(raw)リソースを提供します。

curl "$BASE/v1/patients/$PID/medications?status=active" -H "Authorization: Bearer $TOKEN"

エージェントが医薬品を書き込む方法

書き込むのではなく、提案します。人の同意の下でAIエージェントとして登録されたアプリケーションによって送信された MedicationStatement は検証され、提案として保持されます。人は「アシスタントXがタモキシフェン20mgを毎日追加したいと考えています」と表示され、承認または拒否します。承認された提案のみが記録に入り、AIによって作成されたものとしてマークされます。エージェントは、確信がある場合はATCコードを送信し、常に code.text に製品名を含めるべきです。コードのない人間が読めるテキストも受け入れられ、後でコード化できます。

送信前に、validate_fhir_resource(または POST /fhir/R4/MedicationStatement/$validate)は、リソースが正しく形成されているかどうかをエージェントに伝えます。これにより、人は不正な形式のものを承認するように求められることはありません。

2番目のソースを選択する場合(必要な場合)

エージェントが「これはあれと相互作用しますか」と答える必要がある場合は、国別(相互作用データと製品識別子は異なります)およびライセンス別(ほとんどが商用です)にソースを選択してください。結果は、医療従事者が確認しない限り、人の記録内のリソースとしてではなく、あなた自身の注釈として保持してください。記録は服用されたものを運ぶべきであり、アドバイス層はあなたのものです。

よくある質問

Anpherosは完全な医薬品データベースを持っていますか?

いいえ。コード化と検索のためのバンドルされたATCサブセットがあり、医薬品をATCコード付きのFHIRリソースとして保存します。相互作用、用量チェック、および国内製品カタログは含まれていません。

RxNormまたは国内リストではなくATCを使用する理由は何ですか?

ATCは国際的で無料であり、国境を越えて人を追跡する記録にとって重要です。RxNormは米国中心です。国内リストは国境で止まります。アプリケーションは、同じリソースにATCコードの隣に2番目のコード(例えば国内製品コード)を追加できます。

エージェントは人の記録に医薬品を追加できますか?

人が承認する提案としてのみ可能です。AIエージェントが送信するものは、その承認なしには適用されません。

エージェントは誰が医薬品を入力したかを知っていますか?

コンテキストAPIの各項目には author_type とソースが含まれ、各リソースには Provenance があります。医療従事者によって入力された医薬品と患者によって入力された医薬品は、モデルにとって異なって見え、それが意図するところです。

これを試す無料の方法はありますか?

はい:サンドボックスは無料であり、30人の合成患者は現実的なATCコード付きの医薬品を持っています。無料FHIRサーバー:サンドボックスを参照してください。

このガイドは情報提供のみを目的としており、医学的アドバイスに代わるものではありません。健康に関する決定については、医師にご相談ください。緊急の場合は、112にお電話ください。
著者について
Adrian Kereky

Founder of Anpheros. An electronics engineer, he spent six years in autonomous driving, on automotive projects run in partnership with Samsung and NVIDIA, designing the architecture of driver-assistance and AI systems that run on NVIDIA chips with CUDA. He then built Anpheros: the patient-controlled medical record and the HL7 FHIR R4 platform it runs on.

Anpherosと著者について →

あなたの医療記録を持ち歩こう

Anpheros Dailyは、症状、検査結果、薬剤、書類を、標準フォーマットで、あなたの管理下に一元化します。ベーシックプランは無料です。

Anpheros Dailyを入手する