Skip to content

Commit

Permalink
Added Docs
Browse files Browse the repository at this point in the history
  • Loading branch information
Charles Calapini committed Dec 3, 2023
1 parent 43448e9 commit 4f5f678
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 9 deletions.
23 changes: 23 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# AI Assistant Application

This application is a Streamlit interface for interacting with OpenAI's AI assistants. It allows users to create assistants, upload files to them, send them messages, and view their responses.

Here's a high-level overview of what each function does:

- `init()`: Initializes session state variables.
- `set_apikey()`: Allows the user to input their OpenAI API key.
- `config(client)`: Fetches a list of assistants and returns the selected assistant's ID.
- `upload_file(client, assistant_id, uploaded_file)`: Uploads a file to the selected assistant.
- `assistant_handler(client, assistant_id)`: Handles assistant updates, including name, instructions, model, and file management.
- `create_assistant(client)`: Creates a new assistant with a given name, instructions, and model.
- `chat_prompt(client, assistant_option)`: Handles the chat interface, allowing the user to send messages to the assistant and receive responses.
- `chat_display(client)`: Displays the chat history, including any images returned by the assistant.
- `main()`: The main function that runs the Streamlit application. It handles API key input, assistant selection, and chat initiation.

## Installation

1. Clone the repository: `git clone https://github.com/calapsss/assistants-api-easy.git`
2. Navigate to `assistants-api-easy` directory: `cd assistants-api-easy`
3. You can install the package `poetry install`
4. Navigate to frontend folder: `cd frontend`
5. Run with Poetry: `poetry run streamlit run app.py`
15 changes: 6 additions & 9 deletions frontend/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,6 @@ def init():
if "thread_id" not in st.session_state:
st.session_state.thread_id = None



def set_apikey():
st.sidebar.header('Configure')
api_key = st.sidebar.text_input("Enter your OpenAI API key", type="password")
Expand Down Expand Up @@ -188,18 +186,17 @@ def chat_prompt(client, assistant_option):
st.empty()
chat_display(client)



def chat_display(client):
st.session_state.messages = client.beta.threads.messages.list(
thread_id=st.session_state.thread_id
).data

x = 0
for message in st.session_state.messages:
print(x)
print(message)
x += 1
#Used this for debugging
# x = 0
# for message in st.session_state.messages:
# print(x)
# print(message)
# x += 1

for message in reversed(st.session_state.messages):
if message.role in ["user", "assistant"]:
Expand Down

0 comments on commit 4f5f678

Please sign in to comment.