RAG - Retrieval Augmented Generation. This is the Jacked initiative for that within the PHP ecosystem.
This solution streams back the text chunks of the response coming from the LLM. There is a WebSocket experiment that accomplishes the same in the branch websocket-experiment.
Sample credentials:
Username: jekyll@example.com
Password: password
Before start you need to make sure you have the following dependencies:
- php8.2 or higher
- php openswoole extension
- docker (for postgres db)
Clone the repository:
git clone https://github.com/Jacked-PHP/insight my-project
Then cd my-project
Install dependencies (php composer and npm):
composer install
npm install
npm run build
(or npm run dev
if you are developing and want the hot reload)
Prepare the database:
docker-compose up -d
Make sure your .env
is properly set:
- have db credentials
- app key (
php artisan key:generate
) - app url (default is
http://localhost:8080
)
Then run the migrations:
php artisan migrate
Run the server (this is running jacked server):
php artisan jacked:serve
Now you can visit http://localhost:8080
and see the application running.
The free opensource solution considers the following:
This application uses the following embedding solution:
- ollama embedding model: mxbai-embed-large