Update app.py
Browse files
app.py
CHANGED
|
@@ -3,7 +3,7 @@ import os
|
|
| 3 |
import re
|
| 4 |
from pathlib import Path
|
| 5 |
from statistics import median
|
| 6 |
-
|
| 7 |
import pandas as pd
|
| 8 |
import streamlit as st
|
| 9 |
from bs4 import BeautifulSoup
|
|
@@ -213,6 +213,7 @@ def boot():
|
|
| 213 |
st.session_state.costing = []
|
| 214 |
if "messages" not in st.session_state:
|
| 215 |
st.session_state.messages = []
|
|
|
|
| 216 |
for message in st.session_state.messages:
|
| 217 |
st.chat_message("human").write(message[0])
|
| 218 |
st.chat_message("ai").write(message[1])
|
|
@@ -222,6 +223,7 @@ def boot():
|
|
| 222 |
sorted_references = sorted([ref.metadata["chunk_id"] for ref in references])
|
| 223 |
references_str = " ".join([f"[{ref}]" for ref in sorted_references])
|
| 224 |
st.chat_message("ai").write(response + "\n\n---\nReferences:" + references_str)
|
|
|
|
| 225 |
st.session_state.costing.append(
|
| 226 |
{
|
| 227 |
"prompt tokens": stats.prompt_tokens,
|
|
@@ -232,6 +234,16 @@ def boot():
|
|
| 232 |
stats_df = pd.DataFrame(st.session_state.costing)
|
| 233 |
stats_df.loc["total"] = stats_df.sum()
|
| 234 |
st.sidebar.write(stats_df)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 235 |
|
| 236 |
|
| 237 |
if __name__ == "__main__":
|
|
|
|
| 3 |
import re
|
| 4 |
from pathlib import Path
|
| 5 |
from statistics import median
|
| 6 |
+
import json
|
| 7 |
import pandas as pd
|
| 8 |
import streamlit as st
|
| 9 |
from bs4 import BeautifulSoup
|
|
|
|
| 213 |
st.session_state.costing = []
|
| 214 |
if "messages" not in st.session_state:
|
| 215 |
st.session_state.messages = []
|
| 216 |
+
|
| 217 |
for message in st.session_state.messages:
|
| 218 |
st.chat_message("human").write(message[0])
|
| 219 |
st.chat_message("ai").write(message[1])
|
|
|
|
| 223 |
sorted_references = sorted([ref.metadata["chunk_id"] for ref in references])
|
| 224 |
references_str = " ".join([f"[{ref}]" for ref in sorted_references])
|
| 225 |
st.chat_message("ai").write(response + "\n\n---\nReferences:" + references_str)
|
| 226 |
+
|
| 227 |
st.session_state.costing.append(
|
| 228 |
{
|
| 229 |
"prompt tokens": stats.prompt_tokens,
|
|
|
|
| 234 |
stats_df = pd.DataFrame(st.session_state.costing)
|
| 235 |
stats_df.loc["total"] = stats_df.sum()
|
| 236 |
st.sidebar.write(stats_df)
|
| 237 |
+
st.sidebar.download_button(
|
| 238 |
+
"Download Conversation",
|
| 239 |
+
json.dumps(
|
| 240 |
+
[
|
| 241 |
+
{"human": message[0], "ai": message[1]}
|
| 242 |
+
for message in st.session_state.messages
|
| 243 |
+
]
|
| 244 |
+
),
|
| 245 |
+
"conversation.json",
|
| 246 |
+
)
|
| 247 |
|
| 248 |
|
| 249 |
if __name__ == "__main__":
|