import gradio as gr import requests from datasets import load_dataset # Load the dataset dataset = load_dataset("viber1/indian-law-dataset")['train'] def get_answer_from_dataset(query): for entry in dataset: if query.lower() in entry['Instruction'].lower(): return entry['Response'] return None def get_answer_from_api(query): base_url = "https://www.courtlistener.com/api/rest/v4/search/" headers = { "Authorization": "Token 9c70738ed9eb3cce4f3782a91c7c8a218c180b89" # Replace with your CourtListener API token } params = { "q": query, "page_size": 1 # Limit the number of results returned } response = requests.get(base_url, headers=headers, params=params) if response.status_code == 200: results = response.json() if results.get('count', 0) > 0: return results['results'][0]['case_name'] # Adjust based on actual response structure return "No legal information available for this query." def respond(query): answer = get_answer_from_dataset(query) if answer: return answer else: return get_answer_from_api(query) # Gradio interface demo = gr.Interface( fn=respond, inputs="text", outputs="text", title="YOUR LEGAL GUIDE", description="Ask your legal queries regarding Indian laws.", ) if __name__ == "__main__": demo.launch()