import gradio as gr import requests API_URL = "https://api-inference.huggingface.co/models/tiiuae/falcon-7b-instruct" headers = {"Authorization": "Bearer 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"} def query(payload): response = requests.post(API_URL, headers=headers, json=payload) return response.json() API_URL2 = "https://api-inference.huggingface.co/models/valhalla/longformer-base-4096-finetuned-squadv1" headers2 = {"Authorization": "Bearer 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"} def query2(payload): response = requests.post(API_URL2, headers=headers2, json=payload) return response.json() def detect_context_from_question(inputs, outputs): question = inputs["a"] output = query({ "inputs": f"context for '{question}' is:", }) inputs["b"].value = output # Update the value of the context Textbox def ask_question(inputs, outputs): question = inputs["a"] context = inputs["b"] output2 = query2({ "inputs": { "question": question, "context": context }, }) outputs["answer"].value = output2 # Update the value of the answer Textbox iface = gr.Interface( fn=ask_question, inputs=[ gr.Textbox("Enter your question", type="text", placeholder="Enter your question", name="a"), gr.Textbox("Enter context", type="text", placeholder="Enter context", name="b"), gr.Button(detect_context_from_question, text="Detect Context", name="detect_button"), gr.Button("Ask", name="ask_button") ], outputs=gr.Textbox("Answer", type="text", placeholder="Answer", name="answer"), # Single Textbox for the answer live=True ) iface.launch()