This commit updates the dependencies in the pyproject.toml file to their latest versions. Specifically, fastapi is updated to version 0.97.0, uvicorn is updated to version 0.22.0, typer is updated to version 0.9.0, rich is updated to version 13.4.2, llama-cpp-python is updated to version ~0.1.0, pyarrow is updated to version 12.0.0, and weaviate-client is updated to version 3.21.0.
The prediction still required an old chat_history attirbute. This should
fix it.
Tested with Buffer Memory and achieved the correct results.
A more robust approach should be considered, though.
Fixes#500
This script was used to test it:
```python
import requests
from typing import Optional
BASE_API_URL = "http://127.0.0.1:7860/api/v1/predict"
FLOW_ID = "245e1a54-86f9-4934-bf89-bea2c7ab863d" # you should change this to your id
# You can tweak the flow by adding a tweaks dictionary
# e.g {"OpenAI-XXXXX": {"model_name": "gpt-4"}}
TWEAKS = {
"ConversationBufferMemory-pixS4": {},
"ConversationChain-IxmJV": {},
"ChatOpenAI-7AcF4": {},
}
def run_flow(message: str, flow_id: str, tweaks: Optional[dict] = None) -> dict:
"""
Run a flow with a given message and optional tweaks.
:param message: The message to send to the flow
:param flow_id: The ID of the flow to run
:param tweaks: Optional tweaks to customize the flow
:return: The JSON response from the flow
"""
api_url = f"{BASE_API_URL}/{flow_id}"
payload = {"message": message}
if tweaks:
payload["tweaks"] = tweaks
response = requests.post(api_url, json=payload)
return response.json()
# Setup any tweaks you want to apply to the flow
response = run_flow("Hello, I'm Gabriel", flow_id=FLOW_ID, tweaks=TWEAKS)
print(response["result"])
response = run_flow("What is my name?", flow_id=FLOW_ID, tweaks=TWEAKS)
print(response["result"])
```
The prepare-commit-msg git hook was removed from the frontend directory. This hook was not being used and was not necessary for the project's development workflow.
The prepare-commit-msg git hook was removed from the frontend directory. This hook was not being used and was not necessary for the project's development workflow.
The langchain dependency was updated to version 0.0.202 to ensure compatibility with the latest version of the package. The package version was increased from 0.0.88 to 0.1.0 to reflect the addition of new features and improvements.
🔼 chore(pyproject.toml): update langchain dependency to version 0.0.202
The conditional statement was checking if "nodes" is in "graph_data['data']" instead of checking if "nodes" is in "graph_data". This fix ensures that the correct data is processed and avoids potential errors.
The only change in this commit is the removal of an unnecessary newline at the beginning of the file. This improves the code's readability and consistency.
The types-cachetools package was added to the dev dependencies to provide type annotations for the cachetools package. This improves the codebase's maintainability and readability by providing better type hints.
The changes in this commit are purely cosmetic. The code has been reformatted to improve readability and consistency. Unnecessary lines have been removed to make the code more concise.
🔥 chore(main.py): remove unused imports and variables
The `flow_data_store` variable in `chat.py` was missing a type hint, which was added to improve code readability and maintainability. In `main.py`, unused imports and variables were removed to improve code cleanliness.
The changes in headerComponent remove unused imports and update the header text to use a constant instead of a hardcoded string. The constant is added in constants.tsx. The MainPage component is updated to use the constant for the header text in the user projects section. This improves code readability and maintainability.
🎨 style(headerComponent): remove unused imports and update header text to use constant
✨ feat(constants.tsx): add constant for header text in user projects section
✨ feat(main.py): remove static_path argument from create_app function
The fix to the issue where the app was not serving the index.html file when a 404 error occurred was done by adding an exception handler to the app that returns the index.html file when a 404 error occurs. The create_app function was modified to remove the static_path argument as it was not being used in the function.
The keys in the types object were reversed to avoid overlap with the tool world. This was done by modifying the reduce function in the TypesProvider component.
✨ feat(__main__.py): add support for health check endpoint and use it to check server status
The `serve` function now checks if the specified port is in use and gets a free port if it is. This ensures that the server can run on a free port and avoids conflicts with other running applications. The `serve` function also now uses a health check endpoint to check the status of the server. The `setup_static_files` function now takes a `Path` object instead of a string for the static files directory. The `create_app` function now takes a `Path` object instead of a string for the static files directory.
Update the search placeholder to be more general, from 'Search Nodes' to 'Search', in the extra sidebar component, and update the collection description from 'Download or upload your complete project collection' to 'Download or upload your collection' in the main page.
The API URL path was incorrectly spelled as "/ap1/v1/predict" instead of "/api/v1/predict". This commit fixes the typo to ensure that the correct API endpoint is used.
Changed the error message in the build trigger component to clarify which components need to be checked before retrying. Updated the list to include instructions on how to inspect the component status.
🐛 fix(process.py): fix KeyError when processing tweaks on graph_data with missing "data" key
The try-except block added in endpoints.py catches any exceptions that occur when processing tweaks and logs them to the logger. This helps with debugging and identifying issues with the processing of tweaks. In process.py, a KeyError was fixed by checking if the "data" key exists in the graph_data dictionary before accessing the "nodes" key.
refactor(App.tsx): remove redundant code that initializes the version state variable and fetches the version number from the API in FlowPage component instead
The menu bar has been refactored to improve readability and make it easier to add new options in the future. A new option has been added to create a new flow. The "Edit" label has been changed to "Options" to better reflect the purpose of the dropdown menu.