File size: 4,027 Bytes
2e2dda5
 
 
 
 
 
 
 
 
9270b74
2e2dda5
 
 
 
b8519de
1bfd8c6
 
 
 
 
 
 
 
b8519de
1bfd8c6
 
 
 
 
 
9270b74
 
1bfd8c6
 
 
 
9270b74
 
 
 
 
1bfd8c6
9270b74
1bfd8c6
 
 
9270b74
2e2dda5
1bfd8c6
 
 
 
9270b74
e280474
1bfd8c6
9270b74
 
 
 
 
 
2e2dda5
1bfd8c6
9270b74
 
 
 
 
 
 
 
 
 
e280474
9270b74
1bfd8c6
9270b74
 
 
e280474
9270b74
 
 
 
 
 
 
 
1bfd8c6
9270b74
1bfd8c6
 
 
9270b74
 
 
 
 
 
1bfd8c6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9270b74
f9322b5
9270b74
 
b8519de
 
9270b74
 
 
 
 
 
 
 
 
 
 
 
 
 
2e2dda5
9270b74
 
 
e280474
2e2dda5
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
import streamlit as st
from PIL import Image
import base64
import yaml
import os
import urllib.request
import tarfile
from yaml.loader import SafeLoader

# Page setup
st.set_page_config(
    layout="wide",
    page_icon="/home/ubuntu/images/opensearch_mark_default.png"
)

import streamlit as st
from PIL import Image
import base64
import yaml
import os
import urllib.request
import tarfile
from yaml.loader import SafeLoader

# Page setup
st.set_page_config(
    layout="wide",
    page_icon="/home/ubuntu/images/opensearch_mark_default.png"
    
)
st.markdown("""
    <style>
    /* Import Amazon Ember font */
    @import url('https://fonts.cdnfonts.com/css/amazon-ember');

    /* Global layout tweaks */
    html, body, .main {
        overflow: hidden;
        height: 100vh;
        background-color: #1E1E1E;
        color: #FFFFFF;
        font-family: 'Amazon Ember', sans-serif;
    }

    .block-container {
        padding-top: 5rem;
    }

    /* Hide Streamlit UI elements */
    #MainMenu, header, footer,
    button[title="View fullscreen"] {
        visibility: hidden;
    }

    /* Title styling */
    .title {
        font-size: 40px;
        color: #FF9900;
        font-family: 'Amazon Ember Display 500', sans-serif;
        margin-bottom: 10px;
    }

    /* Demo card styling */
    .demo-card {
        background-color: #111111;
        border-radius: 12px;
        padding: 20px;
        margin: 10px 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        border: 1px solid #333333;
    }

    .demo-text {
        font-size: 24px;
        color: #c5c3c0;
        font-family: 'Amazon Ember Cd RC 250', sans-serif;
    }

    .demo-button {
        background-color: #000000;
        border: 1px solid #888;
        color: white;
        padding: 8px 18px;
        border-radius: 6px;
        font-size: 16px;
    }

    a .demo-card:hover {
        background-color: #e46e08 !important;
        color: black !important;
        transition: 0.3s;
    }
    </style>
""", unsafe_allow_html=True)




# Header with logo and title
extra, col_logo, col_title = st.columns([3,40, 58])
with col_logo:
    st.image("/home/ubuntu/AI-search-with-amazon-opensearch-service/OpenSearchApp/images/OS_AI_1_cropped.png", use_column_width=True)

    #st.image("/home/ubuntu/images/OS_AI_1.png", use_column_width=True)
# with col_title:
#     st.write("")
#     st.markdown('<div class="title">OpenSearch AI demos</div>', unsafe_allow_html=True)

def demo_link_block(icon, title, target_page):
    st.markdown(f"""
        <a href="/{target_page}" target="_self" style="text-decoration: none;">
            <div class="demo-card">
                <div class="demo-text">{icon} {title}</div>
            </div>
        </a>
    """, unsafe_allow_html=True)

st.write("")
demo_link_block("πŸ”", "AI Search", "Semantic_Search")
demo_link_block("πŸ’¬","Multimodal Conversational Search", "Multimodal_Conversational_Search")
demo_link_block("πŸ›οΈ","Agentic Shopping Assistant", "AI_Shopping_Assistant")




# Header with logo and title
extra, col_logo, col_title = st.columns([3,34, 63])
with col_logo:
    st.image("/home/user/app/images/OS_AI_1_cropped.png", use_column_width=True)
st.write("")
st.write("")
    #st.image("/home/ubuntu/images/OS_AI_1.png", use_column_width=True)
# with col_title:
#     st.write("")
#     st.markdown('<div class="title">OpenSearch AI demos</div>', unsafe_allow_html=True)

def demo_link_block(icon, title, target_page):
    st.markdown(f"""
        <a href="/{target_page}" target="_self" style="text-decoration: none;">
            <div class="demo-card">
                <div class="demo-text">{icon} {title}</div>
            </div>
        </a>
    """, unsafe_allow_html=True)

st.write("")
demo_link_block("πŸ”", "AI Search", "Semantic_Search")
demo_link_block("πŸ’¬","Multimodal Conversational Search", "Multimodal_Conversational_Search")
demo_link_block("πŸ›οΈ","Agentic Shopping Assistant", "AI_Shopping_Assistant")