この前はPhoenixを使ってRAGの実験管理をしてみました。 とはいうものの、Phoenixに事前定義された機能で評価をしただけなので、今回改めてRAGアプリケーションの精度評価について考えてみようと思います。 RAGの評価周りでよく知られたツールとしてRagasがありますが、今回はこちらを使いながら評価について勉強してみようと思います。 Ragas Ragasで用いる評価指標 基本的な評価指標 Faithfulness Answer relevancy Context recall, Context precision Context Relevancy Context entities recall やってみる 評価 今回使用したnotebook 参考文献 感想 Ragas この記事の本題であるRAGの評価について入っていきたいと思います。 github.com docs.ragas
研究開発部 システム&セキュリティ担当の松倉です。 世間の DMARC 対応を加速させたといっても過言ではない Gmail におけるメール送信者のガイドラインが適用開始されてから 3 ヶ月近くが経ち、NFLabs. に届くメールでも DMARC ポリシーが設定されているドメインが多くなっています。 しかしながら、そのほとんどはポリシーが none であり、DMARC レポートを通じて影響範囲を見極めている、という企業がまだ多そうです。 受信側から見ると、ポリシーが quarantine または reject であればセキュリティ観点では安心感がある一方、正規のメールが検疫や破棄となる場合もあり悩まされることがあります。 DMARC 認証の失敗原因となりがちなのはメーリングリスト等のメール転送で、NFLabs. でもこれにより正規のメールが DMARC failとなって検疫される、という事例
Write your scripts in a modern type-safe and runtime-safe programming language that handles many bugs and mistakes during compilation process.
はじめに Presigned URL(*) などで、Amazon S3 へのアップロード処理を実装していると、大きなサイズのファイルをアップロードしようとしたときに、以下のような課題に直面することがあります。 一回のPUT リクエストでアップロードできるサイズの上限が 5GB まで 単一の HTTP リクエストでアップロードするため、大きなサイズをアップロードしようとしたときに問題が起きる。例えば、アップロードの処理の途中で失敗したとき、最初からやり直しになる。 このようなときに活用したいのが、マルチパートアップロードです。マルチパートアップロードとは、その名の通り、アップロード対象のオブジェクトを小分けにしてアップロードする方法です。 AWS の SDK には、マルチパートアップロードが簡単に行えるような API が用意されているものの、多くは、S3 にアップロードを行うことができる I
シンプルフォーム株式会社でインフラエンジニアをしている守屋です。 本記事では Aurora MySQL の OOM(メモリ不足)エラーについて、原因となるクエリを特定するために役立つ Tips を弊社での実例を交えてご紹介します。 発端 突如 Slack に鳴り響く不吉な通知。 「パターン青!障害です!!」 どうやら本番環境の Aurora クラスターがフェイルオーバーしてアプリケーションが DB コネクションエラーを引き起こした模様です。幸いインスタンスは冗長化していて Aurora のフェイルオーバーは高速であるため、ユーザー目線では瞬断が発生した程度の比較的影響が小さめな障害に留まりました。しかしインフラエンジニアとしては捨ておけない状況です!早速原因の調査を始めました。 フェイルオーバーの原因 結論から言うとメモリ使用量がスパイクして OOM エラーが発生したことが原因でした。根拠
レコメンドシステムの一種に「協調フィルタリング」が挙げられますが、 ・協調フィルタリングがどのようなものなのかわからない…。 ・協調フィルタリングを実装する方法が知りたい…。 と考える方は多いのではないでしょうか。そこでこの記事では、 ・協調フィルタリングを理解して実装するための基礎知識 ・Pythonで協調フィルタリングを実装する方法 についてわかりやすく解説します。 協調フィルタリングとは:レコメンドシステムの1つ ECサイトなどでユーザーに対しておすすめの商品などを紹介する「レコメンデーション」を実現するものが「レコメンドシステム(推奨システム)」です。協調フィルタリングはこのレコメンドシステムの一種であり、有効な販促手段として注目されています。 協調フィルタリングを用いることで、ユーザーに対して新しい商品との出会いや、潜在的に欲しいと思っている商品との出会いを提供でき、ユーザーの購
既存GoプロジェクトにOpenTelemetryを計装する機会がありました。eBPFによる自動計装ではなく、手動計装を選んだ理由を説明します。 GoアプリケーションへのOpenTelemetry計装手段 Goにおいては、OpenTelemetryの自動計装が公式で用意されていません。公式サイトにAutomaticの章がないことからわかります。おそらく、ランタイムの制約で実行時にアプリケーションの挙動を変えることが難しいのでしょう。 トレースに十分なスパンを含めるために、現状では以下の2つの計装手段があります。既存のGoアプリケーションに導入する手間や影響範囲をイメージいただくために、概要に絞って解説します。 手動計装 eBPFによる自動計装(Work In Progres) 1. 手動計装 まず、OpenTelemetryのSDKをインストールし、セットアップをします。 func main
こんにちは。SUZURI事業部の@kromiiiと申します。 私のメインの業務はWebアプリケーションの開発ですが、大学院時代のスキルを活かして並行してデータ分析業務も行っています。 データ分析業務ではデータベースのクエリを書くことが多いのですが、私自身SUZURI事業部に配属されたばかりで、テーブルの名前やリレーションを覚えるのが大変でした。そこでクエリの設計を自動化するツールをSlackに導入しました。 その名も tbls-ask bot です。どのようなものか先に見てみましょう。 ユーザーはSlackでメンションする形で、どのようなクエリを実行したいのか自然言語で入力します。 メンションされるとSlack botが起動し、どのDBスキーマを利用するかを尋ねます。 ユーザーがDBスキーマを選択すると、自然言語からSQLクエリを生成し、Slackに返答します。 今回はパブリックに公開する
import { ChangeEvent, FormEvent } from "react"; export default function Form() { const showError = (message: string) => (e: FormEvent<HTMLInputElement>) => { if (e.currentTarget.validity.valueMissing) { e.currentTarget.setCustomValidity(message); } else if ( e.currentTarget.validity.patternMismatch && e.currentTarget.name === "postcode" ) { e.currentTarget.setCustomValidity("郵便番号正しく入力してね"); } else
本記事では、「Adaptive-RAG」についてざっくり理解します。軽めの記事です。 株式会社ナレッジセンスでは普段の業務で、生成AIやRAGシステムを活用したサービスを開発しています。 この記事は何 この記事は、Adaptive系で現在、最も「コスパ」が良いとされる「Adaptive-RAG」の論文[1]について、日本語で簡単にまとめたものです。 今回も「そもそもRAGとは?」については、知っている前提で進みます。確認する場合は以下の記事もご参考下さい。 本題 ざっくりサマリー RAGの回答精度を高めるための手法です。韓国科学技術院(KAIST)の研究者らによって2024年3月に提案されました。「Adaptive-RAG」という手法を使うメリットは、ユーザーからの入力としてシンプルな質問・複雑な質問、どちらも想定される場合に、「そこまで遅くなりすぎずに、ある程度の回答精度がでる」という点
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く