File size: 4,388 Bytes
581fb54
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
---

title: 麻理チャット - Swallow-MX-8x7b-NVE GGUF版
emoji: 🤖
colorFrom: pink
colorTo: purple
sdk: gradio
sdk_version: 5.0.0
app_file: app.py
pinned: false
---


# 麻理チャット - Swallow-MX-8x7b-NVE GGUF版

このアプリケーションは、東京工業大学のSwallow-MX-8x7b-NVEモデルの量子化GGUF版を使用した対話型チャットボットです。「麻理」という名のAIキャラクターとの会話を楽しむことができます。

## 特徴

- 東京工業大学の日本語大規模言語モデル「Swallow-MX-8x7b-NVE-v0.1」の量子化版(Q4_K_M)を使用
- llama-cpp-pythonによる高速・省メモリな推論
- 複数のシーン(水族館、カフェ、神社など)に対応した背景と会話
- 好感度システムによる関係性の変化
- 感情分析による応答の調整

## セットアップ方法

### Hugging Face Spacesでの実行

1. このリポジトリをHugging Face Spacesにインポートします
2. Spacesの設定で以下を選択します:
   - SDK: Gradio
   - Python: 3.10
   - CPU: 必要に応じて(最低でも4GB RAM推奨)
   - Hardware: CPU(GPUは不要です)
3. 必要に応じて環境変数を設定します:
   - `GROQ_API_KEY`: Groq APIキー(オプション、シーン遷移時の指示生成に使用)

#### デプロイに関する注意事項

- **初回のデプロイ時間**: モデルのダウンロード(約4GB)に時間がかかります。辛抱強く待ってください。
- **ビルドエラーが発生した場合**: Spacesの「Settings」タブで「Factory Reboot」を実行してみてください。
- **メモリ不足エラー**: CPUのメモリを増やす(4GB以上推奨)か、「Restart Space」を試してください。
- **タイムアウトエラー**: ビルドプロセスが長すぎる場合は、再度デプロイを試みてください。

#### トラブルシューティング

1. **モデルのロードに失敗する場合**:
   - Spacesの「Settings」タブで「Restart Space」を実行してください。
   - それでも解決しない場合は「Factory Reboot」を試してください。

2. **アプリが起動しない場合**:
   - ログを確認して、エラーの原因を特定してください。
   - メモリ不足の場合は、CPUのメモリ割り当てを増やしてください。

3. **応答生成が遅い場合**:
   - これは正常です。量子化モデルをCPUで実行しているため、応答生成には時間がかかります。

### ローカル環境での実行

1. リポジトリをクローンします
2. 依存関係をインストールします:
   ```

   pip install -r requirements.txt

   ```
3. `.env`ファイルを作成し、必要な環境変数を設定します:
   ```

   GROQ_API_KEY=your_groq_api_key_here

   ```
4. アプリケーションを実行します:
   ```

   python app.py

   ```

## 使用方法

1. テキスト入力欄にメッセージを入力します
2. 麻理からの応答が表示されます
3. 会話を続けることで好感度が変化します
4. 特定の場所について話し、行くことに同意すると、シーンが変化します

## シーン一覧

- `default`: デフォルトの部屋
- `room_night`: 夜の部屋
- `beach_sunset`: 夕暮れのビーチ
- `festival_night`: 夜のお祭り
- `shrine_day`: 昼間の神社
- `cafe_afternoon`: 午後のカフェ
- `aquarium_night`: 夜の水族館

## モデル情報

このアプリケーションは、東京工業大学が開発した「Swallow-MX-8x7b-NVE-v0.1」モデルの量子化GGUF版を使用しています。
- 元のモデル: [tokyotech-llm/Swallow-MX-8x7b-NVE-v0.1](https://huggingface.co/tokyotech-llm/Swallow-MX-8x7b-NVE-v0.1)
- 量子化GGUF版: [mmnga/tokyotech-llm-Swallow-MX-8x7b-NVE-v0.1-gguf](https://huggingface.co/mmnga/tokyotech-llm-Swallow-MX-8x7b-NVE-v0.1-gguf)

## 注意事項

- GGUF形式の量子化モデル(Q4_K_M)を使用することで、メモリ使用量を大幅に削減しています
- llama-cpp-pythonを使用することで、GPUメモリの効率的な使用が可能になっています
- Hugging Face Spaces上でも快適に動作するように最適化されています