File size: 2,506 Bytes
babf3f3 a90b938 babf3f3 64a6951 a90b938 64a6951 a90b938 64a6951 a90b938 64a6951 a90b938 64a6951 a90b938 64a6951 a90b938 64a6951 a90b938 64a6951 babf3f3 64a6951 babf3f3 64a6951 babf3f3 64a6951 a90b938 64a6951 a90b938 64a6951 babf3f3 64a6951 |
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 |
import streamlit as st
import requests
import os
import json
import sys
# μμ€ν
μ 보 νμΈ
st.write("Python version:", sys.version)
st.write("νμ¬ μμ
λλ ν 리:", os.getcwd())
# νκ²½ λ³μ νμΈ (보μμ λ―Όκ°ν μ 보λ κ°λ €μ νμ)
env_vars = {}
for key in os.environ:
value = os.environ[key]
if key in ['API_BASE_URL']:
env_vars[key] = value
elif 'SECRET' in key or 'KEY' in key or 'TOKEN' in key or 'PASSWORD' in key:
env_vars[key] = value[:4] + '****' if len(value) > 4 else '****'
st.subheader("νκ²½ λ³μ")
st.json(env_vars)
# API μ°κ²° ν
μ€νΈ
st.subheader("API μ°κ²° ν
μ€νΈ")
api_url = os.environ.get('API_BASE_URL', 'https://enter-your-api-url.com')
st.write(f"API URL: {api_url}")
test_url = st.text_input("ν
μ€νΈν API URL", api_url)
if st.button("API μ°κ²° ν
μ€νΈ"):
try:
with st.spinner("API μ°κ²° ν
μ€νΈ μ€..."):
response = requests.get(f"{test_url}/docs", timeout=10)
st.success(f"API μ°κ²° μ±κ³΅! μν μ½λ: {response.status_code}")
st.text(f"μλ΅ λ΄μ© (μ²μ 500μ): {response.text[:500]}")
except Exception as e:
st.error(f"API μ°κ²° μ€ν¨: {str(e)}")
st.info("API μλ²κ° μ€ν μ€μΈμ§, URLμ΄ μ¬λ°λ₯Έμ§ νμΈνμΈμ.")
# νμΌ μμ€ν
νμΈ
st.subheader("νμΌ μμ€ν
νμΈ")
files = os.listdir('.')
st.write("νμ¬ λλ ν 리 νμΌ:", files)
# κ°λ¨ν μ±ν
UI
st.subheader("κ°λ¨ν μ±ν
ν
μ€νΈ")
user_input = st.text_input("μ§λ¬Έ μ
λ ₯")
if st.button("μ μ‘") and user_input:
st.write(f"μ¬μ©μ: {user_input}")
try:
with st.spinner("μλ΅ μμ± μ€..."):
response = requests.post(
f"{api_url}/rag",
json={
"query": user_input,
"retriever_type": "reranker",
"top_k": 3
},
timeout=30
)
if response.status_code == 200:
result = response.json()
st.write(f"μ±λ΄: {result.get('answer', 'μλ΅μ λ°μ§ λͺ»νμ΅λλ€.')}")
st.write("μλ΅ μΈλΆ μ 보:")
st.json(result)
else:
st.error(f"API μ€λ₯: {response.status_code} - {response.text}")
except Exception as e:
st.error(f"μ€λ₯ λ°μ: {str(e)}")
st.info("μμΈν μ€λ₯ μ 보:")
st.exception(e) |