|
import streamlit as st |
|
import os |
|
from langserve.client import RemoteRunnable |
|
from httpx import HTTPStatusError |
|
from dotenv import load_dotenv |
|
|
|
|
|
load_dotenv() |
|
|
|
|
|
token = os.environ.get("BACK_API_KEY") |
|
|
|
|
|
rag_app = RemoteRunnable("http://127.0.0.1:8000/rag-chroma/", headers={"x-api-key": f"{token}"}) |
|
|
|
|
|
def main(): |
|
|
|
st.title("Question Answering App") |
|
|
|
|
|
question = st.text_input("Type your question here:") |
|
|
|
|
|
if st.button("Get Answer"): |
|
try: |
|
|
|
answer = rag_app.invoke(question) |
|
|
|
st.success(answer) |
|
except HTTPStatusError as e: |
|
|
|
st.error(f"Failed to get an answer. Error: {e}") |
|
|
|
if __name__ == "__main__": |
|
main() |