d3dname commited on
Commit
b4733c4
·
verified ·
1 Parent(s): f6ff336

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +203 -0
app.py ADDED
@@ -0,0 +1,203 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ import streamlit.components.v1 as aaaaaaa
3
+ import requests
4
+ import os
5
+ import time
6
+ import base64
7
+ from streamlit_mic_recorder import aaaaaaaa
8
+ from notion_client import Client
9
+ import pandas as pd
10
+ from threading import Thread
11
+
12
+ aaaaaaaaa = "drinktoomuchsax/whisper-small-hi"
13
+ aaaaaaaaaa = "en"
14
+
15
+ os.environ["COQUI_TOS_AGREED"] = "1"
16
+ os.environ["TRAINER_TELEMETRY"] = "0"
17
+
18
+ # Constants
19
+ aaaaaaaaaaa = os.environ.get("HF_TOKEN", None)
20
+ aaaaaaaaaaaa = os.environ.get("BASETEN_API", None)
21
+ aaaaaaaaaaaaa = os.environ.get("BASETEN_KEY", None)
22
+ aaaaaaaaaaaaaa = os.environ.get("NOTION_API_KEY", None)
23
+ aaaaaaaaaaaaaaa = os.environ.get("NOTION_DB_ID", None)
24
+
25
+ aaaaaaaaaaaaaaaa = Client(auth=f"{aaaaaaaaaaaaaa}")
26
+ aaaaaaaaaaaaaaaaa = f"{aaaaaaaaaaaaaaa}"
27
+
28
+ st.set_page_config(layout="wide")
29
+
30
+ # Load custom CSS to integrate Bootstrap, Font Awesome, and Google Fonts
31
+ st.markdown(
32
+ '''
33
+ <link href="https://fonts.googleapis.com/css?family=Amatic+SC:400,700|Dosis:400,500,700&subset=latin,latin-ext" rel="stylesheet">
34
+ <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.5.0/css/font-awesome.min.css" rel="stylesheet">
35
+ <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet">
36
+ <style>
37
+ body {
38
+ font-family: 'Dosis', sans-serif;
39
+ }
40
+ h1, h2, h3 {
41
+ font-family: 'Amatic SC', cursive;
42
+ }
43
+ .calculator button {
44
+ width: 100%;
45
+ padding: 20px;
46
+ font-size: 24px;
47
+ margin: 5px;
48
+ }
49
+ </style>
50
+ ''', unsafe_allow_html=True)
51
+
52
+ # Title Section
53
+ st.markdown('<h1 class="display-4 text-center">My Streamlit Application</h1><p class="lead text-center">Integrating Streamlit with Bootstrap Carousel</p>', unsafe_allow_html=True)
54
+
55
+ left, ml, right = st.columns([3, 3, 3])
56
+
57
+ with left:
58
+ st.markdown('''<h3><i class="fa fa-calculator"></i> Calculator</h3>''', unsafe_allow_html=True)
59
+
60
+ aaaaaaaaaaaaaaaaa = [
61
+ ['7', '8', '9', '/'],
62
+ ['4', '5', '6', '*'],
63
+ ['1', '2', '3', '-'],
64
+ ['C', '0', '.', '+'],
65
+ ['=']
66
+ ]
67
+
68
+ if 'aaaaaaaaaaaaaaa' not in st.session_state:
69
+ st.session_state.aaaaaaaaaaaaaaa = ""
70
+
71
+ def aaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaaa):
72
+ aaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaa.replace("\\", "")
73
+ try:
74
+ aaaaaaaaaaaaaaaaaaaa = eval(aaaaaaaaaaaaaaaaaaa)
75
+ return str(aaaaaaaaaaaaaaaaaaaa)
76
+ except ZeroDivisionError:
77
+ return "Error: Division by zero"
78
+ except Exception:
79
+ return "Error"
80
+
81
+ for aaaaaaaaaaaaaaaaaaaaa in aaaaaaaaaaaaaaaaa:
82
+ aaaaaaaaaaaaaaaaaaaaaa = st.columns(len(aaaaaaaaaaaaaaaaaaaaa))
83
+ for aaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaa in enumerate(aaaaaaaaaaaaaaaaaaaaa):
84
+ if aaaaaaaaaaaaaaaaaaaaaaaa and aaaaaaaaaaaaaaaaaaaaaa[aaaaaaaaaaaaaaaaaaaaaaa].button(aaaaaaaaaaaaaaaaaaaaaaaa):
85
+ if aaaaaaaaaaaaaaaaaaaaaaaa == '=':
86
+ st.session_state.aaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaa(st.session_state.aaaaaaaaaaaaaaa)
87
+ elif aaaaaaaaaaaaaaaaaaaaaaaa == 'C':
88
+ st.session_state.aaaaaaaaaaaaaaa = ""
89
+ else:
90
+ st.session_state.aaaaaaaaaaaaaaa += aaaaaaaaaaaaaaaaaaaaaaaa.replace("\\", "")
91
+
92
+ st.text_input("Calculation", st.session_state.aaaaaaaaaaaaaaa, key="display", disabled=True)
93
+
94
+ with ml:
95
+ st.markdown('''<h3><i class="fa fa-image"></i> Gen Image</h3>''', unsafe_allow_html=True)
96
+
97
+ aaaaaaaaaaaaaaaaaaaaaaaaa = f"{aaaaaaaaaaaaa}"
98
+ aaaaaaaaaaaaaaaaaaaaaaaaaa = st.text_input("Negative Prompt", "blurry, text, low quality")
99
+ aaaaaaaaaaaaaaaaaaaaaaaaaaa = st.text_input("Positive Prompt", "An igloo on a snowy day, 4k, hd")
100
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaa = st.text_input("ControlNet Image URL", "https://storage.googleapis.com/logos-bucket-01/baseten_logo.png")
101
+
102
+ if st.button("Generate Prompt"):
103
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaa = requests.post(
104
+ "https://model-7wlx9oew.api.baseten.co/production/predict",
105
+ headers={"Authorization": f"Api-Key {aaaaaaaaaaaaaaaaaaaaaaaaa}"},
106
+ json={
107
+ 'workflow_values': {
108
+ 'negative_prompt': aaaaaaaaaaaaaaaaaaaaaaaaaa,
109
+ 'positive_prompt': aaaaaaaaaaaaaaaaaaaaaaaaaaa,
110
+ 'controlnet_image': aaaaaaaaaaaaaaaaaaaaaaaaaaaa
111
+ }
112
+ }
113
+ )
114
+
115
+ if aaaaaaaaaaaaaaaaaaaaaaaaaaaaa.status_code == 200:
116
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json().get("result")
117
+ if aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:
118
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[0].get("data")
119
+ if aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:
120
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = base64.b64decode(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
121
+ st.image(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, caption="Generated Image", use_column_width=True)
122
+ else:
123
+ st.error("No image data found in the response.")
124
+ else:
125
+ st.error("No result found in the response.")
126
+ else:
127
+ st.error(f"Error: {aaaaaaaaaaaaaaaaaaaaaaaaaaaaa.status_code}, {aaaaaaaaaaaaaaaaaaaaaaaaaaaaa.text}")
128
+
129
+ with right:
130
+ st.markdown('''<h3><i class="fa fa-pencil"></i> Chat with Mistral</h3>''', unsafe_allow_html=True)
131
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = st.text_input("Enter Prompt", key="prompt3", value="Why is Sky Blue?")
132
+ if st.button("Submit", key="submit3"):
133
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = {"prompt": aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}
134
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = {"Authorization": f"Api-Key {aaaaaaaaaaaaa}"}
135
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = requests.post(f"{aaaaaaaaaaaa}", headers=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, json=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
136
+ if aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.status_code == 200:
137
+ st.write(f"**Response:** {aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json()}")
138
+ else:
139
+ st.write("Failed to get a response")
140
+
141
+ left, middle, right = st.columns([1, 3, 1])
142
+
143
+ with middle:
144
+ with st.form(key='data_entry_form'):
145
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = st.text_input("Name")
146
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = st.number_input("Age", min_value=0)
147
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = st.text_input("Location")
148
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = st.form_submit_button(label='Submit')
149
+
150
+ def aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa):
151
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = {
152
+ "Name": {
153
+ "title": [
154
+ {
155
+ "text": {
156
+ "content": aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
157
+ }
158
+ }
159
+ ]
160
+ },
161
+ "Age": {
162
+ "number": aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
163
+ },
164
+ "Location": {
165
+ "rich_text": [
166
+ {
167
+ "text": {
168
+ "content": aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
169
+ }
170
+ }
171
+ ]
172
+ }
173
+ }
174
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = notion.pages.create(parent={"database_id": aaaaaaaaaaaaaaaaaa}, properties=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
175
+
176
+ if aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:
177
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
178
+ st.success("Data submitted to Notion!")
179
+
180
+ def aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa():
181
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = notion.databases.query(database_id=aaaaaaaaaaaaaaaaa)
182
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = []
183
+ for aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa in aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa["results"]:
184
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa["properties"]["Name"]["title"][0]["text"]["content"] if aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa["properties"]["Name"]["title"] else "No Name"
185
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa["properties"]["Age"]["number"] if "number" in aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa["properties"]["Age"] else "No Age"
186
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa["properties"]["Location"]["rich_text"][0]["text"]["content"] if aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa["properties"]["Location"]["rich_text"] else "No Location"
187
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = {"Name": aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, "Age": aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, "Location": aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}
188
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.append(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
189
+
190
+ return pd.DataFrame(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
191
+
192
+ st.subheader("Stored Data")
193
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa()
194
+ st.table(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
195
+
196
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa = """
197
+ <style>
198
+ #MainMenu {visibility: hidden; }
199
+ footer {visibility: hidden;}
200
+ header {visibility: hidden;}
201
+ </style>
202
+ """
203
+ st.markdown(aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, unsafe_allow_html=True)