1 フォロワー · 125 投稿

Pythonは、汎用プログラミング用のインタープリター型の高水準のプログラム言語です。 Guido van Rossumによって作成され、1991年に最初にリリースされたPythonは、特に重要な空白を使用してコードの可読性を強調する設計哲学を持っています。 公式サイト。

新着
記事 Toshihiko Minamoto · 6月25日 3m read

現代の医療現場において、臨床的に類似した患者を見つけることは、しばしば「干し草の山から針を探すようなもの」に感じられます。医療用語には微妙なニュアンスが多いことから、従来のキーワード検索では失敗することがよくあります。「心不全(Heart Failure)」と検索しても、「うっ血性心不全(Congestive Cardiac Failure)」という表現が含まれる記録を見逃してしまう可能性があるからです。

iris-medmatchをご紹介できることを大変嬉しく思います。これは、InterSystems IRIS for Healthを基盤として構築された、AIを活用した患者マッチングエンジンです。ベクトル探索を活用することで、このツールは単なる文字列の一致だけでなく、臨床的な意図を理解することができます。 ## 革新の核心:セマンティック臨床検索

`iris-medmatch`は、FHIRの生データとAIによる実用的なインサイトとの間のギャップを埋めます。`all-MiniLM-L6-v2`モデルを活用することで、このエンジンは病状を数値ベクトルに変換します。

一般的な検索では正確な単語が検索対象となりますが、当エンジンは**臨床状況**を理解します。例えば、数値ベクトル類似度を用いて、「高血圧」という検索語に対して「高血圧症」と診断された患者を照合することができます。

0
0 6
新着
お知らせ Mihoko Iijima · 6月21日

開発者の皆さん、こんにちは! ウェビナー&ハンズオンシリーズ 久々お知らせです!📣今回のテーマは「AI エージェントの開発」です。🤖

AI エージェントって結局何なの?

AI エージェントの開発に興味はあるけれど、何から学べばよいのか分からない。

そんな方を対象に、「仕組みを理解する → コードを見る → 実際に作る」の 3 ステップで学ぶシリーズです。

  • 「AI チャット」と「AI エージェント」の違いって?
  • どんな機能を用意したら「AI エージェント」になるの?
  • なんとなく会社で使ってるけど、実際どんな仕組みになっているの?

そんな疑問を、デモやコード例、ハンズオンを通じて一緒に解明していきましょう!

0
0 23
記事 Toshihiko Minamoto · 6月11日 19m read

LangGraph を使用して、推論、ベクトル検索、ツール統合を組み合わせた、スケーラブルで自律的な AI エージェントの設計方法を学びましょう。 cover

長すぎるので読み飛ばしました

  • AIエージェントとは、メモリ・コンテキスト・主体性を組み合わせ、単なるチャットボットを超えたタスクを自動化する能動的なシステムです。
  • LangGraphは、組み込みの状態管理機能を備えたノード(タスク)とエッジ(接続)を活用し、複雑なAIワークフローを構築できるフレームワークです。
  • このガイドでは、優先度を分類し、関連するトピックを特定し、エスカレーションを行うか自動返信するかを判断する、AI搭載のカスタマーサポートエージェントの構築手順をご説明します。

では、一体、AIエージェントとは何でしょうか?

率直に言って、「AIエージェント」と聞くと、まるで役員室を乗っ取ろうとするロボットのように聞こえるかもしれません。しかし実際には、複雑なワークフローを効率化し、反復的な作業を排除してくれる、先を見越した頼もしい相棒なのです。チャットボットをさらに進化させた存在だと考えられるでしょう。AIエージェントは単に指示を待つだけでなく、自らアクションを開始し、複数のステップを調整し、状況に応じて適応していくのです。

0
0 13
記事 Toshihiko Minamoto · 6月11日 8m read

Intersystems IRIS プロダクションは、さまざまなプロトコルやメッセージ形式を持つ異種システム間を、信頼性が高く、可観測性があり、スケーラブルな方法で接続するための強力なフレームワークです。intersystems_pyprodは、 InterSystems Python Productionsの略称は、開発者がこれらの相互運用性コンポーネントをPythonで完全構築できるようにするPythonライブラリです。柔軟性を重視して設計されており、ハイブリッドなアプローチをサポートしています。つまり、既存のObjectScriptベースのコンポーネントと新しいPythonベースのコンポーネントをシームレスに組み合わせ、確立されたIRISインフラストラクチャを活用することができます。一度定義されると、これらのPythonコンポーネントは他のコンポーネントと同様に管理されます。つまり、[IRIS プロダクション構成]ページを使用して、追加、構成、接続を行うことができます。


