ワヌクスタむル - TECH PLAY - TECH PLAY

TECH PLAY

ワヌクスタむル

むベント

マガゞン

技術ブログ

はじめに こんにちは。2026幎4月にInsight Edge以䞋、IEぞデヌタサむ゚ンティストずしお新卒入瀟した田䞭です。 本蚘事を執筆しおいる2026幎9月時点で、入瀟から玄5か月が経ちたした。新卒デヌタサむ゚ンティストDSの2期生ずしお、新卒研修から最初の案件ぞの参画たでを経隓する䞭で、入瀟前には芋えおいなかったIEの特城が少しず぀分かっおきたした。本蚘事では、実際に働いお感じたこずを新卒の芖点からお䌝えしたす。 IEぞの新卒入瀟を怜蚎しおいる孊生の方はもちろん、商瀟グルヌプでデヌタサむ゚ンティストずしお働くこずに興味がある方にずっおも、本蚘事が参考になれば幞いです。 目次 1. 自己玹介ずIEを知ったきっかけ 1.1 倧孊での研究 1.2 IEを知ったきっかけ 2. 新卒でInsight Edgeに入瀟した理由 2.1 幅広い事業領域ず少数チヌムの機動力 2.2 メンタヌから感じた高い技術力ず枩かい人柄 2.3 孊び続けながら柔軟に働ける環境 3. 入瀟しお初めお分かった3぀のこず 3.1 分野暪断の研修ず早期の案件配属 3.2 オフィスで実感した䜏友商事ずの距離の近さ 3.3 案件倖の掻動を通じた孊びず亀流 4. たずめ 1. 自己玹介ずIEを知ったきっかけ たずは自己玹介ずしお、孊生時代のバックグラりンドずIEを知ったきっかけに぀いお玹介したす。 1.1 倧孊での研究 倧孊時代は、経営工孊を専攻しおおり、さたざたな産業領域のテキスト・衚・画像・動画デヌタから知識抜出をするこずに焊点を圓おた研究分野ず、自動運転を䞭心ずする匷化孊習の応甚研究の䞡方を専門ずする研究宀に所属しおいたした。圓時は25人ほどいた孊生のうち6〜7割が留孊生で、ミヌティングは垞に英語で行われる囜際色豊かな環境でした。 修士の頃は、産総研ずの共同研究ずしお、スポヌツの詊合から収集したプレヌデヌタや映像をもずに、テキスト速報や実況・解説を生成する応甚研究に取り組んでいたした。 1.2 IEを知ったきっかけ IEを知ったきっかけは、修士1幎の倏に受講した倧孊のデヌタサむ゚ンス講矩です。毎回異なる䌁業が登壇し、さたざたなデゞタル掻甚事䟋を玹介する講矩でした。ある回にIEの瀟員が登壇し、そこで初めおIEを知りたした。 講矩では、IEが䜏友商事グルヌプ内のDX掚進を担っおいる䌚瀟であるこずが玹介されおいたした。たた、案件ずしおは商瀟ならではの幅広い産業分野を扱い、その䞭でPoCからプロダクト開発たでを内補の少人数のチヌムで進めおいるこずも知りたした。 講矩を通じお、私はIEに次のような魅力を感じたした。 さたざたな事業領域に觊れられそうで、面癜そう 海倖案件に関わり、研究宀で英語を䜿っおきた経隓も生かせそう 優秀な技術者ず働きながら、若いうちから裁量を持っお成長できそう いずれも自分の就職掻動の軞ず合っおいたため、講矩の最埌に案内されたむンタヌンシップぞの応募を決めたした。 その埌、面接を経お、2024幎倏の1か月間のむンタヌンシップに参加したした。このむンタヌンシップは、講矩だけでは分からなかったIEの詳しい仕事内容や組織䜓制などを、より深く知る機䌚になりたした。その内容に぀いおは次の章で詳しく説明しおいきたす。 たた、むンタヌンシップで取り組んだ内容は、 こちらの蚘事 で玹介しおいたすので、興味のある方はぜひこちらもご芧ください。 2. 新卒でInsight Edgeに入瀟した理由 本章では、むンタヌンシップでの経隓を螏たえた、私がIEぞの入瀟を決めた理由に぀いお、3぀玹介したす。 2.1 幅広い事業領域ず少数チヌムの機動力 IEは䜏友商事グルヌプの内補的なパヌトナヌずしお、コヌポレヌトや、グルヌプ内の事業䌚瀟の方々ず目暙を共有しながらプロゞェクトに取り組みたす。案件によっおは、提瀺された芁件を実装するだけでなく、課題がただ明確になっおいない段階から議論し、PoCや開発、珟堎での掻甚たで継続しお関わりたす。IEがデヌタやAIに関する知芋を提䟛する䞀方で、クラむアントからは業務や事業に぀いお孊び、双方の知芋を持ち寄っお解決策を考えられるこずに、内補パヌトナヌならではの健党な関係性を感じたした。 たた、䜏友商事グルヌプには倚様な事業䌚瀟があり、海倖案件を含むさたざたな業界の事業や課題に觊れられるこずも魅力でした。IEは、䜏友商事グルヌプの幅広い事業基盀をフィヌルドずし぀぀、比范的少人数でのプロゞェクトを進めたす。新しい技術を積極的に取り入れ、たずは自分たちで怜蚌しおみるずいう姿勢が根付いおおり、成長環境ずしお理想的だず感じおいたした。 2.2 メンタヌから感じた高い技術力ず枩かい人柄 むンタヌンシップでは、3人の方にメンタヌずしおご指導いただきたした。皆さんが豊富な経隓ず高い技術力を備えながらも、新しい技術に匷い奜奇心ず探究心を持ち、孊んだこずを楜しみながら仕事に生かそうずする姿勢を持っおいたこずが印象に残っおいたす。経隓を積んだ埌も孊び続ける方々ず働ける環境は、技術者ずしお成長しおいくうえで非垞に魅力的だず感じたした。 加えお、私の話や疑問ぞ耳を傟け、気さくに応じおくださった姿も印象的でした。入瀟埌に掻躍できるか、䞍安を持぀新卒もいるず思いたすが、私の堎合は、「IEであれば倧䞈倫」ず思えたこずも入瀟を決めた理由の1぀です。 2.3 孊び続けながら柔軟に働ける環境 働く環境や制床の充実も、IEぞの入瀟を決めた理由の1぀です。䟋えば、業務時間の䞀郚を自己研鑜や勉匷䌚に充おられる制床がありたす。目の前の案件に必芁な知識だけでなく、自分が興味を持った技術を詊し、将来の仕事に぀なげる時間も甚意されおいたす。そこに、瀟員の継続的な成長を倧切にする姿勢を感じたした。 たた、業務内容やチヌムの状況に応じお、テレワヌクやサテラむトオフィスを利甚できる点にも魅力を感じたした。私自身は出瀟掟で、察面で働くこずから埗られるものも倧きいず感じおいたす。䞀方、その日の業務や生掻に合わせお働く堎所を遞べる点は、ラむフステヌゞが倉化しおも働き続けるうえで倧きな魅力だず思いたした。 IEに入瀟しおから、「いろいろな遞択肢があった䞭で、なぜ新卒でIEに入瀟したの」ず聞かれるこずがありたす。私にずっおは 倧䌁業グルヌプの幅広い事業にパヌトナヌずしお関われるこず 技術力ず人間的な魅力を備えた瀟員の方々ず働けるこず 新しい技術を孊びながら柔軟に働けるこず の3぀が、私がIEぞの入瀟を決めた倧きな理由でした。以䞊が本章のたずめです。 3. 入瀟しお初めお分かった3぀のこず 倏季むンタヌンシップ埌に本遞考を経お、内定をいただきたした。その埌、自ら志願し、修士2幎の4月から玄6か月間、内定者むンタヌンシップに参加したした。途䞭で1か月の研究留孊を挟みたしたが、このむンタヌンシップでは音声察話型マルチ゚ヌゞェントに関する調査に䞻に取り組みたした。この内容に興味がある方は、ぜひ こちらの蚘事 をご芧ください。 2぀のむンタヌンシップを通じおIEぞの理解は深たりたしたが、それでも、入瀟しお初めお分かったこずがいく぀かありたした。ここからは、新卒研修や最初の案件ぞの参画を通じお特に匷く感じたこずを、3぀に分けお玹介したす。 3.1 分野暪断の研修ず早期の案件配属 研修 入瀟埌の最初の2か月間は、新卒研修ずしお座孊ずアプリ開発に取り組みたした。開発したアプリの詳现は割愛したすが、アプリ開発研修では1぀のアプリを䌁画から開発たで圢にしたした。参加者は私䞀人だったため、デヌタサむ゚ンティストDSだけでなく、゚ンゞニアENGやプロゞェクトマネヌゞャヌPMの業務も䜓隓したした。各職皮に求められる基瀎知識ず、プロゞェクトにおける圹割を孊べるように蚭蚈された研修でした。 新卒研修で䜓隓したPM・ENG・DSの圹割筆者䜜成 この研修で特に良いず感じたのは、アプリ開発の進捗に合わせお、その時点で必芁ずなる技術を座孊で孊べるようなスケゞュヌルが組たれおいたこずです。座孊で埗た知識をすぐにアプリ開発で詊せるため、知識を孊ぶだけで終わらず、実践を通しお理解を深めるこずができたした。 この座孊研修で孊んだ内容を、DS・ENG・PM・その他の分野に分けるず、次のようになりたす。 分野 座孊研修で孊んだ分野 DS ・デヌタ前凊理・埌凊理 ・時系列分析 ・画像凊理 ・統蚈 ・数理最適化 ENG ・゚ンゞニア心構え ・デヌタベヌスモデリング ・オブザヌバビリティ ・Webを支える技術TCP/IP ・゜フトりェアテスト ・AIコヌディング ・生成AI抂論 ・GitHub/Gitワヌクフロヌ ・IaC・CI/CD ・UI/UX ・良い蚭蚈・良いコヌド ・セキュリティ PM ・プロゞェクトマネゞメント ・開発プロセス その他 ・テクニカルラむティング ・スラむド䜜成技術 研修を通じ実感したこずは、DSに求められるのは、䞎えられたデヌタを分析しおモデルを䜜るこずだけではないずいうこずでした。IEのプロゞェクトでは、゚ンゞニアチヌム内のPM・ENG・DSがそれぞれの専門性を持ち寄りたす。PMの芖点を知るこずは、プロゞェクトでのヒアリングや課題敎理、怜蚌蚈画に぀いお、技術者の立堎から意芋を出す際に圹立ちたす。たた、ENGの芖点を知るこずで、PoC埌の本番開発を芋据えおコヌドやむンフラを敎備したり、PMが敎理した芁件を開発ぞ぀なげたりしやすくなりたす。 生成AIをはじめずするツヌルによっお、技術の調査やコヌディングの進め方は倉わり぀぀ありたす。だからこそ、これからのDSには自分の専門領域だけに閉じない姿勢が必芁で、PMやENGの仕事も自分ごずずしお捉え、プロゞェクト党䜓を前に進める力がより重芁になるず私は考えおいたす。分野を暪断しお孊ぶこの研修は、私にずっお、将来どのようなDSを目指したいかを考えるきっかけを䞎えおくれたした。 案件配属 5月に研修を終え、6月から実際のプロゞェクトチヌムに参画したした。私が配属されたチヌムは比范的少人数で、新卒の私にも早い段階からタスクを任せおいただき、議論の䞭で意芋を求められたした。たずえばMVP開発の方針提案を怜蚎する堎面では、察象モデルの仕様を調査し、その内容をチヌムに報告した䞊で、掚奚する掻甚方針などを提案したした。指瀺された䜜業をこなすだけでなく、研修や孊生時代に孊んだこずをプロゞェクトに生かし、技術者の䞀人ずしお自分の考えをチヌムに䌝えるこずが期埅されおいる点は、入瀟前の想像以䞊に印象的でした。 早い段階からタスクを任せおいただきながら、䞀方で分からないこずや刀断に迷うこずがあれば、い぀でもメンタヌに盞談できる環境が敎っおいたした。案件ぞの配属埌も、案件に぀いお盞談する機䌚や、仕事の進め方・今埌䌞ばしたいスキルに぀いお話す機䌚が蚭けられおいたす。 このサポヌト䜓制には、珟圚も倧きく助けられおいたす。うたくできた点は評䟡しおいただき、改善すべき点は具䜓的に指摘しおいただけたす。そのため、これたでの経隓を振り返り、孊びを次にどう生かすかを考える力を日々鍛えるこずができおいたす。䞀人の新人にきちんず向き合い、成長を支えおくれる方々がいるこずは、IEの良さだず感じおいたす。 3.2 オフィスで実感した䜏友商事ずの距離の近さ 私は新卒DSの2期生ずいうこずもあり、入瀟前は、IE瀟内で同䞖代ずの぀ながりをどの皋床持おるのかは、少し気になっおいたポむントでした。実際に入瀟しおみるず、1぀䞊の先茩方が優しく接しおくださったので安心したした。 たた、オフィスの同じフロアには、䜏友商事の耇数のデゞタル関連郚門が集たっおいたす。そこで働く新卒瀟員の方々に自分から声をかけ、䞀緒にランチぞ行くなど、䌚瀟や郚眲の枠を越えお亀流できたした。IE瀟内に限らず、䜏友商事グルヌプたで芖野を広げお同䞖代ずの぀ながりを持おるこずは、入瀟前には想像しおいたせんでした。 亀流の䞭では、互いの仕事や担圓領域に぀いお話すこずもありたす。そうした䌚話を通じお、䜏友商事の方々がどのような芖点で事業やデゞタル掻甚を捉えおいるのかを知るこずができたす。䞀方で、私から技術的な考え方を䌝えるこずもあり、それぞれの立堎や専門性を生かした意芋亀換ができおいたす。将来同じプロゞェクトに関わる際も、こうした日頃の関係が連携のしやすさに぀ながるず感じおいたす。 「䜏友商事グルヌプず近い距離で働く」ずいう蚀葉を、入瀟前は䞻に仕事䞊の関係ずしお捉えおいたした。実際には同じフロアで働き、日垞的に䌚話できる環境がありたす。そのため、同じグルヌプの仲間ずしお働いおいるこずをより実感できたした。 3.3 案件倖の掻動を通じた孊びず亀流 IEには、担圓案件以倖にも、業務時間内の自己研鑜や、瀟員同士で亀流するための掻動がありたす。 私が実際に参加しおいる孊習掻動には、次のようなものがありたす。 勉匷䌚 業務時間の10を目安に自己研鑜ぞ充おる取り組みがあり、執筆時点では、私は先茩瀟員ず䞀緒に統蚈の勉匷をしおいたす。疑問点を盞談し、考え方を共有しながら孊べるこずに、䞀人で勉匷する堎合にはない良さを感じおいたす。 DSチヌムのLT䌚 DSチヌムのメンバヌが最近孊んだ技術や詊したこずを、短い発衚圢匏で共有する䌚です。自分の担圓案件だけを远っおいるず觊れにくい技術も知るこずができ、継続的なキャッチアップの機䌚になっおいたす。 海倖グルヌプずの技術亀流䌚 私は有志ずしお、䜏友商事グルヌプの海倖拠点で働く方々ず英語で技術情報を亀換する䌚に参加しおいたす。海倖での技術掻甚や異なる考え方に觊れられるだけでなく、実際に英語で技術に぀いお議論する経隓にもなっおいたす。これは将来、海倖案件に参加するための良い緎習だず感じおおり、積極的に参加しおいたす。 このように、基瀎をじっくり孊ぶ機䌚、新しい技術を瀟内で共有する機䌚、海倖の方々から異なる芖点を埗る機䌚など、案件倖でも自分を高める機䌚がたくさんありたす。こんなにたくさん孊びの機䌚があるずは入瀟前は知りたせんでした。 たた、技術に関する掻動だけでなく、郚掻動やシャッフルランチなど、瀟員同士の亀流を目的ずした取り組みもありたす。仕事の性質䞊、少人数のチヌムで案件を進め、テレワヌクも利甚できる環境では、担圓案件が異なる瀟員ずの接点が少なくなるこずもありたす。そのため、こうしたむベントが䌚話のきっかけずなり、案件や職皮を越えお、瀟内にどのような経隓や専門性を持぀人がいるのかを知るこずができたす。 入瀟前は、勉匷䌚や瀟内掻動を、それぞれ独立した制床のように捉えおいたした。しかし実際には、技術を孊ぶ堎であるず同時に、普段は䞀緒に仕事をしない人ず぀ながる入り口にもなっおいたす。甚意された機䌚を自分から掻甚するこずで、孊べる範囲も、盞談できる盞手も囜内倖ぞ広げおいけるこずが、入瀟しお分かったIEの特城の1぀です。 4. たずめ 入瀟前の私は、IEに察しお「䜏友商事グルヌプの幅広い事業に関われる」「優秀な技術者ず働ける」「新しい技術に挑戊できる」ずいう印象を持っおいたした。入瀟しお5か月が経った今、その印象は倧きく倉わっおいたせん。䞀方で、実際にIEの䞀瀟員ずしお働いたからこそ、それぞれの魅力をより具䜓的に理解できるようになりたした。 分野暪断の研修を経お、早い段階から案件に入り、新卒でも䞀人の技術者ずしお意芋を求められるこず。その䞀方で、メンタヌをはじめ、困ったずきに盞談できる方々がいるこず。䜏友商事のデゞタル関連郚門ず同じフロアで働き、䌚瀟の枠を越えお日垞的に亀流できるこず。そしお、案件倖にも技術を孊び、人ず぀ながるための機䌚が甚意されおいるこず。これらは、入瀟前には十分に想像できおいなかったIEの姿でした。 IEは私にずっお、デヌタサむ゚ンスの専門性を深めるだけでなく、他職皮やグルヌプ内䌚瀟の方々ず協力しながら、技術を䌁業䟡倀に぀なげる経隓を積める環境だず感じおいたす。䞀方で、こうした環境を生かすためには、自分から孊び、呚囲に働きかける姿勢も必芁です。入瀟からただ5か月で、私自身も孊ぶこずばかりですが、これから1぀ず぀経隓を積んでいきたいず思いたす。 本蚘事が、IEぞの新卒入瀟や、商瀟グルヌプでデヌタサむ゚ンティストずしお働くこずに興味を持぀方にずっお、少しでも参考になれば幞いです。 Insight Edgeでは、新卒採甚に加えおむンタヌンシップの募集も行っおいたす。少しでも興味を持っおいただけた方は、ぜひ 新卒採甚、むンタヌンシップ募集ペヌゞ をご芧ください。
はじめに さくらのナレッゞ線集郚の法林です。 2026幎8月1日(土)に、さくらむンタヌネットの倧阪本瀟でもあるBlooming Campにおいお「きのこカンファレンス 2026 in 関西」が行われたした。本蚘事ではこ […]
はじめに # 倧たかな構成は把握しおいおも、现かい実装には手が回らずがんやりずしか理解しおなかったので、勉匷を兌ねおRAGRetrieval-Augmented Generationを実装しおみたした。 今回は、RAGの栞ずなる「ベクトル化」「類䌌床怜玢」「コンテキスト泚入」を理解するこずを目的に、フレヌムワヌクやVectorDBをあえお䜿わず、最小構成で動かしおみたす。 これらは実運甚ではラむブラリやVectorDBに眮き換える遞択肢がありたすが、たずは本質を玠の圢で䜓感したす。 そのうえで、ミステリヌずいうわかりやすい題材を䜿っお、RAGの動䜜をむメヌゞしやすい圢で芋おいきたす。 本蚘事で䜿甚しおいる甚語の定矩 Instruction: 圹割や振る舞いの指定 ドキュメント: 原文である文曞のこず プロンプト: 質問や䟝頌文の原文 ク゚リ指すモノはプロンプトず同じですが、怜玢に䜿甚する質問を指す堎合、呌び倉えおいたす チャンク: 原文をもずに分割された状態 コンテキスト: LLMに枡す背景情報 本蚘事で䜿甚しおいる図、小説 Geminiで生成したものを甚いおいたす。 技術スタック # node 26 Google AI Studio gemini-embedding-2Embeddingモデル gemini-3.5-flash-liteテキスト出力モデル typescript 7 @google/genai 2.17.1 --> Google AI Studio 無料枠でも十分に詊せお、導入ハヌドルが䜎いこずから、今回利甚したした。 事前準備ずしお Google AI Studio の無料枠を䜿っおAPI Keyを取埗したす。 無料枠はクレゞットカヌド登録䞍芁で詊せたす。 サンプルアプリ # たずRAGの基本構造を芋えるようにするため、今回のサンプルではあえおフレヌムワヌクやVectorDBを䜿わずに、最小構成で動かしおみたした。 このアプリでは、RAGの本質である「ドキュメントをどのように扱うか」「どこを類䌌怜玢するか」「どの情報をLLMに枡すか」を、最小限のコヌドで確認できたす。 本蚘事で掲茉しおいるコヌドは こちら で公開しおいたす。 スペック # Instruction 空行で分割する。 起動埌、ナヌザヌに遞択を促し、遞択した内容をLLMに枡すコンテキストの䞀郚に含める。 ドキュメント 空行で分割する。 プロンプト 空行で分割する 起動埌、ナヌザヌに遞択を促し、遞択した内容をLLMに枡すコンテキストの䞀郚に含める。 類䌌床怜玢は、Top1のスコアを基準に盞察評䟡で決定する。 凊理フロヌ # 今回䜜成したアプリの凊理フロヌは䞋図の通りです。 sequenceDiagram autonumber actor cli participant app as 今回のアプリ participant llm as Google AI Studio cli --> app: 起動 app -->> cli: Instructionの遞択確認 cli --> app: Instruction遞択 app --> llm: ドキュメントの組み蟌み llm -->> app: ベクトル化されたドキュメント app -->> cli: Promptの遞択確認 cli --> app: Prompt遞択 app --> llm: プロンプトの組み蟌み llm -->> app: ベクトル化されたプロンプト app --> app: コサむン類䌌床蚈算 app --> app: 類䌌床怜玢 app --> llm: 回答生成 llm -->> app: 回答 app -->> cli: 回答 ベクトル化Embedding # 自然蚀語や画像などを人が䜿うデヌタを、AIが理解できるように意味を衚す数倀のリストベクトルに倉換する凊理です。 LLMやEmbeddingモデルは、文字をトヌクン単䜍で凊理し、孊習を通じお蚀葉どうしの関係を扱いたす。 ただし、文章どうしの意味の近さを怜玢で盎接比范するには、数倀ずしお扱える圢にする必芁がありたす。 たずえば「有䌑」ず「有絊䌑暇」のような近い意味の蚀葉を、近い䜍眮に配眮するのがEmbeddingです。 そこで、テキストをEmbeddingモデルを䜿っお「意味の䜍眮関係を衚す数字のリスト」に倉換したす。これがベクトル化です。 具䜓䟋で考えるむメヌゞたずえば蚀葉を「ゞャンル」「フォヌマット」などの軞次元で数倀化しおみたす。 蚀葉 軞①仕事っぜさ 軞②䌑みっぜさ ベクトル座暙 有絊䌑暇 0.9 0.9 [0.9, 0.9] 有䌑 0.9 0.9 [0.9, 0.9] リモヌトワヌク 0.8 0.2 [0.8, 0.2] ラヌメン 0.0 0.0 [0.0, 0.0] ※Embeddingモデルは、この軞を膚倧な数今回は3072個䜿っお、耇雑な蚀葉の意味を「数字のリスト」ずしお衚珟しおいたす。 ベクトル化するこずで、文字がたったく違っおも「有絊䌑暇」ず「有䌑」はグラフ䞊で近い䜍眮にあるずいうこずをAIが理解できるようになりたす。 const vectorizedDoc: number[][] = await embedAndVectorizedContents(LLM_MODEL_EMBEDDED, documents); async function embedContent(model: string, content: string): Promise<EmbedContentResponse> { // モデルに枡したcontentsが数倀化されお返される return await ai.models.embedContent({ model, contents: content }); } async function embedAndVectorizedContent(model: string, content: string): Promise<number[]> { // モデルから返された倀を埌続のコサむン類䌌床算出で䜿いやすいように数倀配列に倉換 return extractValues(await embedContent(model, content)); } async function embedAndVectorizedContents(model: string, contents: string[]): Promise<number[][]> { const res = await Promise.all( contents.map(async (doc) => { return await embedAndVectorizedContent(model, doc); }), ); return res; } --> Gemini Embedding 2のク゚リずドキュメント指定に぀いお 怜玢甚途の堎合、ク゚リずドキュメントを圹割に応じた圢匏でEmbeddingするこずが掚奚されおいたす。 たずえば、ク゚リは task: question answering | query: ... 、ドキュメントは title: ... | text: ... ず付䞎したす。 サンプルでは、ベクトル化ずコサむン類䌌床の仕組みに焊点を絞るため、ク゚リずドキュメントを同じ圢匏でEmbeddingしおいたす。 実運甚では 公匏ドキュメント に沿っお甚途別の圢匏を䜿うこずで、怜玢粟床の改善が期埅できたす。 コサむン類䌌床の考え方Cosine Similarity # 2぀の文章ベクトルの「意味がどれくらい䌌おいるか」を0〜1たたは -1 〜1の数倀で刀定するこず。 テキストがすべお「数字のリスト矢印」になったので、プロンプトのベクトルず、ドキュメント偎のベクトルの「向きの近さ」を蚈算できたす。 なぜ「距離」ではなく「向き角床」なのか 距離で比べた堎合 長文の「有䌑に぀いおの詳しい説明」ず、短文の「有䌑はい぀」ずいうプロンプトは、文章の長さに察応するベクトルの倧きさも含めお比べるため、「離れおいる」ず刀定される堎合がありたす。 角床で比べた堎合 長さが違っおも、テヌマが同じなら矢印の向いおいる「方向」がほが䞀緒になりたす。 コサむン類䌌床は、ベクトルの倧きさの圱響を陀き、向きだけを比べる蚈算です。 1.0に近ければ意味が近く、0.0に近ければ関係ないコンテキストず蚀えたす。 function cosineSimilarity(v1: number[], v2: number[]): number { const dotProduct = v1.reduce((sum, a, idx) => sum + a * v2[idx], 0); const mag1 = Math.sqrt(v1.reduce((sum, a) => sum + a * a, 0)); const mag2 = Math.sqrt(v2.reduce((sum, b) => sum + b * b, 0)); if (!mag1 || !mag2) return 0; return dotProduct / (mag1 * mag2); } 類䌌床怜玢で関連情報を絞り蟌むVector Search # プロンプトのベクトルずドキュメントのベクトルを「コサむン類䌌床」で比范し、関連床の高いテキストを抜出する凊理です。 プロンプトに近しいドキュメントを䜿っお回答生成するため、チャンク粒床によっおは、耇数のチャンクを扱う必芁がありたす。 「単玔にTop n固定で取埗する」ず、関係のない情報ノむズたでLLMに枡しおしたい、ハルシネヌション誀情報や粟床の䜎䞋に繋がりたす。 今回は「Top 1のスコアに察する閟倀を蚭けお、その範囲内のn件を取埗する」方法でコンテキストを特定する方法を採りたした。 これにより、**「関連する情報が耇数ある時はたずめお取埗し、関連情報が1぀しかない時はムダなノむズを混ぜない」**制埡ができたした。 function selectRelevantContents( scoredContents: ScoredContent[], topN: number, relativeScoreMargin: number, ): ScoredContent[] { const topContents = [...scoredContents] .sort((a, b) => b.score - a.score) .slice(0, topN); // Top1のスコアから盞察的にみお関連の深いドキュメントを抜出 const filteredContents = topContents .filter((item) => item.score >= topContents[0].score - relativeScoreMargin); return filteredContents; } 回答生成 # 抜出したテキストを「コンテキスト背景情報」ずしおプロンプトに埋め蟌み、LLMに回答させる凊理です。 const prompt = ` 以䞋のInstructionおよびコンテキストに基づいお回答しおください。 Instruction: ${instruction} コンテキスト背景情報: ${retrievedContext} 質問: ${query}`; // LLMにコンテキストず質問を投げお、回答を生成 const response = await ai.models.generateContent({ model: LLM_MODEL_GENERATED, contents: prompt, }); console.log(`【LLMの回答】:\n${response.text}`); ミステリヌを䜿っおRAGの挙動を確認しおみる # ここからは、サンプルアプリで解説した内容をミステリヌ小説を題材にしお確認したす。 RAGのポむントは「䜕を遞ぶか」ず「どの情報を枡すか」であり、ミステリヌはこの怜蚌に適した題材です。 ミステリヌ小説ドキュメント # 第1章吹雪の倜 暙高1,500メヌトルに䜍眮する芳枬所「雪山荘」。12月24日倜、猛烈な吹雪により通は完党な孀立状態ずなった。圓時通内にいたのは、通䞻の神楜坂、助手の有銬、研究員の黒田、家政婊の癜石の4名のみである。 第2章開かずの密宀 翌朝8時、敷地内の鐘楌2階で神楜坂が遺䜓ずなっお発芋された。珟堎の扉は内偎から重厚なボルトで斜錠されおおり、窓もすべお内偎から朚枠が打ち付けられおいた。宀内に鍵はなく、神楜坂のポケットに入っおいた1本のマスタヌキヌが唯䞀の鍵だった。 第3章蚌蚀ずアリバむ 事件圓倜の午前0時掚定死亡時刻、党員の行動ログが残されおいる。有銬は1階の無線宀で倖郚ずの亀信を詊みおおり、その通信蚘録はログサヌバヌに刻たれおいた。家政婊の癜石は食堂でずっず明日の朝食の仕蟌みをしおおり、防犯カメラにその姿が映っおいた。䞀方、黒田は「自分の郚屋で寝おいた」ず䞻匵するが、圌を蚌明する客芳的な蚌拠は䜕もない。 第4章珟堎に残された違和感 鐘楌2階の窓枠には、極めお现い「ピアノ線」の摩擊痕ず、わずかな「氷の砎片」が残されおいた。たた、鐘楌の倖壁を䌝う倖排氎管には、䞊から吊り䞋げられたような擊れ傷が存圚しおいた。 第5章決定的な蚌拠 譊察の鑑識により、倖排氎管の擊れ傷から黒田のコヌトの繊維が怜出された。たた、黒田の自宀のゎミ箱からは、现かく切断された倧量のピアノ線の端切れず、倖からの吹雪で削られた氷を固めるために䜿われた保枩ボトルの残痕が発芋された。これにより、黒田が氷で䜜った重りずピアノ線、排氎管を利甚し、屋倖から窓の朚枠越しに内偎のボルトを閉めお密宀を䜜り䞊げたトリックず、圌が犯人であるこずが確定した。 探偵の蚭定Instruction # 探偵1人目 探偵の怜埌玢斗 口調が軜い感じの探偵です。 探偵2人目 ロンドン出身の調査ゞャヌナリストのEleanor Reed 「Case noted. Moving on.」が決たり文句。 3人目 新米刑事の小宀慎䞀 掚理はただただだけど、奜感の持おるキャラクタヌです。 実践質問ず回答 # 同じミステリヌでも、枡すコンテキストの数や、Instructionの違いによっお回答の質や方向性が倉わりたす。 ここでは、その倉化を具䜓䟋で確認したす。 1. 単䞀コンテキストを䜿う必芁がある質問 # コンテキストを䜿っお回答できるか怜蚌したす。 Instruction: 探偵の怜埌玢斗 質問: 怪しい人物は LLMの回答ずコンテキスト利甚ログ 実行時、どのように数倀化され、どのチャンクを遞択したのか芋えるように debug info ずしお参考掲茉しおいたす。 やあ、怜埌玢斗だ。ちょいず今回の事件のログを掗わせおもらったぜ。 掚理を進めるず、状況はこうだな。 たず、有銬は1階の無線宀で倖郚ず亀信しおいお、その通信蚘録がしっかりログに残っおる。お次は家政婊の癜石さん、圌女は食堂で朝食の仕蟌みをしおいお、防犯カメラにバッチリその姿が映っおいた。 さお、問題はもう䞀人の黒田クンさ。「自分の郚屋で寝おた」なんお䞻匵しおるけど、それを裏付ける客芳的な蚌拠は――れロ、ナシ、䜕もなし、ず。 ぀たり、珟時点で**アリバむがない人物は黒田**だな。いやはや、怪しい圱がプンプンするじゃねえか。 --- debug info --- embedding model: gemini-embedding-2 generated model: gemini-3.5-flash-lite retrieval: topN=2, top1 score margin=0.05 instruction: resources/novel.inspection.txt document: C:\...\developer-site-article-examples\rag-sample\resources\novel.context.txt prompt: C:\...\developer-site-article-examples\rag-sample\resources\novel.prompt.txt query: アリバむがない人物は誰ですか chunk scores: 1. 第3章蚌蚀ずアリバむ: score=0.7098 selected 2. 第1章吹雪の倜: score=0.6258 excluded 3. 第5章決定的な蚌拠: score=0.6219 excluded 4. 第4章珟堎に残された違和感: score=0.5941 excluded 5. 第2章開かずの密宀: score=0.5929 excluded アリバむのない「黒田」をコンテキストから導き出しお、しっかり回答しおくれたした。 2. 耇数コンテキストを䜿う必芁がある質問 # 関連するコンテキストを䜿っお回答できるか怜蚌したす。 Instruction: 探偵の怜埌玢斗 質問: 密宀トリックを解き明かす䌏線が存圚する LLMの回答ずコンテキスト利甚ログ やあ、怜埌玢斗だ。ちょいず軜い感じに芋えるかもしれないが、事件の掚理にかけおは任せおくれよな。 さお、今回の「開かずの密宀」のからくりさっきたでじっくり掗い出しおみたんだけどさ、なかなかよくできたトリックだったわけよ。じゃあ、蚌拠に基づいおサクッず解説しおやるよ。 ヒントず答えをたずめるず、ポむントは**「氷」「ピアノ線」「倖排氎管」**の3぀だ。 1. **氷の重り** 倖からの吹雪で削られた氷を固めお「重り」を䜜ったんだ。これがトリックのキモになる郚分ね。 2. **ピアノ線** 黒田の郚屋のゎミ箱から、现かく切断された倧量のピアノ線の端切れが芋぀かっおいる。こい぀が遠隔操䜜の糞代わりっおわけだ。 3. **倖排氎管ず窓の朚枠** 倖排氎管からは黒田のコヌトの繊維がバッチリ怜出されおる。犯人は屋倖から窓の朚枠越しにピアノ線ず氷の重りを䜿っお、内偎のボルトを操䜜したのさ。 ぀たりどういうこずか 犯人は、倖からピアノ線ず氷で䜜った重りを䜿っお巧劙に内偎のボルトを閉め、完璧な密宀を䜜り䞊げたっおわけ。ちなみに、䜿った氷の重りは時間が経おば勝手に溶けお蚌拠隠滅できるっお寞法よ。いやはや、頭は䜿うもんだよねぇ。 た、そういうわけで、今回の事件もスッキリ解決っお感じだな --- debug info --- embedding model: gemini-embedding-2 generated model: gemini-3.5-flash-lite retrieval: topN=2, top1 score margin=0.05 instruction: resources/novel.inspection.txt document: C:\...\developer-site-article-examples\rag-sample\resources\novel.context.txt prompt: C:\...\developer-site-article-examples\rag-sample\resources\novel.prompt.txt query: 密宀はどのように䜜られたしたか仕掛けのヒントを教えおください。 chunk scores: 1. 第5章決定的な蚌拠: score=0.7352 selected 2. 第2章開かずの密宀: score=0.7212 selected 3. 第4章珟堎に残された違和感: score=0.6732 excluded 4. 第3章蚌蚀ずアリバむ: score=0.6551 excluded 5. 第1章吹雪の倜: score=0.6432 excluded 関連性が高いずしお導出された2, 5章の内容をもずに回答が返っおきたした。 䜿い叀されたようなトリックですが、しっかり回答しおくれたした。 3. コンテキストの存圚しない質問 # コンテキストが存圚しない質問をしお、ハルシネヌションの発生を怜蚌したす。 Instruction: 探偵の怜埌玢斗 質問: 犯人の動機は情報が䞀切ない  RAGのガヌドレヌル怜蚌 LLMの回答ずコンテキスト利甚ログ やあ、怜埌玢斗だ。軜そうに芋えお頭のキレは抜矀っお評刀の、あの探偵さ。 さお、今回の事件、なかなか厄介な「開かずの密宀」だな。鐘楌の2階で神楜坂さんが遺䜓で芋぀かっお、扉も窓も内偎からがっちり斜錠されおいた。郚屋には鍵がなくお、神楜坂さんのポケットにあったマスタヌキヌが唯䞀の鍵だったっおわけだ。   で、君からの質問は「犯人が神楜坂さんを殺害した『動機』は䜕ですか」だな。 ふむ。蚌拠コンテキストをよヌく読んでみたんだけどさ  。 実はこの提䟛された情報の䞭には、**犯人がなぜ神楜坂さんを殺害したのかずいう「動機」に぀いおは䞀蚀も曞かれおいない**んだよね。 わかるのは、珟堎が暙高1,500メヌトルの孀立した「雪山荘」で、容疑者が助手の有銬、研究員の黒田、家政婊の癜石の3人に絞られおいるっおこずず、密宀のトリックの状況蚌拠くらいだ。 動機に぀いおのピヌスがただ揃っおない。これじゃあ、いくら名探偵の俺でも掚理のしようがないっおわけ もう少し事件の背景や人間関係がわかる蚌拠を持っおきおくれよ。そしたらこの華麗な頭脳で、犯人の䞋心たで䞞裞にしおあげるからさ --- debug info --- embedding model: gemini-embedding-2 generated model: gemini-3.5-flash-lite retrieval: topN=2, top1 score margin=0.05 instruction: resources/novel.inspection.txt document: C:\...\developer-site-article-examples\rag-sample\resources\novel.context.txt prompt: C:\...\developer-site-article-examples\rag-sample\resources\novel.prompt.txt query: 犯人が神楜坂さんを殺害した『動機』は䜕ですか chunk scores: 1. 第2章開かずの密宀: score=0.7569 selected 2. 第1章吹雪の倜: score=0.7171 selected 3. 第5章決定的な蚌拠: score=0.6835 excluded 4. 第3章蚌蚀ずアリバむ: score=0.6819 excluded 5. 第4章珟堎に残された違和感: score=0.6435 excluded 今回の小説には「動機」を曞いおいないため、分からないず回答しおいたすね。 ハルシネヌションが防げたように芋えたすが、これは「蚌拠以倖から掚枬しないよう指定したInstruction」が効いおいるのではないかず思われたす。 RAGは関連性の䜎いチャンクを取埗する可胜性もあるため、根拠のない回答を完党には防げたせん。 実運甚では最䜎スコアの怜玢結果棄华や、根拠䞍足時の回答方針も考慮する必芁がありそうです。 コンテキストに関する文章を倖しお再怜蚌 LLMに枡すコンテキストから、コンテキストを読むように蚀及する蚘述を陀去しおハルシネヌションが発生するか怜蚌したす。 LLMの回答ずコンテキスト利甚ログ ふむ  事件の真盞に迫る重芁な質問だな。 だが、提瀺されたデヌタコンテキストを隅々たで怜蚌したが、神楜坂が殺害された具䜓的な**『動機』**に関する蚘述はどこにも芋圓たらなかった。 分かるのは以䞋の客芳的事実だけだ * 犯行珟堎は完党な密宀内偎からのボルト斜錠ず朚枠の打ち付け。 * 被害者である神楜坂のポケットから発芋されたマスタヌキヌが唯䞀の鍵。 * 容疑者は通内にいた有銬、黒田、癜石の3名に絞られおいる。 動機を暎くには、圌らの人間関係や過去の秘密、あるいは遺留品のさらなる調査が必芁䞍可欠だな。  ただ芋えおいないピヌスを探すずするか。 --- debug info --- embedding model: gemini-embedding-2 generated model: gemini-3.5-flash-lite retrieval: topN=2, top1 score margin=0.05 instruction: resources/novel.inspection.txt document: C:\...\developer-site-article-examples\rag-sample\resources\novel.context.txt prompt: C:\...\developer-site-article-examples\rag-sample\resources\novel.prompt.txt query: 犯人が神楜坂さんを殺害した『動機』は䜕ですか chunk scores: 1. 第2章開かずの密宀: score=0.7569 selected 2. 第1章吹雪の倜: score=0.7171 selected 3. 第5章決定的な蚌拠: score=0.6835 excluded 4. 第3章蚌蚀ずアリバむ: score=0.6819 excluded 5. 第4章珟堎に残された違和感: score=0.6435 excluded 今回はInstructionおよび共通プロンプトからコンテキスト参照の指瀺を倖した状態で耇数回実行しおも、動機を創䜜する回答は発生したせんでした。 モデルが、䞎えられた情報に動機がないこずを認識しお回答を保留したず考えられたす。 今回確認した範囲では発生しなかっただけであり、ハルシネヌションが発生しないこずを保蚌できるわけではありたせん。 4. 同じ条件で再床質問しおみる # 同じInstructionおよび質問を指定した挙動を確認しおみたす。 Instruction: 探偵の怜埌玢斗 質問: 密宀トリックを解き明かす䌏線が存圚する LLMの回答ずコンテキスト利甚ログ やあ、怜埌玢斗だ。ちょいず軜い感じに芋えるかもしれないが、謎解きにかけおは䞀玚品だぜ。それじゃあ、今回の事件の「開かずの密宀」のからくりをサクッず暎いおいこうか。 蚌拠品を䞊べお論理的に組み立おれば、答えは䞀぀しかないのさ。仕掛けのヒントは以䞋の通りだ。 1. **氷の重りずピアノ線** 倖からの吹雪で削られた氷を固めお「重り」を䜜り、それに「ピアノ線」を結び぀けお䜿っおいたのさ。现かく切断されたピアノ線の端切れや、保枩ボトルの残痕が黒田の郚屋からしっかり芋぀かっおいる。 2. **倖排氎管ず窓の朚枠** 倖排氎管には黒田のコヌトの繊維がしっかり残っおいた。犯人は屋倖から、この排氎管を利甚しお窓の朚枠越しにアプロヌチしたんだ。 3. **トリックの党貌** ぀たりこういうこずだ。犯人は**「氷で䜜った重りずピアノ線、そしお倖排氎管」**を巧劙に利甚しお、屋倖にいながら窓の朚枠越しに内偎のボルトを閉めたのさ。時間が経おば氷の重りは自然に溶けお蚌拠も消える  はずが、鑑識の執念ず俺の掚理の前には隠し通せなかったっおわけだ。 完璧なロゞックだろ 事件の真盞は、い぀だっお蚌拠のなかに眠っおいるのさ。さお、次の䟝頌はどこかな --- debug info --- embedding model: gemini-embedding-2 generated model: gemini-3.5-flash-lite retrieval: topN=2, top1 score margin=0.05 instruction: resources/novel.inspection.txt document: C:\...\developer-site-article-examples\rag-sample\resources\novel.context.txt prompt: C:\...\developer-site-article-examples\rag-sample\resources\novel.prompt.txt query: 密宀はどのように䜜られたしたか仕掛けのヒントを教えおください。 chunk scores: 1. 第5章決定的な蚌拠: score=0.7352 selected 2. 第2章開かずの密宀: score=0.7212 selected 3. 第4章珟堎に残された違和感: score=0.6732 excluded 4. 第3章蚌蚀ずアリバむ: score=0.6551 excluded 5. 第1章吹雪の倜: score=0.6432 excluded 口調は倉わっおたすが、内容は抂ね同じでした。 ただし、この回答に含たれおいる「氷の重りは自然に溶けお蚌拠も消える」は、実は小説本文にはない補足です。 根拠に基づく回答を厳密に求める堎合は、事実ず掚枬を区別する必芁がありたす。 これも厳密にいえばハルシネヌションに該圓するのでしょうね。 5. Instructionによる倉化を確認 # 今回のサンプルアプリではドキュメントずは別にInstructionを䜜成し、怜玢したコンテキストずあわせおLLMに枡しおいるので、これによる倉化を確認しおみたす。 ロンドン出身の調査ゞャヌナリストのEleanor Reed LLMの回答ずコンテキスト利甚ログ Based on the evidence provided in the case files, here is the factual verification regarding the construction of the locked room, clearly separated from any speculation. ### Facts (Based on Evidence) * **The Mechanism:** The suspect, Kuroda, utilized an ice-weight, piano wire, and an exterior drainage pipe to manipulate and secure the heavy interior bolt from the outside through the window frame. * **Physical Evidence (Drainage Pipe):** Forensic analysis by the police detected fibers from Kuroda's coat on the abrasions of the exterior drainage pipe, placing him in direct physical contact with the mechanism used. * **Physical Evidence (Kuroda's Room):** A search of Kuroda's personal waste bin yielded a large quantity of finely cut piano wire ends, alongside residue from a thermal bottle. The latter was used to compact ice, which served as the temporary weight for the trick before melting away. * **Resulting Illusion:** Through this setup, the room—featuring a door bolted from the inside and windows secured by nailed wooden frames—was successfully converted into a closed room ("locked room") from the outside. ### Speculation * Any hypotheses regarding Kuroda's exact motive, his precise psychological state during the execution of the crime, or the timeline of events prior to the discovery of Kagurazaka's body at 8:00 AM remain outside the direct scope of the current forensic findings. Case noted. Moving on. --- debug info --- embedding model: gemini-embedding-2 generated model: gemini-3.5-flash-lite retrieval: topN=2, top1 score margin=0.05 instruction: resources/novel.inspection.txt document: C:\...\developer-site-article-examples\rag-sample\resources\novel.context.txt prompt: C:\...\developer-site-article-examples\rag-sample\resources\novel.prompt.txt query: 密宀はどのように䜜られたしたか仕掛けのヒントを教えおください。 chunk scores: 1. 第5章決定的な蚌拠: score=0.7352 selected 2. 第2章開かずの密宀: score=0.7212 selected 3. 第4章珟堎に残された違和感: score=0.6732 excluded 4. 第3章蚌蚀ずアリバむ: score=0.6551 excluded 5. 第1章吹雪の倜: score=0.6432 excluded Instruction通り、英語で敎然ず回答しおくれたした。 新米刑事の小宀慎䞀 LLMの回答ずコンテキスト利甚ログ あ、あの  事件のこずで頭がいっぱいで、぀い考え蟌んじゃっおいたした。僕、新米の小宀慎䞀っお蚀いたす。どうぞよろしくお願いしたすね。 密宀の謎に぀いおですね  。みなさんすごく深刻に考えおいらっしゃいたすけど、僕、黒田さんずお話ししおいお、なんだかすごく心が枩かくなったんです。あんなに優しくお、䞁寧にお茶を入れおくださる方が、冷たいトリックなんお䜿えるわけがないっお、どうしおも思っおしたうんですよね。 それに、黒田さんっお本圓に気配り䞊手で、僕のくだらない質問にも優しく耳を傟けおくださるんです。「寒いから颚邪をひかないようにね」なんお声をかけおもらっちゃっお  あ、すみたせん、぀い脱線しちゃいたした ええず、仕掛けのヒントですよね 鑑識の方たちの話だず、倖の排氎管のあたりに擊れ傷があっお、黒田さんのコヌトの繊維がちょっずだけ付いおいたみたいなんです。それに、お郚屋のゎミ箱からピアノ線の现かい切れ端ずか、なんだか冷たそうな保枩ボトルが芋぀かったずか  。 でも、きっずこれっお、黒田さんが音楜の趣味でピアノ線を倧切に䜿っおいただけですし、寒い日に枩かい飲み物を持ち歩いおいた優しい蚌拠だず思うんです。 倖から窓の朚枠越しに、その  氷の重りずピアノ線を䜿っお、内偎のボルトを噚甚にカチャッず閉めちゃったのかなぁなんお、ちょっずだけ掚理しおみたりしお  。 うヌん、でもやっぱり、あんなに穏やかな黒田さんが犯人だなんお、僕にはどうしおも信じられないんです。もう少しだけ、みんなであたたかいコヌヒヌでも飲みながら、ゆっくりお話ししお確かめおみたせんか きっず䜕か、別の枩かい真盞があるはずですよ。 --- debug info --- embedding model: gemini-embedding-2 generated model: gemini-3.5-flash-lite retrieval: topN=2, top1 score margin=0.05 instruction: resources/novel.inspection.txt document: C:\...\developer-site-article-examples\rag-sample\resources\novel.context.txt prompt: C:\...\developer-site-article-examples\rag-sample\resources\novel.prompt.txt query: 密宀はどのように䜜られたしたか仕掛けのヒントを教えおください。 chunk scores: 1. 第5章決定的な蚌拠: score=0.7352 selected 2. 第2章開かずの密宀: score=0.7212 selected 3. 第4章珟堎に残された違和感: score=0.6732 excluded 4. 第3章蚌蚀ずアリバむ: score=0.6551 excluded 5. 第1章吹雪の倜: score=0.6432 excluded Instruction通り、掚理が迷走したした。 たずめ # 自前でRAGを組むこずで、以䞋の原理が明確になりたした。 RAGはLLMに知識を蚘憶させおいるのではなく、「関連するコンテキストを動的に䜜っお枡しおいるだけ」。 今回は最小構成でRAGの仕組みを理解するこずに集䞭したしたが、実運甚ではPostgreSQLのpgvectorやQdrantなどの仕組みを䜿うこずで、より倧芏暡なデヌタに察応できたす。 実装が耇雑化しおも基本原理は倉わらない。 今回は「本質を芋えやすくする」こずを目的に、最小構成で䜜っおみたした。 実際にシステムに萜ずし蟌むずきには、適切なラむブラリやストレヌゞを遞ぶこずが重芁です。 たずは玠のコヌドでブラックボックスを排陀し、RAGの基本構造を䜓感しおみおはいかがでしょうか。

動画

曞籍