Spaces:
Sleeping
Sleeping
import gradio as gr | |
import requests | |
import time | |
import os | |
import json | |
from bardapi import Bard | |
bardKey = os.environ.get('_BARD_API_KEY') | |
def bardChat(data): | |
# Create a session object using the requests library | |
session = requests.Session() | |
# Set the headers for the session | |
session.headers = { | |
"Host": "bard.google.com", | |
"X-Same-Domain": "1", | |
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36", | |
"Content-Type": "application/x-www-form-urlencoded;charset=UTF-8", | |
"Origin": "https://bard.google.com", | |
"Referer": "https://bard.google.com/", | |
} | |
# Set the "__Secure-1PSID" cookie with the Bard API key | |
session.cookies.set("__Secure-1PSID", bardKey) | |
# Create a Bard object with the session and a timeout of 30 seconds | |
bard = Bard(session=session, timeout=30) | |
answer = bard.get_answer(data)['content'] | |
respo = { | |
"message": answer, | |
"action": "nothing", | |
"function": "nothing" | |
} | |
# print(answer) | |
return json.dumps(respo) | |
def responsenew(data): | |
print(data) | |
return bardChat(data) | |
gradio_interface = gr.Interface( | |
fn = responsenew, | |
inputs = "text", | |
outputs = "text" | |
) | |
gradio_interface.launch() | |
# remind_val = ["create a reminder", "create reminder", "remind me"] | |
# if remind_val in data: | |
# return "Reminder created!" | |
# else: | |
# return bardChat(data) | |
# with gr.Blocks() as demo: | |
# chatbot = gr.Chatbot() | |
# msg = gr.Textbox() | |
# clear = gr.ClearButton([msg, chatbot]) | |
# def respond(message, chat_history): | |
# bot_message = responsenew(message) | |
# chat_history.append((message, bot_message)) | |
# time.sleep(2) | |
# return "", chat_history | |
# msg.submit(respond, [msg, chatbot], [msg, chatbot]) | |
# if __name__ == "__main__": | |
# demo.launch() |