Spaces:
Sleeping
Sleeping
A newer version of the Gradio SDK is available: 6.10.0
metadata
title: LLMView Multi-Model
emoji: 🌳
colorFrom: yellow
colorTo: yellow
sdk: gradio
sdk_version: 4.43.0
app_file: app.py
pinned: false
LLMView Multi-Model - Hugging Face Spaces版
複数のAIモデルに対応した単語ツリー構築ツール(Gradio版)
特徴
- ✅ マルチモデル対応: Transformersモデル(Llama、Qwen、Mistral、Gemma等)に対応
- ✅ Hugging Face Spaces対応: GradioでHFSにデプロイ可能
- ✅ GPU対応: ZeroGPUを使用してGPUリソースを要求
- ✅ 完全なトークン確率: ローカルモデルで完全なトークン確率情報を取得
Hugging Face Spacesでのデプロイ
1. リポジトリの作成
- Hugging Face Spacesで新しいSpaceを作成
- SDK: Gradio を選択
- Hardware: GPU を選択(推奨)
2. 環境変数の設定
Spaceの設定で以下の環境変数を設定:
# モデルタイプ(transformers推奨)
MODEL_TYPE=transformers
# 使用するモデル(Hugging FaceリポジトリID)
HF_MODEL_REPO=meta-llama/Llama-3.2-3B-Instruct
# HF_TOKEN(gatedモデルの場合のみ必要)
# 以下のモデルはHF_TOKENが必要です:
# - meta-llama/* (Llama 3.2等) - Metaの承認とHF_TOKENが必要
# - elyza/ELYZA-japanese-Llama-2-7b-instruct - Llama-2ベースのため必要
# - bigcode/starcoder2-7b - gatedモデルの可能性あり
# その他のモデル(Qwen、Mistral、Gemma、Phi-3等)は不要
HF_TOKEN=your_hf_token
HF_TOKENが必要なモデル:
- ⚠️ meta-llama/Llama-3.2-3B-Instruct: Metaの承認とHF_TOKENが必要(gatedモデル)
- ⚠️ elyza/ELYZA-japanese-Llama-2-7b-instruct: Llama-2ベースのため必要
HF_TOKENが不要なモデル:
- ✅ Qwen/Qwen2.5-3B-Instruct: パブリックモデル
- ✅ mistralai/Mistral-7B-Instruct-v0.2: パブリックモデル
- ✅ google/gemma-2b-it, google/gemma-7b-it: パブリックモデル
- ✅ microsoft/Phi-3-mini-4k-instruct: パブリックモデル
- ✅ TinyLlama/TinyLlama-1.1B-Chat-v1.0: パブリックモデル
- ✅ stabilityai/japanese-stablelm-base-gamma-7b: パブリックモデル
- ✅ rinna/weblab-10b-instruction-sft: パブリックモデル
3. モデルの切り替え
環境変数HF_MODEL_REPOを変更するだけで、他のモデルに切り替え可能:
# Qwen 2.5
HF_MODEL_REPO=Qwen/Qwen2.5-3B-Instruct
# Mistral 7B
HF_MODEL_REPO=mistralai/Mistral-7B-Instruct-v0.2
# Gemma 2B
HF_MODEL_REPO=google/gemma-2b-it
使用方法
- プロンプトを入力: 質問や指示を入力
- ルートテキスト(オプション): 既存のテキストの続きを生成する場合に指定
- パラメータ調整:
top_k: 取得する候補数(1-20)max_depth: 最大探索深さ(1-50)
- 「単語ツリーを構築」ボタンをクリック
ファイル構成
LLMView_multi_model/
├── app.py # Gradioアプリ(メイン)
├── requirements.txt # 依存パッケージ
├── README.md # このファイル
├── MULTI_MODEL_DESIGN.md # 設計ドキュメント
└── package/
├── __init__.py
├── adapter.py # ModelAdapter(マルチモデル対応)
├── config.py # 設定管理
├── word_processor.py # 単語処理ロジック
├── word_counter.py # 単語数カウント
└── ai/
├── __init__.py # ファクトリー関数
├── base.py # BaseAIインターフェース
├── transformers_ai.py # TransformersAI(ローカルモデル)
├── openai_ai.py # OpenAIAI(オプション)
├── anthropic_ai.py # AnthropicAI(オプション)
└── google_ai.py # GoogleAI(オプション)
依存パッケージ
主要な依存パッケージ:
gradio>=4.43.0: Web UI(最新版でセキュリティ脆弱性を修正)spaces: Hugging Face Spaces用transformers>=4.30.0: Transformersモデルtorch>=2.0.0: PyTorchfugashi>=1.3.0: 形態素解析(日本語)sudachipy>=0.6.7: Sudachi形態素解析(オプション)
詳細はrequirements.txtを参照してください。
注意事項
- GPU推奨: モデルのロードと推論にはGPUが推奨されます
- モデルサイズ: 大きなモデル(7B以上)はメモリとロード時間がかかります
- 初回起動: モデルのダウンロードに時間がかかる場合があります
- API非推奨: Hugging Face Spacesでは、Transformersモデル(ローカルロード)を使用してください
トラブルシューティング
モデルがロードされない
- gatedモデルの場合:
HF_TOKENが正しく設定されているか確認meta-llama/*モデルはMetaの承認とHF_TOKENが必要- Hugging Faceのモデルページで承認を申請してください
- モデルリポジトリIDが正しいか確認
- Spaceのログを確認
- パブリックモデル(Qwen、Mistral、Gemma等)はHF_TOKEN不要
GPUが利用できない
- SpaceのHardware設定でGPUが有効になっているか確認
spacesパッケージがインストールされているか確認
形態素解析エラー
fugashiがインストールされているか確認- HFSでは通常、デフォルト設定で動作します
ライセンス
MIT License