MCPcopy Create free account
hub / github.com/CL-lau/SQL-GPT / file_chat

Function file_chat

app.py:12–39  ·  view source on GitHub ↗
(fileId: Optional[str], fileGPT: Optional[FileGPT] = None)

Source from the content-addressed store, hash-verified

10
11
12def file_chat(fileId: Optional[str], fileGPT: Optional[FileGPT] = None):
13 # client = OpenAI(openai_api_key=os.environ.get("OPENAI_API_KEY"))
14
15 if fileGPT is None:
16 fileGPT = FileGPT()
17
18 if "openai_model" not in st.session_state:
19 st.session_state["openai_model"] = "gpt-3.5-turbo"
20
21 if "messages" not in st.session_state:
22 # TODO 加载历史会话
23 st.session_state.messages = []
24
25 for message in st.session_state.messages:
26 with st.chat_message(message["role"]):
27 st.markdown(message["content"])
28
29 if question := st.chat_input("What is up?"):
30 st.session_state.messages.append({"role": "user", "content": question})
31 with st.chat_message("user"):
32 st.markdown(question)
33
34 with st.chat_message("assistant"):
35 message_placeholder = st.empty()
36 full_response = fileGPT.askQuestion(question=question, fileID=fileId)
37
38 message_placeholder.markdown(full_response)
39 st.session_state.messages.append({"role": "assistant", "content": full_response})
40
41
42def sql_chat(dbId: Optional[str], sqlGPT: Optional[SqlGPT] = None):

Callers 1

mainFunction · 0.85

Calls 2

askQuestionMethod · 0.95
FileGPTClass · 0.90

Tested by

no test coverage detected