Y Combinator発スタートアップ④「ragas」
Y Combinator Winter 2024 Batchで採択され、第38回Demo Dayで発表を行ったスタートアップを紹介していく
トップ画像はragasのウェブサイトより
※本記事は、添付URLの記事および各社のウェブサイトを参考に作成しました
本記事の概要
第4弾は、Hike Venturesのポートフォリオ企業である「ragas」を紹介(第38回Demo Day参加スタートアップ)
*スタートアップは設立されたばかりで、公開されている情報が限られていますのでご注意ください
**LLMアプリケーションとは何か、について基本的な事項も含めてまとめましたので、ご一読ください
Y Combinator Winter 2024 Batch採択スタートアップ「ragas」
ragasのGithubのリンク
スタートアップ概要
共同創業者
Jithin James:Model Engineering College(インド)のComputer ScienceでBSを取得。ソフトウェア開発のBentoMLにてMachine Learning Engineerの経験を持つ
Shahul ES:Model Engineering College(インド)のComputer ScienceでBSを取得。AI搭載リサーチプラットフォームを開発するAMPLYFIで、Machine Learning Engineerの経験を持つ
所在地:San Francisco, CA
事業・サービス内容:大規模言語モデル(LLM)アプリケーションの評価とテストを行うオープンソースソフトウェアの提供
AWSやMicrosoft、Databricks、Moody’sなどの大手企業がragasのインフラを利用して、月に470万回以上の評価を行っている
事業・サービス・テクノロジー詳細
具体的な機能例は下記
モデル評価とテストのインフラ:LLMアプリケーションが本番環境で安定して動作するように、評価とテストを実施
自動化されたテストデータ生成:品質を確保するために、テストデータポイントを自動的に生成
攻撃テスト:システムの脆弱性を確認するためのテストを行う
オープンソースソフトウェアの提供だけでなく、エンタープライズ向けのサービスも実施している
LLMアプリケーションとは?
現在ではLLMを活用して特定のタスクや目的を実現するソフトウェアやサービスLLMアプリケーション(例:AIチャットボット等々)のようなツールが当たり前のように活用されている
LLMアプリケーションの具体的な活用例は下記の通り
AIチャットボット:
顧客からの問い合わせに対して、自動的に対応するチャットボット
自然な対話を通じて、問題解決や商品情報の提供を実施する
例:「注文のキャンセル方法を教えてください。」という質問に対して、「注文をキャンセルするには、注文番号を入力して、キャンセルボタンを押してください。」と回答
症状チェッカーエージェント:
ユーザーが自分の症状(例えば、「喉の痛み、発熱、咳」など)をアプリに入力
入力された症状を解析し、可能性のある疾患(例えば、風邪、インフルエンザなど)をリストアップし、適切な対処法(自宅でのケア、病院の受診など)を提案
必要に応じて、近隣の医療機関の情報を提供し、診察予約の支援を行う
ragasによるLLMアプリケーションの評価
AIチャットボットモデルを作れたとしても、これらのアプリケーションがどれだけ効果的か、正確か、そしてユーザーにとって有益かきちんと評価されているアプリケーションでなければ、価値が低くなってしまう
ragasは9つの観点からLLMアプリケーションの評価を実施
下記を参考にまとめた
①Faithfulness:与えられたコンテキストに対する生成された答えの事実の一貫性を測定。数値が1に近いほどFaithfulnessが高いと評価される
Faithfulness評価例
ステップ1:生成された回答を個々の文に分割する
ステートメント
発言1:アインシュタインはドイツで生まれた。
発言2:アインシュタインは1879年3月20日に生まれた。ステップ2:生成された各ステートメントについて、それが与えられたコンテキストから推測できるかどうかを検証する
ステートメント 1: はい
ステートメント 2: いいえステップ3:Faithfulnessの計算式に結果を当てはめて測定
②Answer Relevance:評価指標である回答の関連性は、生成された回答が与えられたプロンプトにどれだけ適切であるかを評価。完全な回答や冗長な情報には低いスコアが割り当てられ、高いスコアはより良い関連性を示す
基本的なコンセプトは、答えが質問に正しく対応している場合、答えのみから元の質問を再構築できる可能性が高いということに基づいている
③Context Precision:根拠となる真実の関連項目がすべて上位にランクされているかどうかを評価する指標。数値が1に近いほど精度が高いと評価される
④Context Relevancy:質問とコンテキストの両方に基づいて計算され、検索されたコンテキストの関連性を測定。数値が1に関連性が高いことを示す
理想的には、検索されたコンテキストは、提供されたクエリに対処するための必須情報のみを含むべき
⑤Context Recall:検索されたコンテキストが、Ground truths(AI モデルの出力の学習やテストに使用される実際のデータ)として扱われる注釈付き回答とどの程度一致するかを測定。数値が1に近いほどより良いパフォーマンスを示
理想的なシナリオでは、Ground truthの答えのすべての文は、検索されたコンテキストに帰属するはずとしている
⑥Context entities recall:Ground truthsから想起されるエンティティ(特定の情報や事実を表す個別の項目や概念、つまり、固有名詞や数値データ、年月日等のこと)の割合の尺度を測定
⑦Answer semantic similarity:生成された解答とGround truthsの間の意味的類似性の評価。数値が1に近いほど生成された答えとGround truths間の整合性が高いことを意味する
⑧Answer Correctness:生成された解答の正確さをGround truthsと比較して評価。数値が1に近いほど生成された答えと真実の間の整合性が高いことを示し、より正しいことを意味する
⑨Aspect Critique:あらかじめ定義された側面に基づいて回答が出るように設計されているか評価
LLMに何度もプロンプトを出し、答えに有害なものが含まれていないかどうかを確認する
用語解説
LLM(大規模言語モデル、Large language Models)
膨大なテキストデータを学習して、様々な自然言語処理タスクをこなすAIモデルのこと
LLM例
GPT-4:OpenAIが開発した大規模言語モデルで、数十億のパラメータを持ち、膨大なテキストデータを学習。文章生成、翻訳、要約、質問応答、会話のシミュレーションを行う
BERT:Googleが開発した言語モデルで、双方向性のTransformerを使用して文脈を理解。検索クエリの理解、自然言語の意味解析、テキスト分類を行う
RAG(検索拡張生成、Retrieval-Augmented Generation)
RAGは、情報検索とテキスト生成を組み合わせた技術のこと
ユーザーの質問に対して、回答となる情報を外部のデータベースから探し、その情報をもとにLLMが文章を生成する仕組み
RAGのイメージ:例えば、「風邪の症状と対処法について教えてください」、と質問した場合
①情報検索(Retrieval):インターネット上や専門的な医療データベースから「風邪の症状」と「風邪の対処法」に関する信頼性の高い情報を検索
②テキスト生成(Generation):検索で見つけた情報を基に、ユーザーの質問に対してわかりやすく、自然な文章で回答を生成
参考)ragasの評価:ブログ記事
所感(個人の見解となります)
ragasの画期的な機能の一つとして、構築されたAIチャットボットやその他のAI製品がユーザーからの質問に対して提供する回答の質をスコア化して評価する点が挙げられる。これにより、開発者は自分たちのAI製品のどこに問題があるのか、何を改善・変更すれば良いのかを一元的に把握することができる。また、調整後にも本当に改善されているかどうかをスコアで確認できるため、開発プロセスが効率化される。このプロセスにより、製品の品質向上が迅速に行えるようになる
例えば、ある企業が新しいAIチャットボットを開発したとする。ragasを使用してボットの回答の質を評価すると、特定の質問に対する回答が不十分であることがスコアにより明示される。開発者はこのフィードバックを基に、特定のアルゴリズムを改善したり、トレーニングデータを見直したりすることで、AIチャットボットの性能を向上させることができる
現在、様々な業界で独自のAI製品を開発するスタートアップや企業が増えている。ragasのような開発者サポートツールは、製品開発のスピードや効率をサポートするだけでなく、消費者や顧客が安心してAI製品を使用するために必要不可欠なものとなっていくだろう。AI製品の開発者目線でサポートするツールは、今後も注視していきたい。