Spaces:
Paused
Paused
Update app.py
Browse files
app.py
CHANGED
|
@@ -244,9 +244,9 @@ def generate_html_from_text(text, temperature=0.3):
|
|
| 244 |
logger.warning(f"{model_name}が利用できません: {e}, フォールバックモデル{fallback_model}を使用します")
|
| 245 |
model = genai.GenerativeModel(fallback_model)
|
| 246 |
|
| 247 |
-
# 生成設定 -
|
| 248 |
generation_config = {
|
| 249 |
-
"temperature": temperature, #
|
| 250 |
"top_p": 0.7, # 0.95から0.7に下げて出力の多様性を制限
|
| 251 |
"top_k": 20, # 64から20に下げて候補を絞る
|
| 252 |
"max_output_tokens": 8192,
|
|
@@ -254,13 +254,34 @@ def generate_html_from_text(text, temperature=0.3):
|
|
| 254 |
"seed": 42, # 固定シードを使用して再現性を高める
|
| 255 |
}
|
| 256 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 257 |
# プロンプト構築
|
| 258 |
prompt = f"{system_instruction}\n\n{text}"
|
| 259 |
|
| 260 |
# コンテンツ生成
|
| 261 |
response = model.generate_content(
|
| 262 |
prompt,
|
| 263 |
-
generation_config=generation_config
|
|
|
|
| 264 |
)
|
| 265 |
|
| 266 |
# レスポンスからHTMLを抽出
|
|
@@ -827,12 +848,12 @@ with gr.Blocks(title="Full Page Screenshot (テキスト変換対応)", theme=gr
|
|
| 827 |
label="上下高さ拡張率(%)"
|
| 828 |
)
|
| 829 |
|
| 830 |
-
#
|
| 831 |
temperature = gr.Slider(
|
| 832 |
minimum=0.0,
|
| 833 |
-
maximum=1.0,
|
| 834 |
step=0.1,
|
| 835 |
-
value=0.3, # デフォルト値を0.3
|
| 836 |
label="生成時の温度(低い=一貫性高、高い=創造性高)",
|
| 837 |
visible=False # 最初は非表示
|
| 838 |
)
|
|
@@ -874,7 +895,6 @@ with gr.Blocks(title="Full Page Screenshot (テキスト変換対応)", theme=gr
|
|
| 874 |
|
| 875 |
## 設定情報
|
| 876 |
- 使用モデル: {gemini_model} (環境変数 GEMINI_MODEL で変更可能)
|
| 877 |
-
- 生成設定: 固定シード値(42)を使用して結果の一貫性を確保
|
| 878 |
""")
|
| 879 |
|
| 880 |
# --- Mount Gradio App onto FastAPI ---
|
|
|
|
| 244 |
logger.warning(f"{model_name}が利用できません: {e}, フォールバックモデル{fallback_model}を使用します")
|
| 245 |
model = genai.GenerativeModel(fallback_model)
|
| 246 |
|
| 247 |
+
# 生成設定 - ばらつきを減らすために設定を調整
|
| 248 |
generation_config = {
|
| 249 |
+
"temperature": temperature, # より低い温度を設定
|
| 250 |
"top_p": 0.7, # 0.95から0.7に下げて出力の多様性を制限
|
| 251 |
"top_k": 20, # 64から20に下げて候補を絞る
|
| 252 |
"max_output_tokens": 8192,
|
|
|
|
| 254 |
"seed": 42, # 固定シードを使用して再現性を高める
|
| 255 |
}
|
| 256 |
|
| 257 |
+
# 安全設定 - デフォルトの安全設定を使用
|
| 258 |
+
safety_settings = [
|
| 259 |
+
{
|
| 260 |
+
"category": "HARM_CATEGORY_HARASSMENT",
|
| 261 |
+
"threshold": "BLOCK_MEDIUM_AND_ABOVE"
|
| 262 |
+
},
|
| 263 |
+
{
|
| 264 |
+
"category": "HARM_CATEGORY_HATE_SPEECH",
|
| 265 |
+
"threshold": "BLOCK_MEDIUM_AND_ABOVE"
|
| 266 |
+
},
|
| 267 |
+
{
|
| 268 |
+
"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
|
| 269 |
+
"threshold": "BLOCK_MEDIUM_AND_ABOVE"
|
| 270 |
+
},
|
| 271 |
+
{
|
| 272 |
+
"category": "HARM_CATEGORY_DANGEROUS_CONTENT",
|
| 273 |
+
"threshold": "BLOCK_MEDIUM_AND_ABOVE"
|
| 274 |
+
}
|
| 275 |
+
]
|
| 276 |
+
|
| 277 |
# プロンプト構築
|
| 278 |
prompt = f"{system_instruction}\n\n{text}"
|
| 279 |
|
| 280 |
# コンテンツ生成
|
| 281 |
response = model.generate_content(
|
| 282 |
prompt,
|
| 283 |
+
generation_config=generation_config,
|
| 284 |
+
safety_settings=safety_settings
|
| 285 |
)
|
| 286 |
|
| 287 |
# レスポンスからHTMLを抽出
|
|
|
|
| 848 |
label="上下高さ拡張率(%)"
|
| 849 |
)
|
| 850 |
|
| 851 |
+
# 温度調整スライダー(テキストモード時のみ表示)
|
| 852 |
temperature = gr.Slider(
|
| 853 |
minimum=0.0,
|
| 854 |
+
maximum=1.0,
|
| 855 |
step=0.1,
|
| 856 |
+
value=0.3, # デフォルト値を0.3に下げて創造性を抑制
|
| 857 |
label="生成時の温度(低い=一貫性高、高い=創造性高)",
|
| 858 |
visible=False # 最初は非表示
|
| 859 |
)
|
|
|
|
| 895 |
|
| 896 |
## 設定情報
|
| 897 |
- 使用モデル: {gemini_model} (環境変数 GEMINI_MODEL で変更可能)
|
|
|
|
| 898 |
""")
|
| 899 |
|
| 900 |
# --- Mount Gradio App onto FastAPI ---
|