1
/
5

BigQueryのSQLとPaLM2でRAGを作ってみた

みなさんこんにちは、システム部の岡崎です。今回はBigQueryのSQLだけでRAGを作ってみようと思います。

目次

1. RAG(Retrieval-Augmented Generation)とは?
2. BigQuery MLでLLMが使える
3. 処理の概要を考えてみる
4. まずは下準備
5. 予備知識データベースのベクトル化
6. セマンティック検索
7. プロンプトを作る
8. 最後に Text Generation
9. 全部合体してRAGが完成
10. 結果出力(例)
11. 感想

1.RAG(Retrieval-Augmented Generation)とは?

質問に対して関連する情報を検索し、その情報を基に回答を生成する自然言語処理の手法です。
検索(Retrieval)と生成(Generation)を組み合わせることで、より正確で詳細な回答を提供する仕組みのことです。引用:Chat GPT

Q&Aチャットや、社内文書の検索などで見かけますが、中でもLangChain, Llama indexpyhton framework が有名です。

2.BigQuery MLでLLMが使える

ある日、BigQuery ML について色々調べていると。。。

BigQuery上で大規模言語モデルを扱える関数がある!
ML.GENERATE_TEXT (テキスト生成)
ML.GENERATE_TEXT_EMBEDDING(テキストのベクトル化)

他にも。
ML.DISTANCE (2つのベクトル間の距離を計算)

これだけあればSQLだけで RAG が作れるのではないか?と思い、試してみることにしました。

3. 処理の概要を考えてみる

処理の概要として、以下のステップを考えました。


ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

続きはこちらのテックブログからご覧ください。

【https://gmor-sys.com/2024/02/16/rag-with-bigquery-sql-and-palm2/】


GMOリサーチ株式会社's job postings

Weekly ranking

Show other rankings
Invitation from GMOリサーチ株式会社
If this story triggered your interest, have a chat with the team?