tori29umai commited on
Commit
a1259a0
·
verified ·
1 Parent(s): fe80b3f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -0
app.py CHANGED
@@ -9,6 +9,7 @@ import configparser
9
  from utils.dl_utils import dl_guff_model
10
  import io
11
  import tempfile
 
12
 
13
  # モデルディレクトリが存在しない場合は作成
14
  if not os.path.exists("models"):
@@ -60,6 +61,16 @@ def load_settings_from_ini(filename='character_settings.ini'):
60
  except KeyError:
61
  return None
62
 
 
 
 
 
 
 
 
 
 
 
63
  # LlamaCppのラッパークラス
64
  class LlamaCppAdapter:
65
  def __init__(self, model_path, n_ctx=4096):
@@ -299,6 +310,14 @@ with gr.Blocks(css=custom_css) as iface:
299
  undo_btn="前のメッセージを取り消す",
300
  clear_btn="チャットをクリア",
301
  )
 
 
 
 
 
 
 
 
302
 
303
  examples = gr.Examples(
304
  examples=[
 
9
  from utils.dl_utils import dl_guff_model
10
  import io
11
  import tempfile
12
+ import csv
13
 
14
  # モデルディレクトリが存在しない場合は作成
15
  if not os.path.exists("models"):
 
61
  except KeyError:
62
  return None
63
 
64
+ def export_chat_history_to_csv(history):
65
+ with tempfile.NamedTemporaryFile(mode='w', delete=False, suffix='.csv', newline='', encoding='utf-8') as temp_file:
66
+ writer = csv.writer(temp_file)
67
+ writer.writerow(["Role", "Message"]) # CSV header
68
+ for message in history:
69
+ writer.writerow(["User", message[0]])
70
+ writer.writerow(["Assistant", message[1]])
71
+ temp_file_path = temp_file.name
72
+ return temp_file_path
73
+
74
  # LlamaCppのラッパークラス
75
  class LlamaCppAdapter:
76
  def __init__(self, model_path, n_ctx=4096):
 
310
  undo_btn="前のメッセージを取り消す",
311
  clear_btn="チャットをクリア",
312
  )
313
+ export_csv_button = gr.Button("チャット履歴をCSVでエクスポート")
314
+ export_csv_output = gr.File(label="エクスポートされたCSVファイル")
315
+
316
+ export_csv_button.click(
317
+ export_chat_history_to_csv,
318
+ inputs=[chatbot],
319
+ outputs=[export_csv_output]
320
+ )
321
 
322
  examples = gr.Examples(
323
  examples=[