InferGPT's mission is to be an AI that knows you better than your best friend. A system that personalises to who you are and what you care about. We want to build something that can:
🔗 Ingest data about you from various sources (with your permission of course)
💡 Have deep and personal conversations without having to answer lots of questions - it will already infer your needs, make personalised recommendations and remember all your conversations.
🎯 Help you set and keep track of goals.
🏗️ Carry out tasks: this is an agent after all - it will go away and action stuff for you!
🔮 Predict what you need before you need it!
We aim to be able to answer complex questions that require a deep understanding of someone to effectively answer, such as:
- How can i be better with my finances?
- I'm trying to lose weight but its not working, why?
- I'm learning to code, can you create a tailored learning plan?
Want more context about how it works, our roadmap and documentation? Check out the wiki
For further reading on InferGPT's components, see any of the following
See the contribution guide for further guidance. Note this guide is in progress!
In the top-right corner of the page, click Fork.
On the next page, select your GitHub account to create the fork under. Wait for the forking process to complete. You now have a copy of the repository in your GitHub account.
To clone the repository, you need to have Git installed on your system. Use the official Git installer or follow the terminal commands guide.
Once you have Git installed, follow these steps:
- Open your preferred terminal.
- Navigate to the directory where you want to clone the repository.
- Run the git clone command for the fork you just created.
There is a example property file .env.example
at the root of this project.
Configuration steps:
- Copy the
.env.example
file at the root of this project. - Rename the copied file as
.env
. - Update the
.env
file with your wanted configuration following the guidance in the file.
There are a few ways to run the application:
- Docker Compose - run the entire application within Docker containers configured by Docker Compose.
- Locally - run local instances of the front-end, back-end and a neo4j database.
- Individual Docker Containers - you may choose to run individual components within a Docker container.
For ease of use, we would recommended that you run the application using Docker Compose.
For instructions on how to run indivdual components locally or within Docker containers, refer to appropriate READMEs:
- Ensure Docker is installed and running. The easiest way to do this is by using the Docker Desktop app (install it from docker.com if you don't have it).
- In the root directory of the project run
docker compose up
Warning
the first time you do this it may take longer as the compose file builds the images.
To re-build the docker images following any changes, run
docker compose build
first or usedocker compose up --build
.
For ease of development, after running docker compose build
you can run docker compose up --watch
. Watch mode allows for the docker container to rebuild when you save a file. This means that it is not required to take down the service after every change to see these implemented. This option is recommended.
- View the frontend at localhost:8650
- View the Neo4j Browser at localhost:7474
- Type the phrase "healthcheck" into the frontend UI to test if everything is connected successfully
Coming
See LICENCE.md