CAD API向けローカルRAG:プロプライエタリインターフェースの知識不足を克服する方法
Hexagon
あるエンジニアがSmart3Dでの自動化の必要性に直面したが、APIの知識がボトルネックとなっていた。彼はローカルRAGパイプラインを構築した。すなわち、ライブラリを逆コンパイルし、事実を抽出し、LLMでそれらを補強し、埋め込みインデックスを作成し、検証機能を持つエージェントを実装した。その結果、モデルは実際のAPIエンティティのみに依存したコードを生成できるようになった。
Hexagon社のSmart3D(Intergraph Smart 3D)CADシステムで作業する著者は、自動化の課題に直面していました。独自APIの知識は高価で入手が困難であり、一方で公開LLMはデータ不足のために架空のメソッドを生成していました。そこで彼は、システム自身のライブラリから知識を抽出するローカルRAGパイプラインを構築することにしました。まず、コンパイルされたSmart3Dアセンブリを逆コンパイルし、シグネチャ、XMLドキュメント、メソッド本体からのファクト(呼び出し、例外、生成オブジェクト)を抽出するパーサーを作成しました。次に、言語モデルを使用してこのデータを充実させました。使用シナリオや検索ヒントを策定し、確認済みのファクトのみに厳密に限定しました。埋め込みには多言語モデルbge-m3を選択しました。エンジニアのクエリはバイリンガル(ロシア語と英語)だからです。エンティティカードをチャンクとして使用し、シグネチャ、説明、ファクト、ヒントを含めました。その結果、ベクトル検索で関連エンティティを見つけ、それらをコンテキストとしてC#コードを生成し、ソースデータを参照して結果を検証するエージェントが完成しました。このシステムは、実際のプロジェクトで自動化を加速するためにすでに使用されています。
出典: Habr — хаб NLP —
原文
