Skip to main content

Chino is a terminal based chatbot based on ChatGPT.

Project description

Chino 🌸

Chino is a terminal-based chatbot. Powered by OpenAI. Uses RAG to generate

Version Code Coverage License GitHub Issues GitHub Pull Requests Release Date Commits Last Commit Contributors Repo Size Code Size Code Style: Black

Material Bread logo


🤔 Pre-requisites

  • python3
  • pdm

🐍 Python Version Support

This project is designed to be compatible with specific versions of Python for optimal performance and stability.

Supported Python Version

  • Python 3.11.7

❗️ For the best experience and performance, it is recommended to use the version mentioned above.

Before diving into the project, ensure that you have the correct Python version installed. To check the version of Python you currently have, execute the following command in your terminal:

python --version

🐍 Installing Python 3.11.7 with pyenv

Protip: Managing multiple Python versions is a breeze with pyenv. It allows you to seamlessly switch between different Python versions without the need to reinstall them.

If you haven't installed pyenv yet, follow their official guide to set it up.

Once you have pyenv ready, install the recommended Python version by running:

pyenv install 3.11.7

When you navigate to this project's directory in the future, pyenv will automatically select the recommended Python version, thanks to the .python-version file in the project root.

Installation 🛠️

Coming soon!

📦 Setup

Local setup 🛠️ with Docker 🐳

Coming soon!

Local setup 🛠️ without Docker 🐳

Setting Up the Project with PDM

PDM (Python Development Master) is utilized for dependency management in this project. To set up and run the project:

  • Installing PDM: Before you begin, ensure you have PDM installed. If not, refer to the official documentation to install PDM.

  • Clone the Repository: Get the project source code from GitHub:

    git clone https://github.com/SAMAD101/Chino.git
    
  • Navigate to the Project Directory:

    cd Chino
    
  • Install Dependencies: Use PDM to install the project's dependencies:

    pdm install
    

    To install dev dependencies:

    pdm install -G dev
    
  • Start the Project: Use PDM to run the project:

    pdm run start
    

Other commands are in pyproject.toml [tool.pdm.scripts]

⚠️ Note:

You will need an OpenAI API key to make it work. Get your API key from OpenAI website and set it as an environment variable:

export OPENAI_API_KEY="<your_api_key>"

Usage 📖

For using the Retrieval Augmented Generation (RAG) features, follow these steps:

  1. You will need to put your documents in the data/ directory in the root of the project. Create data/ directory in the root of the project if it doesn't exist.

    mkdir data
    
  2. Create a directory in the root of the project called chroma/. This directory will contain the OpenAI embeddings (embedding vectors) for the documents.

  3. Process the documents and create the embeddings using the following command:

    pdm run process
    

Using Query mode:

Once your documents are processed. You can use the query mode to give prompts for the documents [RAG].

pdm run -q

or, you can use \q: before your prompt to use it in query mode.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chinoai-0.1.0.tar.gz (9.9 kB view hashes)

Uploaded Source

Built Distribution

chinoai-0.1.0-py3-none-any.whl (8.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page