こんにちはACSD松崎です。先月より、OpenAI APIを使ったアプリを色々と作って遊んでいますが、 従来のWebアプリケーション開発とは色々と感覚が違って面白いですね。
今回は、LlamaIndexとConfluence Loaderを使ってConfluce Cloud上の記事に基づいて、 質問に回答するアプリをGoogle Colab上で作ることに挑戦してみました!
Confluence Loaderとは
llama-hub において、Conflunce Cloudに対応したData Loaderです。 詳しくは以下を参照ください。
作成するアプリケーションの概要
Conbflunce Cloud上のページを読み込ませると、その情報に基づいた回答がなされる簡易BotをGoogle Colab上で作ります。
動作イメージ
予め以下のConfluneceページをConflunece Cloud上に用意します。
上記のページの情報を質問すると、ページに記載の情報を元にした回答が得られます。
Google Colabでの実行手順
パッケージのインストール
!pip install openai !pip install llama-index !pip install llama_hub !pip install llama-cpp-python
OpenAI APIの鍵の登録
import openai openai.api_key = "sk-xxx"
Conflunece ReaderによるConflunece Pageの取得とdocumentsオブジェクト化
from llama_hub.confluence.base import ConfluenceReader import os os.environ['CONFLUENCE_USERNAME'] = "matsuzaki@example.com" os.environ['CONFLUENCE_PASSWORD'] = "xxx" base_url = "https://example.atlassian.net/wiki" reader = ConfluenceReader(base_url=base_url) page_ids = [xxx,xxx] documents = reader.load_data(page_ids=page_ids)
indexの作成
from llama_index import GPTVectorStoreIndex index = GPTVectorStoreIndex.from_documents(documents)
queryの実行
query_engine = index.as_query_engine() question = "10.10.10.20のIPアドレスを持つサーバー名は?" response = query_engine.query(question) print(response)
おわりに
llama-hubのおかげで色んなデータソースから簡単に情報が取得できるのは便利ですね! 良い感触が得られたので次回ステップとして、この処理をSlack Bot化する方向で作業を進めようと思います。