AskMe_langchain / app.py
heymenn's picture
Update app.py
9f14c91 verified
raw
history blame contribute delete
No virus
1.3 kB
import gradio as gr
import subprocess
import sys
def install(package):
subprocess.check_call([sys.executable, "-m", "pip", "install", package])
install("langchain_community")
install("langchain_openai")
install("langchain")
import os
from langchain_community.graphs import Neo4jGraph
from langchain.chains import GraphCypherQAChain
from langchain_openai import ChatOpenAI
os.environ["NEO4J_URI"] = "neo4j://localhost:7687"
os.environ["NEO4J_USERNAME"] = "neo4j"
os.environ["NEO4J_PASSWORD"] = "password"
def respond(
message
):
graph = Neo4jGraph()
llm = ChatOpenAI(model="gpt-4o", temperature=0)
chain = GraphCypherQAChain.from_llm(graph=graph, llm=llm, verbose=True)
response = chain.invoke({"query": message})
return response['result']
"""
For information on how to customize the ChatInterface, peruse the gradio docs: https://www.gradio.app/docs/chatinterface
"""
with gr.Blocks() as demo:
with gr.Tab("Ask my neo4j database"):
gr.Markdown("### Talk to me !")
message = gr.Dropdown(label="Your message")
btn_submit = gr.Button("Submit")
result_ta = gr.TextArea("Here you will find your answer !")
btn_submit.click(respond, inputs=message, outputs=result_ta)
demo.launch()