Traffine I/O

日本語

2023-08-28

LLMのコンテキストサイズとベクトルデータベース

はじめに

大規模言語モデル(LLM)は、近年多くの注目を集めています。LLMの課題の一つにモデルが不正確な情報を生成する「ハルシネーション(hallucination)」があります。

ハルシネーションへの解決策としてコンテキストのサイズを拡大するという手法があります。コンテキストのサイズは、モデルが一度に処理できるテキストの量です。AnthropicやOpenAIなどの企業はLLMに与えることができるコンテキストの容量を拡大する方向で研究を進めています。

コンテキストの過多による弊害

コンテキストのサイズを大きくすることで、モデルはより多くの情報を一度に処理できます。理論的には、これによってモデルがより複雑な問題に対処できるようになる可能性があります。

しかし、このコンテキストのサイズを大きくすることには、次のような課題があります。

  • 応答の品質の低下
    コンテキストのサイズを拡大すると、LLMは多くの情報を処理する必要があります。しかし、この過多な情報は、モデルが関連性のある情報を抽出する能力を低下させる可能性があります。特に、モデルが非関連な情報に困惑し、不正確な答えを生成するハルシネーションのリスクが高まります。

  • コンピューテーションとコストの増加
    コンテキストサイズの増加に伴って必要な計算量も増加します。これは、LLMのプロバイダーがトークンごとに課金する場合、クエリごとのコストが増加することを意味します。つまり、より多くのトークンを処理するためには、より多くのリソースと費用が必要となります。

ベクトルデータベースの導入

LLMにコンテキストを提供する新しいアプローチとして、ベクトルデータベースが注目されています。ベクトルデータベースを使うことで、不要な情報をフィルタリングし、関連性の高い情報だけを処理することができます。これにより、トークンごとの効率が向上し、全体としてモデルの精度と効率性が高まります。

Pineconeの記事では、関連性の高い情報のみをコンテキストに含めることで、全体の文書を処理する場合の精度を95%維持しつつ、トークン数を25%に削減することができたと報告しています。これは、運用コストを75%削減することを意味します。

参考

https://www.pinecone.io/blog/why-use-retrieval-instead-of-larger-context/

Ryusei Kakujo

researchgatelinkedingithub

Focusing on data science for mobility

Bench Press 100kg!