3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

OpenAIのAPIを使用して、本のテキストを読み込みBotに回答させる

Last updated at Posted at 2023-03-13

概要

OpenAIのAPIを使用して、本のテキストを読み込みBotに回答させる

環境

googlecolab

前準備

  • OpenAIのAPIキー発行
  • 参考URL
  • 参考URL
  • テキストファイルにあらすじを貼り付けて保存
  • googlecolabにdataというフォルダを作成して.txtファイルを保存

実装

# llama-indexパッケージをインストール
pip install llama-index
# osモジュールをインポートし、OpenAI_API_KEYを環境変数に設定
import os
os.environ["OPENAI_API_KEY"] = "OpenAI_APIkeyを入力"
import logging
import sys

logging.basicConfig(stream=sys.stdout, level=logging.INFO, force=True)
logging.getLogger().addHandler(logging.StreamHandler(stream=sys.stdout))

# llama-indexパッケージから必要なモジュールをインポート
from llama_index import GPTSimpleVectorIndex, SimpleDirectoryReader

# 'data'ディレクトリ内のファイルを読み込み、documentsに格納
documents = SimpleDirectoryReader('data').load_data()
# GPTSimpleVectorIndexクラスにdocumentsを渡し、インデックスを作成
index = GPTSimpleVectorIndex(documents)

# 質問応答
print(index.query("どのような物語か教えて?"))

#回答
この物語は日露戦争で絶大な武勲を立てた元兵士の杉元佐一が病気を治療するために砂金を探しているところから始まりますしかし砂金はすでに掘り尽くされていたため杉元は途方に暮れていましたそんなある日杉元は酔っ払いの男からアイヌが八萬圓現代の価格で八億円相当もの金塊を貯蔵しているという噂話を耳にします続く。。

# 質問応答
print(index.query("「脱獄王」の異名を持つのは誰?"))

#回答
脱獄王の異名を持つのは白石由竹です

あらすじのデータをもとにした回答が得られた

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?