New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
almost weekly useful materials - 10/18 - #138
Comments
RAG is more than just embedding searchシンプルなベクトルサーチベースの課題を述べながら、instructorというopenai function callingにpydanticを組み合わせられるライブラリを紹介している記事 挙げられている課題
instructorを用いた解決策の提案ユーザーのクエリに対して付与すべきメタ情報をLLMで抽出し、それを元に検索をすることでRAGの性能を上げる class DateRange(BaseModel):
start: datetime.date
end: datetime.date
class MetaphorQuery(BaseModel):
rewritten_query: str
published_daterange: DateRange
domains_allow_list: List[str]
async def execute():
return await metaphor.search(...)
import instructor
import openai
# Enables response_model in the openai client
instructor.patch()
query = openai.ChatCompletion.create(
model="gpt-4",
response_model=MetaphorQuery,
messages=[
{
"role": "system",
"content": "You're a query understanding system for the Metafor Systems search engine. Here are some tips: ..."
},
{
"role": "user",
"content": "What are some recent developments in AI?"
}
],
) {
"rewritten_query": "novel developments advancements ai artificial intelligence machine learning",
"published_daterange": {
"start": "2023-09-17",
"end": "2021-06-17"
},
"domains_allow_list": ["arxiv.org"]
} コメントクエリ拡張をLLMで行うという方向性だが、どのような情報を拡張するかというのが設計者の腕の見せ所になりそう 出典 |
Azure Cognitive Search: Outperforming vector search with hybrid retrieval and ranking capabilitiesキーワード検索 と ベクトル検索の組み合わせたHybrid Search結果に検索結果のリランキングモデルを組み合わせることで、検索性能を大きく向上させることができたという報告 (これらの機能はAzure Cognitive Search上の設定で実施可能とのこと) 重要そうな結果
検索部分
※RRFのアルゴリズムはかなりシンプルで、順位の逆数に基づいたスコアを検索結果ごとに足し合わせて再度スコアを算出する以下のようなイメージのもの リランキング部分
検証設定についてDBからランダムにドキュメント片をGPTに入れて質問を生成してデータを作成
コメント
出典
|
10 Ways to Improve the Performance of Retrieval Augmented Generation SystemsRAGのパフォーマンスを向上させるための10の指針を紹介している記事 1. Clean your data.
各ドキュメントのサマリーを作っておき、まずサマリーでマッチングを行い、そのサマリーとマッチするドキュメントの詳細を深掘りするという方法もある 2. Explore different index types.検索indexを複数試す。キーワード + ベクトルなど (私見) 日付やカテゴリなどのメタデータ付与とかも重要か?カテゴリはメンテナンスが大変そうではあるが 3. Experiment with your chunking approach.chunking方法のチューニングは大事
4. Play around with your base prompt.プロンプトを変更する。 例
↓
5. Try meta-data filtering.chunkにmeta dataを付与して、それによるフィルタリングを試す 例えば、時間に関するmeta dataを振ることで新しいものを優先的に見るなどが可能 6. Use query routing.indexを複数分割しておき、このqueryが来た場合はこのindexを使うなどのroutingができるようにしておく。 7. Look into reranking.候補文章のリランキング cohereのre-rankerが性能良いとのこと 8. Consider query transformations.
9. Fine-tune your embedding model.ドメイン固有の文章の違いを判別できるようにembeddingモデルのfine tuningを行う
- 参考文献としてあげられていたもの①, ② 10. Start using LLM dev tools.デバッグしやすくなるようなツールを利用する コメント網羅的に整理されていて勉強になった 出典 |
Emojis Aid Social Media Sentiment Analysis: Stop Cleaning Them Out!SNS投稿のセンチメント分析をする際の絵文字の扱いを検証している記事. Encoderによる挙動の違いモデルによってはEncoderが絵文字のtokenizeに対応しているケースがある 検証対象は以下
下図のように、モデルによって扱えるemojiの種類に差があることがわかる。 絵文字の処理方法ブログ中では5種類言及されていた
検証結果少なくとも、絵文字の情報を消し去るよりはかは残して利用する方が良いことが示唆される。 また、絵文字の情報がtokenizerに入っているものについては、そのまま利用するのがシンプルかつベストで、絵文字のベクトルかが難しい場合はdescriptionに変更した方が良いとも考えられる。
コメント経験的にも絵文字を消すより、文章表現に直した方が精度が上がると思っていたので、それと整合する結果で安心。 出典 |
Retrieval Augmented Generationを改良する2つの方法表題の通り、2023年6月に書かれたものなので少し古いが、Microsoft Azureのサンプルに準拠した方法を紹介している。 よくある課題
紹介されていた対応策会話の履歴 + 質問文をもとにLLMが検索クエリを発行し、LLMが発行したクエリをもとにretrieveを行う
検索機能をツールとして与えたAgentを作成して、検索の必要有無 / 検索クエリ の発行をAgentに任せる
コメント
出典 |
ベクトル検索で欲しい情報が得られないときの問題点と改良方法を考えてみた表題の通り 2023/7の記事だがよく整理されている 考えられる問題点
方針
コメントよくまとまっていて参考になる 出典 |
Google Cloud Enterprise SearchとRetrieveReadCompose方式RAGを利用して社内公式情報を全部質問できるようにしてみた情報検索後、検索結果から関連情報をLLMに抽出させた後に、Generationを行うというちょっと変わったRAGを実践している記事 アーキテクチャ
その他改良方針
料金1回の生成あたり10 ~20円 処理時間全体:32.6[s]
コメントシステムを組み上げるせいに工夫した点や改良すべき点も述べられていて勉強になる Read機構の存在を前提とするなら、検索部分は粗く広く取れれば良いので、ドキュメントのチャンクサイズを大きめにしておくとか、検索結果のtopNを多めにしておくなどの対応が取れて、検索負荷が下がりそう。 出典 |
セキュリティチェックシートに回答する“つらみ”はLLMで解消 ~セキュリティ担当者に「本格運用できるんじゃない?」と言わせた仕組み~過去のセキュリティチェックシートの回答結果を用いてRAGによって新たなシートに回答を行う取り組みについて紹介している記事 全体像工夫点参考にした回答結果のはい/いいえに引っ張られることがあるので、参考情報を一度要約させている コメントこういう細かな工夫点大事 出典 |
No description provided.
The text was updated successfully, but these errors were encountered: