Skip to main content
QUICK REVIEW

[論文レビュー] Optimizing LLM Queries in Relational Data Analytics Workloads

Shuming Liu, A. Biswal|arXiv (Cornell University)|Mar 9, 2024
Data Mining Algorithms and Applications被引用数 6
ひとこと要約

本論文は、Sparkベースの分析ワークフロー内で入力の再配置、プロンプトの重複排除、LLMコスト推定を通じてLLM起動型SQLクエリの高速化技術を紹介し、エンドツーエンド待機時間を最大で4.4倍削減する。

ABSTRACT

Batch data analytics is a growing application for Large Language Models (LLMs). LLMs enable users to perform a wide range of natural language tasks, such as classification, entity extraction, and translation, over large datasets. However, LLM inference is highly costly and slow: for example, an NVIDIA L4 GPU running Llama3-8B can only process 6 KB of text per second, taking about a day to handle 15 GB of data; processing a similar amount of data costs around $10K on OpenAI's GPT-4o. In this paper, we propose novel techniques that can significantly reduce the cost of LLM calls for relational data analytics workloads. Our key contribution is developing efficient algorithms for reordering the rows and the fields within each row of an input table to maximize key-value (KV) cache reuse when performing LLM serving. As such, our approach can be easily applied to existing analytics systems and serving platforms. Our evaluation shows that our solution can yield up to 3.4x improvement in job completion time on a benchmark of diverse LLM-based queries using Llama 3 models. Our solution also achieves a 32% cost savings under OpenAI and Anthropic pricing models.

研究の動機と目的

  • リレーショナルワークロードがLLM推論性能の改善機会を提供することを示す。
  • 列および行の入力再配置によってKVキャッシュヒット率を最大化する手法を開発する。
  • 冗長なLLM呼び出しを減らすためのデデュプリケーションとLLMコスト推定を導入する。
  • 提案手法をApache Spark上で実装し、バックエンドとしてvLLMを用いて評価する。
  • 実世界のLLM付加分析タスクを反映したベンチマークスイートを提供する。

提案手法

  • Spark内でLLM付加SQLクエリとUDFベースのLLM呼び出しを定義する。
  • KVキャッシュヒットを増やすため、列と行の再配置を通じたプレフィックス共有最大化(PSM)を提案する。
  • 冗長な呼び出しを削減し最適化を導くためのデデュプリケーションとLLMコスト推定を導入する。
  • vLLMにおけるプレフィックス管理のための追い出し対応KVキャッシュ戦略を開発する。
  • UDFプロンプト、出力後処理、プロンプト構築を統合した4K行のPySparkベースパイプラインを実装する。
  • Amazon Reviews、Rotten Tomatoes、SQuADデータセットで多様なベンチマーク(Q1–Q5)を構築・実行する。

実験結果

リサーチクエスチョン

  • RQ1LLM付加SQLクエリにおける入力データの並べ方とグルーピングがKVキャッシュ効率にどのように影響するか?
  • RQ2デデュプリケーションとコスト認識最適化がLLM呼び出しとエンドツーエンド待機時間をどの程度削減できるか?
  • RQ3実世界のLLMクエリにおける列レベルおよび行レベルの再配置がエンドツーエンド待機時間に与える影響は?
  • RQ4異なるクエリタイプ(射影、フィルタリング、マルチLLM、集約、RAG)とデータセットでLLM呼び出しの最適化はどのように比較されるか?
  • RQ5SQLオプティマがLLMオペレータコストを考慮するよう拡張してより良いクエリプランを生成できるか?

主な発見

  • LLM付加クエリのスイート全体でエンドツーエンド待機時間が1.5–4.4x改善。
  • 列と行の再配置によるKVキャッシュプレフィックス共有はキャッシュの再利用と推論の高速化を生み出す。
  • デデュプリケーションはクエリの意味論を損なうことなくLLM呼び出しを削減し、実行時間を短縮。
  • コスト認識SQL最適化は計画中のLLM呼び出しを増減させ、不要な呼び出しを最小化。
  • 実データセット(Amazon Reviews、Rotten Tomatoes、SQuAD)での評価はFIFOのみのキャッシュより顕著な速度向上を示している。
  • SparkとvLLMを用いた実装はエンドツーエンドのクエリで最大4.4xの待機時間削減を達成。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。