Nina
commited on
Commit
Β·
b740969
1
Parent(s):
e944ee0
change user id
Browse files
app.py
CHANGED
|
@@ -48,6 +48,7 @@ account_url = os.environ["account_url"]
|
|
| 48 |
file_share_name = "climategpt"
|
| 49 |
service = ShareServiceClient(account_url=account_url, credential=credential)
|
| 50 |
share_client = service.get_share_client(file_share_name)
|
|
|
|
| 51 |
|
| 52 |
|
| 53 |
def chat(
|
|
@@ -86,7 +87,9 @@ def chat(
|
|
| 86 |
)
|
| 87 |
|
| 88 |
if sources:
|
| 89 |
-
messages.append(
|
|
|
|
|
|
|
| 90 |
|
| 91 |
response = openai.Completion.create(
|
| 92 |
engine="climateGPT",
|
|
@@ -101,9 +104,7 @@ def chat(
|
|
| 101 |
messages.pop()
|
| 102 |
else:
|
| 103 |
sources = "No environmental report was used to provide this answer."
|
| 104 |
-
complete_response =
|
| 105 |
-
"No relevant documents found, for a sourced answer you may want to try a more specific question.\n\n"
|
| 106 |
-
)
|
| 107 |
|
| 108 |
messages.append({"role": "assistant", "content": complete_response})
|
| 109 |
timestamp = str(datetime.now().timestamp())
|
|
@@ -120,7 +121,9 @@ def chat(
|
|
| 120 |
log_on_azure(file, logs, share_client)
|
| 121 |
|
| 122 |
for chunk in response:
|
| 123 |
-
if (
|
|
|
|
|
|
|
| 124 |
complete_response += chunk_message
|
| 125 |
messages[-1]["content"] = complete_response
|
| 126 |
gradio_format = make_pairs([a["content"] for a in messages[1:]])
|
|
@@ -152,7 +155,6 @@ def log_on_azure(file, logs, share_client):
|
|
| 152 |
# Gradio
|
| 153 |
css_code = ".gradio-container {background-image: url('file=background.png');background-position: top right}"
|
| 154 |
with gr.Blocks(title="π ClimateGPT Ekimetrics", css=css_code) as demo:
|
| 155 |
-
user_id = create_user_id(10)
|
| 156 |
user_id_state = gr.State([user_id])
|
| 157 |
|
| 158 |
with gr.Tab("App"):
|
|
@@ -178,7 +180,9 @@ with gr.Blocks(title="π ClimateGPT Ekimetrics", css=css_code) as demo:
|
|
| 178 |
|
| 179 |
with gr.Column(scale=1, variant="panel"):
|
| 180 |
gr.Markdown("### Sources")
|
| 181 |
-
sources_textbox = gr.Textbox(
|
|
|
|
|
|
|
| 182 |
ask.submit(
|
| 183 |
fn=chat,
|
| 184 |
inputs=[
|
|
@@ -212,8 +216,12 @@ with gr.Blocks(title="π ClimateGPT Ekimetrics", css=css_code) as demo:
|
|
| 212 |
lines=1,
|
| 213 |
type="password",
|
| 214 |
)
|
| 215 |
-
openai_api_key_textbox.change(
|
| 216 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 217 |
|
| 218 |
with gr.Tab("Information"):
|
| 219 |
gr.Markdown(
|
|
|
|
| 48 |
file_share_name = "climategpt"
|
| 49 |
service = ShareServiceClient(account_url=account_url, credential=credential)
|
| 50 |
share_client = service.get_share_client(file_share_name)
|
| 51 |
+
user_id = create_user_id(10)
|
| 52 |
|
| 53 |
|
| 54 |
def chat(
|
|
|
|
| 87 |
)
|
| 88 |
|
| 89 |
if sources:
|
| 90 |
+
messages.append(
|
| 91 |
+
{"role": "system", "content": f"{os.environ['sources']}\n\n{sources}"}
|
| 92 |
+
)
|
| 93 |
|
| 94 |
response = openai.Completion.create(
|
| 95 |
engine="climateGPT",
|
|
|
|
| 104 |
messages.pop()
|
| 105 |
else:
|
| 106 |
sources = "No environmental report was used to provide this answer."
|
| 107 |
+
complete_response = "No relevant documents found, for a sourced answer you may want to try a more specific question.\n\n"
|
|
|
|
|
|
|
| 108 |
|
| 109 |
messages.append({"role": "assistant", "content": complete_response})
|
| 110 |
timestamp = str(datetime.now().timestamp())
|
|
|
|
| 121 |
log_on_azure(file, logs, share_client)
|
| 122 |
|
| 123 |
for chunk in response:
|
| 124 |
+
if (
|
| 125 |
+
chunk_message := chunk["choices"][0].get("text")
|
| 126 |
+
) and chunk_message != "<|im_end|>":
|
| 127 |
complete_response += chunk_message
|
| 128 |
messages[-1]["content"] = complete_response
|
| 129 |
gradio_format = make_pairs([a["content"] for a in messages[1:]])
|
|
|
|
| 155 |
# Gradio
|
| 156 |
css_code = ".gradio-container {background-image: url('file=background.png');background-position: top right}"
|
| 157 |
with gr.Blocks(title="π ClimateGPT Ekimetrics", css=css_code) as demo:
|
|
|
|
| 158 |
user_id_state = gr.State([user_id])
|
| 159 |
|
| 160 |
with gr.Tab("App"):
|
|
|
|
| 180 |
|
| 181 |
with gr.Column(scale=1, variant="panel"):
|
| 182 |
gr.Markdown("### Sources")
|
| 183 |
+
sources_textbox = gr.Textbox(
|
| 184 |
+
interactive=False, show_label=False, max_lines=50
|
| 185 |
+
)
|
| 186 |
ask.submit(
|
| 187 |
fn=chat,
|
| 188 |
inputs=[
|
|
|
|
| 216 |
lines=1,
|
| 217 |
type="password",
|
| 218 |
)
|
| 219 |
+
openai_api_key_textbox.change(
|
| 220 |
+
set_openai_api_key, inputs=[openai_api_key_textbox]
|
| 221 |
+
)
|
| 222 |
+
openai_api_key_textbox.submit(
|
| 223 |
+
set_openai_api_key, inputs=[openai_api_key_textbox]
|
| 224 |
+
)
|
| 225 |
|
| 226 |
with gr.Tab("Information"):
|
| 227 |
gr.Markdown(
|