InterSystems IRIS プロダクション:簡単な入門書

プロダクションの主要な要素

画像提供:ラーニング・サービス研修資料

通常、IRISプロダクションは外部インターフェースからデータを受け取り、調整したステップを通じて処理を行い、宛先へと転送します。

0
0 10
記事 Toshihiko Minamoto · 6月3日 21m read

INTRO

Barricadeは、InterSystems OMOP向けのFHIRからOMOPへの変換を効率化し、そのサポートをスケールアップするために、ICCA Opsが開発したツールです。当社のクライアントは、InterSystems OMOPを使用してFHIRデータをこのOMOP形式に変換することになります。マネージドサービスとして、当社の役割は変換プロセスに伴うあらゆる問題のトラブルシューティングを行うことです。Barricadeは、さまざまな理由から、このプロセスを支援する理想的なツールです。第一に、効果的なサポートには、FHIR標準、OHDSI OMOPモデル、そしてInterSystems特有の運用ワークフローにわたる専門知識が必要ですが、これらはすべて高度に専門化された分野です。Barricadeは、大規模言語モデルを活用してFHIRやOHDSIに関する専門知識を提供することで、知識のギャップを埋めるお手伝いをします。さらに、特定の変換問題を解決するために詳細な説明が行われたとしても、その知識はメールやチャットの中に埋もれてしまい、将来的に活用できなくなることがよくあります。Barricadeなら、その知識を収集・再利用し、類似のケースにスケールさせることも可能です。最後に、多くの場合、ソースデータにアクセスできません。

0
0 15
記事 Hiroshi Sato · 5月28日 7m read

これは InterSystems FAQ サイトの記事です。

これらのファイルを個別にエクスポートする最も簡便で確実な方法は、VSCodeを利用してIRISのソースファイルを管理することです。

VSCodeの利用方法は、以下をご参照ください

VSCodeを使ってみよう

VSCode以外のツールとしての提供はありませんので、是非VSCodeのご利用をご検討ください。


VSCodeをご利用できない場合は、IRISが提供するAPIを使用して、個別にプログラミングする必要があります。

1) クラス定義

%SYSTEM.OBJクラスのExportAllClassesIndividualメソッドを使用してクラス毎にファイル出力できますが、その出力形式がXML形式です。

XML形式での出力は、可読性も低く、クラス数が多量にある場合には、インポートの時間も余計にかかるため、複数クラスを1ファイルにまとめる目的以外では、推奨しておりません。

可読性の高いUDL形式で出力するためには、

該当ネームスペースに存在するクラス名をクエリーで抽出し、クラス定義をUDL形式でエクスポートするメソッドで出力することができます。

以下はClaude Codeで生成したサンプルコードです。

Class Samples.ExportUDLAll
{

/// 指定されたネームスペース内のすべてのクラス定義を
/// 個別のUDL形式ファイルとして指定ディレクトリに出力する
///
/// @param pDirectory 出力先ディレクトリ名
/// @return %Status ステータスコード
ClassMethod Export(pDirectory As %String) As %Status
{
Set tSC = $$$OK
Try {
// %SYSTEM.OBJ の GetClassList メソッドでクラス名一覧を取得
// items はローカル多次元配列として ByRef で返る
// 第一サブスクリプトにクラス名が格納される
Set tSC = $SYSTEM.OBJ.GetClassList(.items, "/application=1")
If $$$ISERR(tSC) Quit

// items 配列をサブスクリプト順に走査してクラス数分繰り返す
Set tClassName = ""
For {
Set tClassName = $Order(items(tClassName))
Quit:tClassName=""

Write "class name = ", tClassName, !
Set tFileName = pDirectory _ "/" _ tClassName _ ".cls"
Write "file name = ", tFileName, !

// ExportUDL の第一パラメータ(itemname)はクラス名に ".cls" を付加
Set tSC = $SYSTEM.OBJ.ExportUDL(tClassName _ ".cls", tFileName)
If $$$ISERR(tSC) Quit

Write "Exported: ", tClassName, " -> ", tFileName, !
}
} Catch ex {
Set tSC = ex.AsStatus()
}
Quit tSC
}

}
0
0 15