|
|
import gradio as gr |
|
|
from gradio_client import Client |
|
|
import logging |
|
|
|
|
|
def retrieve_paragraphs(query, category = None): |
|
|
"""Connect to retriever and retrieve paragraphs""" |
|
|
try: |
|
|
|
|
|
client = Client("https://giz-chatfed-retriever0-3.hf.space/") |
|
|
print("calling retriever at https://giz-chatfed-retriever0-3.hf.space/", flush=True) |
|
|
logging.info("calling retriever at https://giz-chatfed-retriever0-3.hf.space") |
|
|
filter_metadata = None |
|
|
if category: |
|
|
filter_metadata = {'category': category} |
|
|
result = client.predict( |
|
|
query=query, |
|
|
collection_name= "Humboldt", |
|
|
filter_metadata = filter_metadata, |
|
|
api_name="/retrieve" |
|
|
) |
|
|
return result |
|
|
|
|
|
except Exception as e: |
|
|
error_msg = f"Error retrieving paragraphs: {str(e)}" |
|
|
return ( |
|
|
error_msg, |
|
|
gr.update(visible=True), |
|
|
gr.update(visible=False) |
|
|
) |