Lang / app.py
zxcgqq's picture
Update app.py
7f395c1
raw
history blame
1.54 kB
import gradio as gr
from langchain.agents import initialize_agent
from langchain.llms import OpenAI
from gradio_tools.tools import (StableDiffusionTool, ImageCaptioningTool, StableDiffusionPromptGeneratorTool,
TextToVideoTool)
from langchain.memory import ConversationBufferMemory
llm = OpenAI(openai_api_key="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",temperature=0)
memory = ConversationBufferMemory(memory_key="chat_history")
tools = [StableDiffusionTool().langchain, ImageCaptioningTool().langchain,
StableDiffusionPromptGeneratorTool().langchain, TextToVideoTool().langchain]
agent = initialize_agent(tools, llm, memory=memory, agent="conversational-react-description", verbose=True)
def run_text(text, state):
output = agent.run(input=(text))
print(memory)
print(output)
return [(text,output)]
with gr.Blocks(css="#chatbot {overflow:auto; height:500px;}") as demo:
chatbot = gr.Chatbot(elem_id="chatbot",show_label=False)
state = gr.State([])
with gr.Row() as input_raws:
with gr.Column(scale=0.6):
txt = gr.Textbox(show_label=False).style(container=False)
with gr.Column(scale=0.20, min_width=0):
run = gr.Button("🏃‍♂️Run")
with gr.Column(scale=0.20, min_width=0):
clear = gr.Button("🔄Clear️")
txt.submit(run_text, [txt, state], [chatbot])
run.click(run_text, [txt, state], [chatbot])
demo.queue(concurrency_count=10).launch(server_name="0.0.0.0", server_port=7860)