Technologies used:
Python: The primary programming language used across all files.
LangChain: A framework for building AI applications, used extensively in main.py.
OpenAI: Used for embeddings and chat functionality (ChatOpenAI, OpenAIEmbeddings).
AstraDB: A vector database used for storing and retrieving embeddings (AstraDBVectorStore).
GitHub API: Used to fetch GitHub issues in github.py.
Requests: A Python library for making HTTP requests, used in github.py.
dotenv: Used for loading environment variables from a .env file.
os: Python's built-in module for interacting with the operating system.
LangChain Hub: Used to pull prompts (hub.pull("hwchase17/openai-functions-agent")).
LangChain Agents: Utilized for creating and executing AI agents.
LangChain Tools: Used to create custom tools like note_tool and retriever_tool.
File I/O: Used in note.py for writing notes to a local file.
Vector Search: Implemented using AstraDB for similarity search.
Natural Language Processing: Implied by the use of language models and embeddings.
Command Line Interface: The project uses a simple CLI for user interaction.