File size: 1,471 Bytes
24dc52a
80d18e0
561ac7c
24dc52a
 
d9ef11d
24dc52a
d9ef11d
 
24dc52a
eecb28e
 
 
 
 
d9ef11d
eecb28e
 
d9ef11d
 
 
 
 
 
eecb28e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import io
import os
import streamlit as st
import tempfile

from scripts import analyze_metadata, generate_metadata, ingest, MODEL_NAME

st.title('# DocVerifyRAG')
st.write('## Anomaly detection for BIM document metadata')

with st.form('my_form'):
    st.write('Enter your file metadata in the following schema:')
    text = st.text_input(label='Filename, Description, Discipline',                                                
                        value="", placeholder=str)
    submitted = st.form_submit_button('Submit')

    if submitted:
        filename, description, discipline = text.split(',')

        st.write('## Analyzing with Vectara + together.ai')
        analysis = analyze_metadata(filename, description, discipline)

        st.write(analysis)

st.write('## Generate metadata?')
uploaded_file = st.file_uploader("Choose a PDF file", type=["pdf","txt"])

if uploaded_file is not None:
    with tempfile.NamedTemporaryFile(delete=False, suffix=os.path.splitext(uploaded_file.name)[1]) as tmp:
        tmp.write(uploaded_file.read())
        file_path = tmp.name
        st.write(f'Created temporary file {file_path}')

    docs = ingest(file_path)
    st.write('## Querying Together.ai API')
    metadata = generate_metadata(docs)

    form = st.form(key='my_form')
    form.text_input(label=f'Suggested Metadata Generated by {MODEL_NAME}')
    stop_button = form.form_submit_button(label='Submit')
    print(metadata)
    
    os.remove(file_path)