Spaces:
Running
Running
File size: 7,143 Bytes
b61c416 2e88125 9eff8c1 db741c8 2e88125 fdc7bcd 658485c 2e88125 b61c416 c3ebcce 7b64d1a 36e092b b61c416 dc54ab3 7b64d1a db741c8 b61c416 74bc027 7b64d1a 1e012c1 1bd1714 4727ea5 6e5ebdb 1bd1714 3517598 02107f0 4727ea5 d620477 6acf4f9 f57bc74 6acf4f9 86f7430 c721e0e dc54ab3 9508f6d 12a0dd5 9508f6d 2761d63 9508f6d 86f7430 bc044e2 c721e0e bbff065 1bd1714 2c8859a 2b45e0f 252c545 2c8859a bc044e2 87705bc 2c8859a 2e88125 ea91c1b 2e88125 2c8859a 2e88125 2c8859a 6e5ebdb 2e88125 6e5ebdb b61c416 1bd1714 02107f0 4727ea5 c55a531 252c545 1bd1714 4727ea5 d461ae3 1bd1714 7b64d1a 252c545 5bd7198 95e6877 5bd7198 2e88125 5bd7198 2e88125 6e5ebdb fcfbdc8 6e5ebdb db741c8 06d0d70 611f0a6 06d0d70 611f0a6 06d0d70 db741c8 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 |
import streamlit as st
import requests
import os
#from auth import authenticator
tok=os.getenv("TOK")
def APP():
tab_map = {
0: "BIO ENGINEERING LAB @newMATTER",
1: "EXECUTED OPERATIONS @newMATTER",
}
tab_selection=st.pills(
"TABS",
options=tab_map.keys(),
format_func=lambda option:tab_map[option],
selection_mode="single"
)
def SHOWTABS():
if tab_selection == 0 :
option_map = {
0: "@OriginAI Nanobody Engineering:",
1: "@OriginAI Ops",
2: "Information"
}
selection = st.pills(
"BIOLOGICS",
options=option_map.keys(),
format_func=lambda option: option_map[option],
selection_mode="single",
)
#match selection:
if selection == 0:
st.markdown("<p style='color:white;background-color:orange;font-weight:bold'> Nanobody [CANCER targeted]</p>",unsafe_allow_html=True)
#with st.expander("info"):
#st.info("This Interface lets u specify a high level biological query (Protein Engineering Query) and execute the pipeline for the end product i.e Engineered Nanobody",icon=":material/info:")
with st.form("bio",border=False):
project_name=None
target=None
def scan_for_project_availability(user_id):
request_url=f"https://thexforce-combat-backend.hf.space/{user_id}/projects"
response=requests.get(request_url,headers={
"Content-Type":"application/json",
"Authorization":f"Bearer {tok}"
})
st.write(response.text)
#project_details=response.json()
#if project_details.get("projectname") !=None or project_details.get("projectname") !="":
# st.session_state.projectname = project_details.get("projectname")
scan_for_project_availability(st.user.email)
projectname = st.session_state.get("projectname", "") # safe default
if projectname == "":
with st.expander("Set up the project before proceeding."):
project_name = st.text_input("Provide project name > ")
bio_input = st.text_area(
"Protein Engineering Query",
placeholder="Type your query here."
)
execute_button=st.form_submit_button("execute")
if execute_button:
if not project_name:
st.markdown(":orange-badge[⚠️ Set Projectname]")
else:
payload={
"uid":st.user.email ,
"pid":project_name or projectname,
"target":target,
"high_level_bio_query":bio_input
}
response=requests.post("https://thexforce-combat-backend.hf.space/application_layer_agent",json=payload,headers={
"Content-Type":"application/json",
"Authorization":f"Bearer {tok}"
})
plan_response=response.json()
st.markdown(f"## {plan_response}")
if selection == 1:
st.markdown("<p style='color:white;background-color:orange;font-weight:bold'>Vaccine [Supported] </p>",unsafe_allow_html=True)
with st.expander("info"):
st.info("",icon=":material/info:")
st.code("coming soon")
if selection ==2:
st.markdown("<p style='color:white;background-color:orange;font-weight:bold'>Operation Details </p>",unsafe_allow_html=True)
if tab_selection == 1:
st.markdown("### ORIGINAI Bio Lab Operations")
@st.cache_data(ttl=10)
def fetch_ops():
response=requests.get(f"https://thexforce-combat-backend.hf.space/user/operations/{st.user.email}",headers={
"Content-Type":"application/json",
"Authorization":f"Bearer {tok}"
})
useroperations_json=response.json()
return useroperations_json
userops=fetch_ops()
with st.expander("operations"):
st.json(userops)
'''
response=requests.get(
f"https://thexforce-combat-backend.hf.space/{st.session_state.get('username')}/{projectname}/individual/experiment",
headers={
"Content-Type":"application/json",
"Authorization":f"Bearer {tok}"
})
ie=response.json()
st.json(ie)
'''
if st.user.is_logged_in:
if st.button("🚪 Logout"):
st.logout()
st.rerun()
#Then show the main UI
SHOWTABS()
else:
#Show login when NOT logged in
st.info("Please log in to access the Bio Lab")
if st.button("Log in"):
st.login("auth0")
st.stop()
|