The objective of this spike is to research and propose a solution to unify the conversation history management system used in our Kyma Companion project. Currently, we are using both Redis LangGraph Checkpointers and Redis LangChain History. The goal is to evaluate and propose the use of Redis LangGraph Checkpointers for handling all conversation history, removing the use of Redis LangChain History entirely. The proposed solution should consider various aspects like token usage, performance, and functionality across different scenarios and endpoints.
Timebox
5 working days
Tasks
Current System Analysis:
Analyze how conversation history is currently being managed across all three main endpoints.
Understand the differences between Redis LangGraph Checkpointers and Redis LangChain History in terms of performance, functionality, and token usage.
Impact on Endpoints:
Investigate the potential impact of switching entirely to Redis LangGraph Checkpointers across all three endpoints.
Ensure the system continues to function properly when users switch between tabs or different views.
Identify any edge cases where conversation history may not be handled correctly with Redis LangGraph Checkpointers (e.g., restoring states or managing long-term sessions).
Performance and Token Usage Evaluation:
Propose a strategy which maintains a balance between efficient performance and reasonable token usage
Solution Proposal:
Propose a solution to unify the conversation history using Redis LangGraph Checkpointers as the sole history management system.
Ensure the solution is scalable and able to handle the switching of tabs
Consider how this change will impact state management and checkpointing within the agents.
Team Discussion & Agreement:
Present the proposed solution to the team.
Discuss and iterate on the proposal based on feedback from the team, ensuring that it aligns with both technical and business goals.
Architecture Update:
Once the solution is agreed upon, update the architecture diagram to reflect the changes in conversation history management.
Update the codebase with the solution
Ensure that all relevant modules are updated to remove the old Redis LangChain History management and replace it with Redis LangGraph Checkpointers.
Deliverables
A solution for unifying conversation history management using Redis LangGraph Checkpointers.
Updated architecture diagram reflecting the new approach.
Agreement from the team on the proposed solution.
Success Criteria
A clear and feasible solution is proposed and agreed upon for unifying conversation history management.
The solution maintains a balance between performance and token usage.
The system continues to function correctly across all endpoints and in scenarios involving switching between tabs or views.
The architecture diagram and codebase are updated to reflect the changes.
Goal
The objective of this spike is to research and propose a solution to unify the conversation history management system used in our Kyma Companion project. Currently, we are using both Redis LangGraph Checkpointers and Redis LangChain History. The goal is to evaluate and propose the use of Redis LangGraph Checkpointers for handling all conversation history, removing the use of Redis LangChain History entirely. The proposed solution should consider various aspects like token usage, performance, and functionality across different scenarios and endpoints.
Timebox
5 working days
Tasks
Current System Analysis:
Impact on Endpoints:
Performance and Token Usage Evaluation:
Solution Proposal:
Team Discussion & Agreement:
Architecture Update:
Update the codebase with the solution
Deliverables
Success Criteria