Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

4.0.0 tavily #76

Closed
wants to merge 29 commits into from
Closed

4.0.0 tavily #76

wants to merge 29 commits into from

Conversation

Daethyra
Copy link
Owner

No description provided.

Bumped the project version from 3.4.5 to 4.0.0 in pyproject.toml to reflect significant changes and improvements made in this release. This change aligns with the latest updates and features introduced in the application, marking a major milestone for the FreeStream project.
- Moved chat model classes into new module for streamlined importing across Streamlit Pages.
Reorganized the import statements for chat models in "1_🗦_RAGbot.py" to improve readability.
- Added a new Streamlit page for the TavilySearch chatbot, allowing users to select a chat model and interact with the conversational retrieval agent. The page includes setup for memory, tools like TavilySearch, and agent configuration. Users can ask questions and receive responses from the agent, with messages being added to the chat history.
Updated the LangChain project versions for RAGbot and TavilyAgent to v4.0.0, ensuring consistency across the project. Also added environment variable initialization for LangSmith tracing in TavilyAgent.

These changes are necessary to align with the latest project requirements and maintain compatibility with other components relying on these versions.
Removed redundant chat history messages from 3_TavilyAgent.py to streamline the conversation flow and improve user experience. The previous implementation added unnecessary clutter to the chat interface, which has now been addressed by this change.
Reformatted TavilyAgent.py for improved readability and maintainability. Split agent initialization parameters onto separate lines for clarity and consistency.

Also removed improper parameter for `agent`
Renamed the variable 'tools' to 'toolbox' for clarity and consistency in the TavilyAgent.py file. This change ensures that the naming aligns with the purpose of the variable and improves code readability.
Restructured the chat model dictionary to improve organization and readability. Moved the dictionary from 'chat_models.py' to '1_🗦_RAGbot.py' for better encapsulation and easier maintenance. This change does not affect functionality but enhances code maintainability and clarity.
- Refactored the chat model configuration to use a dictionary with keys representing chat model classes. This change allows for easier management and addition of new chat models in the future. Also, added a dropdown menu for selecting a chat model and set up the Streamlit callback handler accordingly.
Reorganized import statements in page files and removed unused code for better code organization and maintenance.
Refactored import statements and added new dependencies for chat functionality. Updated import paths and added new modules for chat functionality, including ChatAnthropic, ChatGoogleGenerativeAI, and ChatOpenAI. Also adjusted utility functions related to document retrieval.
Added a sidebar temperature slider, updated chatbot configuration widgets in TavilyAgent.py for freestream.
Removed unnecessary comments and whitespace from the TavilyAgent.py file in the freestream directory to improve code readability and maintainability.
- Integrated TavilySearch tool for search functionality.
- Added a file-upload button to allow users to upload PDF or text files.
- Introduced a sidebar temperature slider for configuring the LLM temperature.
- Updated agent creation to include the new tools and configurations.
Added langchainhub "^0.1.15" to the project dependencies in pyproject.toml, ensuring compatibility with the latest features and updates provided by langchainhub library. This addition enhances the functionality of the project and aligns it with the latest developments in the langchainhub ecosystem.
Updated TavilyAgent.py to use the new `invoke` method of `agent_executor` for improved functionality and performance. This change allows for passing additional parameters such as tool names and chat history, enhancing the overall user experience.
- Added a new conversational retriever tool to the freestream application, allowing users to search a FAISS retriever for relevant information from their uploaded documents. This tool enhances user experience by providing more comprehensive and personalized responses based on the conversation context and the user's focus. The tool has been integrated into the existing toolbox of the application.

Ref docs: https://python.langchain.com/docs/use_cases/question_answering/conversational_retrieval_agents
Renamed the Streamlit callback variable from `st_callback` to `agent_callback` for better clarity and consistency with the functionality it represents.
Added a configurator to the AgentExecutor class in order to allow more flexible configuration of the agent's behavior. This change enables the setting of various callbacks and expands the potential for customization within the agent's execution process.
@Daethyra Daethyra marked this pull request as draft March 30, 2024 04:38
@Daethyra Daethyra closed this Mar 30, 2024
@Daethyra Daethyra deleted the 4.0.0-tavily branch March 31, 2024 04:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

1 participant