Skip to content

Jabba is a Chat AI Bot | is called Jabba because in British English is pronunced the same as jabber and I found it funny :)

License

Notifications You must be signed in to change notification settings

Koubae/jabba-ai

Repository files navigation

jabba-ai

Jabba is a Chat AI Bot | is called Jabba because in British English is pronounced the same as jabber and I found it funny :)

The Chat App is a very simple AI model train to chat by using ollama. Both openchat | neural-chat are available but I found neural-chat faster and more suited to this project.

Check also The Architecture

Is composed of the following projects:

Single Chat Chat GPT style

Multi Chat , multiple member in the same chat!

Message Raw content

Quick Start

1) Clone this project and each module

git clone [email protected]:Koubae/jabba-ai.git
cd jabba-ai
make clone-submodules

To update later the submodules

make update-submodules

Next open 4 terminals

2) Run dependencies

This will start datatabases, see Dependency containers

make up

Wait a bit for the databases to be fully up

2.b) Create MySQL database
# enter mysql db
make mysql-shell

Copy paste chat-identity/schema.sql and paste it in the terminal.

2.c) Create MongoDB Indexes

in case you need go

# 1. Remove any existing Go installation (optional but recommended)
sudo rm -rf /usr/local/go

# 2. Download Go 1.24.4 from the official website
wget https://go.dev/dl/go1.24.4.linux-amd64.tar.gz

# 3. Extract it to /usr/local
sudo tar -C /usr/local -xzf go1.24.4.linux-amd64.tar.gz

# 4. Add Go to your PATH
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc

# 5. Verify installation
go version
cd jabba-ai-chat-app
make script-prepare-mongo-database

3) Spin up bot

make up-bot

4) Spin up Chat App services (which are 3 services)

make up-chat-up

3) Spin up UI

make up-ui-up

Go to http://localhost:3000

Development

Dependency containers

To work locally and avoid having 2k containers for same services, there is a docker-compose.yml with services where each micro-service can use and be shared.

Also the main network is defined there.

Cache (Redis)

# cache
make redis-up
make redis-down
make redis-down-clean-up

Database (mysql)

make mysql-up
make mysql-down
make mysql-down-clean-up
make mysql-shell

Database (MongoDB)

make mongo-up
make mongo-down
make mongo-down-clean-up

Go to http://localhost:18081/

About

Jabba is a Chat AI Bot | is called Jabba because in British English is pronunced the same as jabber and I found it funny :)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published