|
import gradio as gr |
|
from langchain.tools import Tool |
|
from langchain_community.utilities import GoogleSearchAPIWrapper |
|
import os |
|
|
|
os.environ["GOOGLE_CSE_ID"] = "222a4a8ae035a4d1d" |
|
os.environ["GOOGLE_API_KEY"] = "AIzaSyBxEUXINrQ313UZbgHEQXZSvTNADgOv9K0" |
|
|
|
def get_search(query:str="", k:int=1): |
|
search = GoogleSearchAPIWrapper(k=k) |
|
def search_results(query): |
|
return search.results(query, k) |
|
tool = Tool( |
|
name="Google Search Snippets", |
|
description="Search Google for recent results.", |
|
func=search_results, |
|
) |
|
ref_text = tool.run(query) |
|
return ref_text |
|
|
|
def search(query:str): |
|
search_result = get_search(query,1)[0] |
|
title = search_result['title'] |
|
link = search_result['link'] |
|
return_str = f"""title: {title}\nlink: {link}""" |
|
return return_str |
|
|
|
demo = gr.Interface(fn=search, inputs="textbox", outputs="textbox") |
|
|
|
if __name__ == "__main__": |
|
demo.launch() |