https://github.com/timescale/tsv-timemachine
Sample application for time aware RAG with Streamlit, LlamaIndex and Timescale Vector. Learn more at https://www.timescale.com/ai
https://github.com/timescale/tsv-timemachine
Last synced: 8 months ago
JSON representation
Sample application for time aware RAG with Streamlit, LlamaIndex and Timescale Vector. Learn more at https://www.timescale.com/ai
- Host: GitHub
- URL: https://github.com/timescale/tsv-timemachine
- Owner: timescale
- License: apache-2.0
- Created: 2023-11-14T02:58:22.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-14T13:45:49.000Z (over 1 year ago)
- Last Synced: 2025-05-07T04:58:51.116Z (8 months ago)
- Language: Python
- Size: 595 KB
- Stars: 17
- Watchers: 4
- Forks: 12
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Welcome to the Timescale Vector Time Machine
Chat with the git history of any git repo.
- Built with OpenAI, LlamaIndex, Streamlit and Timescale Vector.
- TSV Time Machine is an example of time aware retrieval augmented generation. Time aware retrieval involves RAG with a retrieval step that searches for vectors that are semantically most similar to a user query and that also fall within a specified time range.
- TSV Time Machine enables you to go back in time and chat with the commit history of any GitHub repository. Each Git commit entry has a timestamp associated with it, as well as a natural language message and other metadata (e.g author, commit, hash etc).
See a live demo of the app [here](https://pg-timemachine.streamlit.app/).
- The demo is pre-loaded with the history from PostgreSQL. The demo disables loading data from other git repos. To load data, launch your own fork.
## Get a free PostgreSQL vector database to use with this app
Spin up a [free cloud PostgreSQL database](https://console.cloud.timescale.com/signup?utm_campaign=vectorlaunch&utm_source=github&utm_medium=direct) with Timescale Vector to use in this sample app. You'll get 90 days free by signing up with the link above.
## Launching a fork.
To load data and try the demo on any other git repo, simply:
1) Fork the repo
2) Launch your own streamlit app.
3) Set the following [streamlit secrets](https://docs.streamlit.io/streamlit-community-cloud/deploy-your-app/secrets-management):
- `OPENAI_API_KEY` - Your openAI key.
- `TIMESCALE_SERVICE_URL` - Your Timescale Service URL. Sign up for an account [here](https://www.timescale.com/ai).
- `ENABLE_LOAD=1` - Enables Loading Data