miziodel / cheshire-cat

Open source and customizable AI architecture

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Cheshire-Cat (Stregatto)

Logo

Customizable AI architecture

What is this?

If you want to build a custom AI on top of a language model, the Cat can help you:

  • 🌍 Language model agnostic (works with OpenAI, Cohere, HuggingFace models, custom)
  • 🐘 Long term memory
  • πŸ”§ Can use external tools (APIs, custom python code, other models)
  • πŸ“„ Can ingest documents (.pdf, .txt, .md)
  • πŸš€ Extendible via plugins
  • πŸ‹ 100% dockerized
  • πŸ‘©β€πŸ‘§β€πŸ‘¦ Active Discord community

This project is growing fast, refactorings and code changes happens very often, join the Issues to help!

Quickstart

Install

You just need docker and docker-compose installed on your system. Clone the repo:

git clone https://github.com/pieroit/cheshire-cat.git

Enter the created folder:

cd cheshire-cat

Create your .env file by copying and renaming .env_example:

On linux/mac

cp .env.example .env

On Windows

copy .env.example .env

After that you can run:

docker-compose up

The first time (only) it will take several minutes, as the images occupy a few GBs.

As a first thing, the Cat will ask you to configure your favourite language model. It can be done directly via the interface in the Settings page.

Enjoy the Cat!

When you're done, remember to CTRL+c in the terminal and

docker-compose down

Update

From time to time it is a good idea to update the Cat:

docker-compose down
git pull origin main
docker-compose build --no-cache
docker-compose up

(back to top)

Docs and Resources

Roadmap

Here's the plan and vision for the development of the ChechireCat v1. For the full Roadmap, check out here. Whilst for the current progress of development, take a look at the projects marked as open.

Contributing

For suggestions, open an issue and we can reason about it. If you want to contribute with code, fork the repo and create a pull request. Before submitting any new pull request, make sure it either fixes an existing issue or is something we have discussed in our Roadmap.

Simple contributions

You can start by:

  • Making tutorials and docs
  • Sharing on social media

If you have any ideas on how to improve the project or if you'd like to suggest new developments, please join our community on Discord

Code contribution

  1. Try out the Cat
  2. Fork the Project
  3. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  4. Commit your Changes (git commit -m 'Add some AmazingFeature')
  5. Push to the Branch (git push origin feature/AmazingFeature)
  6. Open a Pull Request (if it contains lots of code, please discuss it beforehand opening a issue)

Don't forget to give the project a star ⭐! Thanks again!πŸ™

Naming Convention

This project follows the PEP8 naming convention for all backend code. Please ensure that your contributions adhere to this standard.

Credits

Logo image generated with MidJourney, prompted by Edgars Romanovskis

Which way to go?

(back to top)

Wikipedia picture of the Cheshire Cat

"Would you tell me, please, which way I ought to go from here?"
"That depends a good deal on where you want to get to," said the Cat.
"I don't much care where--" said Alice.
"Then it doesn't matter which way you go," said the Cat.

(Alice's Adventures in Wonderland - Lewis Carroll)

About

Open source and customizable AI architecture

License:GNU General Public License v3.0


Languages

Language:TypeScript 49.7%Language:Python 37.9%Language:SCSS 11.9%Language:HTML 0.3%Language:Dockerfile 0.3%Language:CSS 0.1%