Git-ter is short for "Feather: Rob a Github", and has the same pronunciation as "Feather" in Korean.
Git-ter is an analytical chatbot development framework dedicated to GitHub.
Git-ter's goal is to increase the productivity and efficiency of development by helping shorten the time and effort to study through chatbot applications.
- ChatGPT cannot learn the latest framework without web access extensions. So we created Git-ter, an application that can complement that.
- Using Langchain, which deals with Large Language Model(LLM). You can ask and answer specialized questions about the repository you entered.
- Store and retrieve data at high speed. Use FAISS, which is a Langchain vector store.
Anyone who is interested in programming looks at the GitHub repository.
However, if there is too much content in the Repository, or if there is not enough explanation about the code, it's difficult to understand what it is. Or if you're new to coding, you're at a loss where to start looking at which files.
Git-ter is not just a chit-chat chatbot, provides file structure, code analysis, and summarization within the repository to make the content of the GitHub repository of interest easier to learn.
GitHub RestAPI, LangChain, FAISS(Vector DB) , Openai, and Streamlit.
- Clone the repo or download the ZIP
git clone [github https url]
- Install virtual environment and packages
This repository runs for Python==3.9.13
1. conda create -n ENV_NAME python=3.9.13
2. conda activate ENV_NAME
3. pip install -r requirements.txt
- Set up your
.env
file
- make ".streamlit/secrets.toml" file
GITHUB_NAME =
GITHUB_TOKEN =
OPENAI_API_KEY =
- Visit openai to retrieve API keys and insert into your
.streamlit/secrets.toml
file. - Visit github to create github access token
✨ Our application recommends using Chrome.
✨ If you run into errors, Open an issue.
✨ When you install and test the repository, you should change all of the names and tokens to GITHUB_NAME
and GITHUB_TOKEN
at get_info_from_api.py.
# Example : get_info_from_api.py
# BEFORE
response = requests.get(url,auth=(st.secrets["GITHUB_NAME_1"], st.secrets["GITHUB_TOKEN_1"]))
# AFTER
response = requests.get(url,auth=(st.secrets["GITHUB_NAME"], st.secrets["GITHUB_TOKEN"]))
wonyoung | jaehyeong | sangmin | sangHui |