Mori-kamiyama commited on
Commit
c3617df
·
1 Parent(s): af7f4e5

RAGをつけた

Browse files
Files changed (3) hide show
  1. app.py +44 -3
  2. document.csv +174 -0
  3. requirements.txt +6 -1
app.py CHANGED
@@ -2,8 +2,12 @@ import gradio as gr
2
  import pathlib
3
  from huggingface_hub import hf_hub_download
4
  from llama_cpp import Llama
 
 
 
 
5
 
6
- # 書き込み可能なディレクトリを指定(例:現在のディレクトリの "models" フォルダ)
7
  models_dir = pathlib.Path(__file__).parent / "models"
8
  models_dir.mkdir(exist_ok=True)
9
 
@@ -15,13 +19,50 @@ model_path = hf_hub_download(
15
 
16
  llm = Llama(model_path=model_path)
17
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  def generate_text(prompt):
19
- result = llm(prompt)
20
  return result['choices'][0]['text']
21
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
  iface = gr.Interface(fn=generate_text,
23
  inputs="text",
24
  outputs="text",
25
- title="GGUFモデルテキストジェネレーター")
26
 
27
  iface.launch()
 
2
  import pathlib
3
  from huggingface_hub import hf_hub_download
4
  from llama_cpp import Llama
5
+ from sentence_transformers import SentenceTransformer
6
+ import faiss
7
+ import numpy as np
8
+ import pandas as pd
9
 
10
+ ## LLMの読み込み
11
  models_dir = pathlib.Path(__file__).parent / "models"
12
  models_dir.mkdir(exist_ok=True)
13
 
 
19
 
20
  llm = Llama(model_path=model_path)
21
 
22
+ ## 埋め込みモデルの読み込み
23
+ model = SentenceTransformer("BAAI/bge-m3")
24
+
25
+ # ドキュメントの読み込み
26
+ df = pd.read_csv("document.csv")
27
+ # "text"カラムをリストとして抽出
28
+ texts = df['text'].tolist()
29
+
30
+ # ベクトル化
31
+ doc_embeddings = model.encode(texts, normalize_embeddings=True)
32
+
33
+ # FAISSのセットアップ
34
+ dimension = doc_embeddings.shape[1]
35
+ index = faiss.IndexFlatIP(dimension) # Cosine用にnormalize済ならこれ
36
+ index.add(np.array(doc_embeddings))
37
+
38
  def generate_text(prompt):
39
+ result = llm(search(prompt))
40
  return result['choices'][0]['text']
41
 
42
+ def search(query):
43
+ query_embedding = model.encode([query], normalize_embeddings=True)
44
+
45
+ # FAISSで検索
46
+ top_k = 3
47
+ D, I = index.search(np.array(query_embedding), top_k)
48
+
49
+ retrieved_docs = []
50
+ print("\n🔍 検索結果:")
51
+ for idx in I[0]:
52
+ doc_text = texts[idx]
53
+ retrieved_docs.append(doc_text)
54
+ print(f"→ {doc_text}")
55
+
56
+ # RAG用のプロンプトを作成
57
+ prompt = "以下の文書を参照して質問に答えてください。\n\n文書:\n"
58
+ prompt += "\n".join(retrieved_docs)
59
+ prompt += f"\n\n質問: {query}"
60
+
61
+ return prompt
62
+
63
  iface = gr.Interface(fn=generate_text,
64
  inputs="text",
65
  outputs="text",
66
+ title="sarashina-R13B-RAG")
67
 
68
  iface.launch()
document.csv ADDED
@@ -0,0 +1,174 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "text","tag"
2
+ "Q: スマホの電池を長持ちさせるには?\nA: 低電力モードを使用し、バックグラウンドアプリを減らしましょう。",
3
+ "Q: 神山町の魅力は?\nA: 自然が豊かで、IT企業の誘致による活気があります。",
4
+ "Q: Pythonとは何ですか?\nA: Pythonはシンプルで学びやすいプログラミング言語です。",
5
+ "Q: クラウドコンピューティングとは?\nA: インターネット経由でサーバー、ストレージ、データベースなどのコンピューティングリソースを提供するサービスです。",
6
+ "Q: AI(人工知能)の最新動向は?\nA: 深層学習の進化、自然言語処理の精度向上、倫理的なAI開発などが注目されています。",
7
+ "Q: 機械学習とは?\nA: データからパターンを学習し、予測や分類を行うアルゴリズムの総称です。",
8
+ "Q: ディープラーニングとは?\nA: 脳の神経回路を模倣した多層のニューラルネットワークを用いる機械学習の手法です。",
9
+ "Q: 自然言語処理(NLP)とは?\nA: コンピュータが人間の言葉を理解し、処理する技術です。",
10
+ "Q: IoT(モノのインターネット)とは?\nA: センサーやデバイスがインターネットに接続され、データを共有・活用する仕組みです。",
11
+ "Q: 5Gとは?\nA: 第5世代移動通信システムのことで、高速・大容量・低遅延が特徴です。",
12
+ "Q: ブロックチェーンとは?\nA: 分散型台帳技術で、データの改ざんが困難な仕組みです。",
13
+ "Q: ビッグデータとは?\nA: 従来のデータベース管理システムでは処理できないほど大量のデータです。",
14
+ "Q: データサイエンスとは?\nA: データから有用な情報を抽出し、意思決定に役立てる学問です。",
15
+ "Q: サイバーセキュリティとは?\nA: コンピュータシステムやネットワークを不正アクセスや攻撃から保護する技術です。",
16
+ "Q: プログラミング言語Pythonの特徴は?\nA: シンプルで読みやすく、豊富なライブラリがあり、データ分析やAI開発に広く使われています。",
17
+ "Q: 仮想現実(VR)とは?\nA: コンピュータで生成された仮想空間を体験できる技術です。",
18
+ "Q: 拡張現実(AR)とは?\nA: 現実世界の映像にデジタル情報を重ねて表示する技術です。",
19
+ "Q: 量子コンピュータとは?\nA: 量子力学の原理を利用した次世代のコンピュータです。",
20
+ "Q: エッジコンピューティングとは?\nA: データ処理をネットワークの末端で行うことで、遅延を減らす技術です。",
21
+ "Q: サーバーレスコンピューティングとは?\nA: サーバーの管理を意識せずにアプリケーションを実行できるクラウドサービスです。",
22
+ "Q: コンテナ技術とは?\nA: アプリケーションとその実行環境をまとめて管理する技術です。",
23
+ "Q: マイクロサービスとは?\nA: アプリケーションを小さな独立したサービスに分割する設計手法です。",
24
+ "Q: DevOpsとは?\nA: 開発(Development)と運用(Operations)を連携させ、開発サイクルを高速化する手法です。",
25
+ "Q: CI/CDとは?\nA: 継続的インテグレーション(CI)と継続的デリバリー(CD)の略で、ソフトウェア開発の自動化手法です。",
26
+ "Q: APIとは?\nA: アプリケーション間でデータをやり取りするためのインターフェースです。",
27
+ "Q: Web3とは?\nA: ブロックチェーン技術を基盤とした分散型インターネットの概念です。",
28
+ "Q: メタバースとは?\nA: インターネット上に構築された仮想空間です。",
29
+ "Q: ノーコード/ローコード開発とは?\nA: プログラミング知識がなくてもアプリケーション開発ができる手法です。",
30
+ "Q: アジャイル開発とは?\nA: 柔軟な計画と反復的な開発を特徴とするソフトウェア開発手法です。",
31
+ "Q: スクラムとは?\nA: アジャイル開発のフレームワークの一つで、チームで協力して開発を進めます。",
32
+ "Q: デザイン思考とは?\nA: ユーザー中心の視点で問題解決を行うアプローチです。",
33
+ "Q: UX/UIデザインとは?\nA: ユーザーエクスペリエンス(UX)とユーザーインターフェース(UI)を設計する分野です。",
34
+ "Q: アクセシビリティとは?\nA: すべての人が利用しやすいように製品やサービスを設計することです。",
35
+ "Q: オープンソースソフトウェアとは?\nA: ソースコードが公開され、誰でも自由に使用・改変・配布できるソフトウェアです。",
36
+ "Q: リモートワークを効率化するツールは?\nA: Zoom、Slack、Microsoft Teamsなどがよく使われます。",
37
+ "Q: プロジェクト管理ツールは何がおすすめ?\nA: Asana、Trello、Jiraなどが人気です。",
38
+ "Q: データ可視化ツールは何がある?\nA: Tableau、Power BI、Google Data Studioなどが使われます。",
39
+ "Q: クラウドストレージサービスは何が便利?\nA: Google Drive、Dropbox、OneDriveなどが便利です。",
40
+ "Q: オンライン学習プラットフォームは何がおすすめ?\nA: Coursera、Udemy、edXなどが人気です。",
41
+ "Q: プログラミング学習サイトは何がおすすめ?\nA: Codecademy、freeCodeCamp、Progateなどが人気です。",
42
+ "Q: AI開発に役立つライブラリは?\nA: TensorFlow、PyTorch、scikit-learnなどがよく使われます。",
43
+ "Q: データ分析に役立つライブラリは?\nA: Pandas、NumPy、Matplotlibなどがよく使われます。",
44
+ "Q: Web開発に役立つフレームワークは?\nA: React、Angular、Vue.jsなどが人気です。",
45
+ "Q: モバイルアプリ開発に役立つフレームワークは?\nA: React Native、Flutter、Ionicなどが人気です。",
46
+ "Q: ゲーム開発に役立つゲームエンジンは?\nA: Unity、Unreal Engineなどが人気です。",
47
+ "Q: データベースの種類は?\nA: MySQL、PostgreSQL、MongoDBなどがよく使われます。",
48
+ "Q: サーバーの種類は?\nA: Apache、Nginxなどがよく使われます。",
49
+ "Q: ネットワークの種類は?\nA: LAN、WAN、VPNなどがあります。",
50
+ "Q: セキュリティ対策の基本は?\nA: ファイアウォール、ウイルス対策ソフト、パスワード管理などが重要です。",
51
+ "Q: クラウドセキュリティの重要性は?\nA: クラウドサービス利用時のデータ保護とアクセス制御が重要です。",
52
+ "Q: AI倫理とは?\nA: AIの開発・利用における倫理的な問題について考える分野です。",
53
+ "Q: データプライバシーとは?\nA: 個人情報の保護と利用に関する権利です。",
54
+ "Q: デジタルデバイドとは?\nA: 情報技術を利用できる人とできない人の間に生じる格差です。",
55
+ "Q: サステナビリティとテクノロジーの関係は?\nA: テクノロジーは環境問題の解決に貢献できる可能性があります。",
56
+ "Q: スマートシティとは?\nA: 情報技術を活用して都市の課題を解決し、持続可能な都市を目指す取り組みです。",
57
+ "Q: フィンテックとは?\nA: 金融サービスとテクノロジーを組み合わせた分野です。",
58
+ "Q: ヘルスケアテックとは?\nA: 医療とテクノロジーを組み合わせた分野です。",
59
+ "Q: エドテックとは?\nA: 教育とテクノロジーを組み合わせた分野です。",
60
+ "Q: アグリテックとは?\nA: 農業とテクノロジーを組み合わせた分野です。",
61
+ "Q: スペーステックとは?\nA: 宇宙開発とテクノロジーを組み合わせた分野です。",
62
+ "Q: ドローンテクノロジーの活用事例は?\nA: 農業、物流、災害調査などで活用されています。",
63
+ "Q: 自動運転技術の現状は?\nA: 実用化に向けた研究開発が進んでいます。",
64
+ "Q: 3Dプリンターの活用事例は?\nA: 試作品の作成、医療分野、建築分野などで活用されています。",
65
+ "Q: バイオテクノロジーとは?\nA: 生物学の知識や技術を応用する分野です。",
66
+ "Q: 再生可能エネルギーとテクノロジーの関係は?\nA: テクノロジーは再生可能エネルギーの効率的な利用に貢献できます。",
67
+ "Q: スマートホームとは?\nA: IoT技術を活用して家電製品や住宅設備を連携させる仕組みです。",
68
+ "Q: デジタルマーケティングとは?\nA: インターネットやデジタル技術を活用したマーケティング手法です。",
69
+ "Q: SEO対策とは?\nA: 検索エンジン最適化のことで、Webサイトを検索結果の上位に表示させるための対策です。",
70
+ "Q: コンテンツマーケティングとは?\nA: 価値のあるコンテンツを提供することで顧客を獲得するマーケティング手法です。",
71
+ "Q: SNSマーケティングとは?\nA: ソーシャルメディアを活用したマーケティング手法です。",
72
+ "Q: アフィリエイトマーケティングとは?\nA: 他者の商品やサービスを紹介し、成果に応じて報酬を得るマーケティング手法です。",
73
+ "Q: 重力とは何ですか?\nA: 物体同士が互いに引きつけ合う力です。",
74
+ "Q: 光とは何ですか?\nA: 電磁波の一種で、人間の目に見えるエネルギーのことです。",
75
+ "Q: 原子とは何ですか?\nA: 物質を形づくる最小の単位となる粒子です。",
76
+ "Q: 電気とは何ですか?\nA: 電子の移動によって生まれるエネルギーです。",
77
+ "Q: 音とは何ですか?\nA: 空気などの振動が耳に伝わり、聞こえる現象です。",
78
+ "Q: エネルギーとは何ですか?\nA: 物体を動かしたり変化させたりするための力のことです。",
79
+ "Q: 遺伝子とは何ですか?\nA: 親から子に受け継がれ、生物の特徴を決める情報の単位です。",
80
+ "Q: 光合成とは何ですか?\nA: 植物が光のエネルギーで二酸化炭素と水から養分を作る働きです。",
81
+ "Q: 進化とは何ですか?\nA: 生物が長い年月をかけて環境に適応し、姿や性質が変化していくことです。",
82
+ "Q: DNAとは何ですか?\nA: 生物の遺伝情報が入っている、生命の設計図のような物質です。",
83
+ "Q: ワクチンとは何ですか?\nA: 病気を予防するため、弱くした病原体などを体に入れて免疫をつける薬です。",
84
+ "Q: 細胞とは何ですか?\nA: 生物の体を形づくる最も基本的な構成単位です。",
85
+ "Q: ブラックホールとは何ですか?\nA: 光さえ脱出できないほど強い重力を持つ天体です。",
86
+ "Q: 銀河とは何ですか?\nA: 無数の星やガスが重力でまとまった巨大な星の集まりです。",
87
+ "Q: 太陽系とは何ですか?\nA: 太陽と、その周りを公転する惑星などの天体の集まりです。",
88
+ "Q: 宇宙とは何ですか?\nA: 星や銀河など、存在するすべてを含んだ広大な空間のことです。",
89
+ "Q: ビッグバンとは何ですか?\nA: 宇宙の始まりに起こったとされる非常に大きな爆発のことです。",
90
+ "Q: 地震はなぜ起こるのですか?\nA: 地球の地下で岩盤(プレート)がずれてエネルギーが放出され、その衝撃で地面が揺れるためです。",
91
+ "Q: 季節はなぜ生じるのですか?\nA: 地球の自転軸が傾いているため、公転によって太陽光の当たり方が変化し、季節が生まれるからです。",
92
+ "Q: なぜ空は青いのですか?\nA: 太陽の光が大気中の微粒子で散乱され、その際に青い光が強く散らばるため青く見えるからです。",
93
+ "Q: 虹はなぜできるのですか?\nA: 空気中の雨粒で太陽の光が屈折・反射し、色ごとに分かれて見えるためです。",
94
+ "Q: オーロラとは何ですか?\nA: 太陽からの粒子が地球の大気にぶつかり、空で光を放つ現象です。",
95
+ "Q: 地球温暖化とは何ですか?\nA: 温室効果ガスが増えて地球の平均気温が上がる現象です。",
96
+ "Q: 温室効果とは何ですか?\nA: 大気中の二酸化炭素などが地表からの熱を吸収して逃がさず、地表を温める仕組みです。",
97
+ "Q: 気候変動とは何ですか?\nA: 気温や降水量など、気候のパターンが長期的に変化することです。",
98
+ "Q: 放射線とは何ですか?\nA: 物質から放出される高エネルギーの粒子や電磁波のことです。",
99
+ "Q: 原子力とは何ですか?\nA: 原子の核反応を利用して得られる強力なエネルギーです。",
100
+ "Q: 化学反応とは何ですか?\nA: 物質同士が結びついたり分かれたりして別の物質に変わる現象です。",
101
+ "Q: 元素とは何ですか?\nA: それ以上分けられない物質の基本的な種類で、酸素や鉄などのことです。",
102
+ "Q: 恐竜はなぜ絶滅したのですか?\nA: 約6600万年前、小惑星の衝突による環境の激変で生き残れなくなったためです。",
103
+ "Q: 太陽系で一番大きな惑星は何ですか?\nA: 太陽系で最も大きな惑星は木星です。",
104
+ "Q: 世界で一番大きい動物は何ですか?\nA: 世界で最も大きい動物はシロナガスクジラです。",
105
+ "Q: ウイルスと細菌の違いは何ですか?\nA: ウイルスは細胞の中でしか増殖できない極めて小さな病原体で、細菌は自力で増えることができる単細胞生物です。",
106
+ "Q: 国際宇宙ステーション (ISS) とは何ですか?\nA: 各国が協力して地球の周りの軌道上に建てた、宇宙飛行士が長期間滞在して実験するための施設です。",
107
+ "Q: コンピューターとは何ですか?\nA: 情報の計算や処理を自動で行う電子的な機械です。",
108
+ "Q: プログラミングとは何ですか?\nA: コンピューターにやらせたい処理を命令として書き、実行させることです。",
109
+ "Q: インターネットとは何ですか?\nA: 世界中のコンピューター同士をつないで情報をやり取りできるようにした通信網です。",
110
+ "Q: スマートフォンとは何ですか?\nA: 電話やメールの他、インターネットや様々なアプリが使える多機能な携帯電話です。",
111
+ "Q: ソフトウェアとは何ですか?\nA: コンピューター上で動くプログラムやアプリのことです。",
112
+ "Q: ハードウェアとは何ですか?\nA: コンピューターの機械そのものや部品のことで、キーボードやCPUなどの実物を指します。",
113
+ "Q: OS(オペレーティングシステム)とは何ですか?\nA: コンピューターを管��し、他のソフトを動かすための基本的なソフトウェアです。",
114
+ "Q: アルゴリズムとは何ですか?\nA: 問題を解決するための手順や計算方法のことです。",
115
+ "Q: 人工知能とは何ですか?\nA: コンピューターに人間のように学習や判断をさせる技術です。",
116
+ "Q: 機械学習とは何ですか?\nA: コンピューターが大量のデータから自ら学習して、性能を向上させる技術です。",
117
+ "Q: プログラミング言語とは何ですか?\nA: コンピューターに命令を伝えるために人間が使う専用の言語です。",
118
+ "Q: Pythonとは何ですか?\nA: Pythonはシンプルで学びやすいプログラミング言語です。",
119
+ "Q: ロボットとは何ですか?\nA: 人の代わりに自動で動作する機械のことです。",
120
+ "Q: データベースとは何ですか?\nA: データを整理して蓄積し、必要なときに取り出せるようにした仕組みです。",
121
+ "Q: クラウドコンピューティングとは何ですか?\nA: インターネット上のサーバーを通じて、データ保存や処理などを必要に応じて利用する仕組みです。",
122
+ "Q: ビッグデータとは何ですか?\nA: 非常に巨大で複雑なため、従来の方法では処理が難しいデータの集まりのことです。",
123
+ "Q: バーチャルリアリティ (VR) とは何ですか?\nA: コンピューターで作られた仮想の世界を、あたかも現実のように体験できる技術です。",
124
+ "Q: 拡張現実 (AR) とは何ですか?\nA: 現実の景色に仮想の情報や画像を重ねて表示する技術です。",
125
+ "Q: IoT(モノのインターネット)とは何ですか?\nA: 身の回りの様々な機器をインターネットにつなげて、情報交換や遠隔操作を行う仕組みです。",
126
+ "Q: ウェブサイトとは何ですか?\nA: インターネット上に公開された複数のウェブページからなる情報の集まりです。",
127
+ "Q: アプリとは何ですか?\nA: スマホやパソコンで動く、特定の機能を持つソフトウェアのことです。",
128
+ "Q: SNSとは何ですか?\nA: インターネット上で人々が交流し、情報を共有できるサービスのことです。",
129
+ "Q: プログラマーとは何ですか?\nA: コンピューター用のプログラムを書く人のことです。",
130
+ "Q: コンピューターウイルスとは何ですか?\nA: 他のプログラムやファイルに感染して被害を与える、悪意のあるプログラムです。",
131
+ "Q: パスワードとは何ですか?\nA: 本人確認やデータ保護のために用いる、秘密の合言葉です。",
132
+ "Q: 暗号化とは何ですか?\nA: データを他人に読めないように、別の符号や文字列に変換することです。",
133
+ "Q: 電子メールとは何ですか?\nA: インターネットを使って送受信する電子的な手紙(メッセージ)のことです。",
134
+ "Q: CPUとは何ですか?\nA: コンピューターの中心で計算や制御を行う装置で、人間でいう脳の役割をします。",
135
+ "Q: ディープラーニングとは何ですか?\nA: 人工知能の一分野で、人の脳をまねた多層構造でコンピューターがデータから学習する技術です。",
136
+ "Q: HTMLとは何ですか?\nA: ウェブページの構造を記述するためのマークアップ言語です。",
137
+ "Q: ハッカーとは何ですか?\nA: 高度なコンピューター技術を持ち、システムへの不正侵入などを行う人のことです。",
138
+ "Q: ブロックチェーンとは何ですか?\nA: 取引データをネット上の多数のコンピューターに分散して記録・管理する技術です。",
139
+ "Q: 検索エンジンとは何ですか?\nA: インターネット上の情報をキーワードで探し出せるようにするプログラムやサービスのことです。",
140
+ "Q: デジタルとアナログの違いは何ですか?\nA: デジタルは情報を0や1の数字で表し、アナログは連続した量で表現する方式の違いです。",
141
+ "Q: 文化とは何ですか?\nA: 人々が受け継ぎ共有している生活様式や価値観、習慣などのことです。",
142
+ "Q: 伝統とは何ですか?\nA: 長い間受け継がれてきた文化や習慣のことです。",
143
+ "Q: 芸術とは何ですか?\nA: 絵画や音楽、文学など、美しさや表現を追求する人間の創作活動のことです。",
144
+ "Q: 文学とは何ですか?\nA: 小説や詩など、言葉で表現された芸術作品やその分野のことです。",
145
+ "Q: 音楽とは何ですか?\nA: 音やリズムによって感情や美を表現する芸術です。",
146
+ "Q: 宗教とは何ですか?\nA: 神や仏などを信じて、教えや儀式を通じて心の支えとする信仰の体系です。",
147
+ "Q: 言語とは何ですか?\nA: 人間が意思や情報を伝えるために使う言葉の体系です。",
148
+ "Q: 歴史とは何ですか?\nA: 人類の過去に起こった出来事や、それを研究する学問のことです。",
149
+ "Q: 哲学とは何ですか?\nA: 世界や人間について、根本的な問いを探求する学問です。",
150
+ "Q: 民主主義とは何ですか?\nA: 市民が自分たちの代表を選んで政治を行うしくみのことです。",
151
+ "Q: ポップカルチャーとは何ですか?\nA: 大衆に広く受け入れられている現代の流行文化のことです。",
152
+ "Q: サブカルチャーとは何ですか?\nA: 主流ではないが特定の人々に支持されている、独自の趣味や文化のことです。",
153
+ "Q: 文化交流とは何ですか?\nA: 異なる文化の人々が接触し、お互いの文化を紹介し合って影響を受け合うことです。",
154
+ "Q: グローバリゼーションとは何ですか?\nA: 人や物、情報、お金などが国境を越えて活発に行き来し、世界が一体化していく現象です。",
155
+ "Q: 多文化主義とは何ですか?\nA: 異なる文化を持つ人々が互いの文化を尊重しながら共存する考え方です。",
156
+ "Q: オリンピックとは何ですか?\nA: 世界各国が参加し、四年ごとに開かれる国際的なスポーツの祭典です。",
157
+ "Q: ユネスコ世界遺産とは何ですか?\nA: ユネスコ(国連教育科学文化機関)が人類の宝として後世に残す価値があると認めた、世界の貴重な自然や文化の遺産のことです。",
158
+ "Q: 神話とは何ですか?\nA: 古代の神や英雄にまつわる物語で、文化や宗教の起源を説明する伝承です。",
159
+ "Q: 茶道とは何ですか?\nA: 日本の伝統文化で、定められた作法に従ってお茶をたて、客をもてなすことです。",
160
+ "Q: 歌舞伎とは何ですか?\nA: 日本の伝統演劇で、華やかな衣装や化粧をして演じる舞台芸術です。",
161
+ "Q: 日本の祭りとは何ですか?\nA: 地域の神社や季節の行事に合わせて行われる、日本各地の伝統的なお祝い行事です。",
162
+ "Q: 和食とは何ですか?\nA: 日本の伝統的な料理で、ご飯や味噌汁、魚などを中心とした食文化です。",
163
+ "Q: アニメとは何ですか?\nA: 絵を動かして物語を表現する、日本発祥の映像作品のことです。",
164
+ "Q: マンガとは何ですか?\nA: コマ割りされた絵とセリフで物語を表現する、日本発祥の読み物です。",
165
+ "Q: 習慣とは何ですか?\nA: ある社会や個人が繰り返し行っている決まった行動のことです。",
166
+ "Q: 道徳とは何ですか?\nA: 人として守るべき善悪の基準や行動の規範のことです。",
167
+ "Q: 文明とは何ですか?\nA: 高度な技術や社会組織、文化を持った人間社会のことです。",
168
+ "Q: ファッションとは何ですか?\nA: 服装や髪型などの流行のスタイルのことです。",
169
+ "Q: 礼儀とは何ですか?\nA: 人が社会で守るべき正しい作法やマナーのことです。",
170
+ "Q: ジェンダーとは何ですか?\nA: 社会的・文化的に形成される性別のあり方や差異のことです。",
171
+ "Q: メディアとは何ですか?\nA: 情報を伝える手段(媒体)のことで、テレビや新聞、インターネットなどが含まれます。",
172
+ "Q: SDGsとは何ですか?\nA: 2030年までに世界の課題を解決するために国連が定めた17の目標のことです。",
173
+ "Q: 人権とは何ですか?\nA: すべての人が生まれながらに持つ、人間としての基本的な権利のことです。",
174
+ "Q: 武道とは何ですか?\nA: 柔道や剣道など、日本で発達した礼節を重んじる伝統的な武術の総称です。"
requirements.txt CHANGED
@@ -1,3 +1,8 @@
1
  gradio
2
  llama-cpp-python
3
- huggingface_hub
 
 
 
 
 
 
1
  gradio
2
  llama-cpp-python
3
+ huggingface_hub
4
+ pathlib
5
+ SentenceTransformer
6
+ faiss
7
+ numpy
8
+ pandas