Skip to content

nhattdm/Geminal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✨ Geminal ✨

A Chatbot on Terminal powered by Google Generative AI.

🎥 Demo

demo.mp4

🎯 Why Geminal?

Windows has integrated Copilot into its own system, but Linux does not. Therefore, I developed Geminal, a chatbot for the terminal powered by Google's Generative AI, specifically designed for Linux programmers.

Here's why you might choose Geminal:

  • Focus on your code: Geminal integrates seamlessly into your terminal, allowing you to ask questions about your code without leaving your workflow.
  • Open source and free to use: Geminal is open source and completely free to use, making it an accessible option for all programmers.
  • Fast and efficient: Geminal utilizes Gemini Pro, a powerful AI assistant, to provide you with accurate and timely answers.
  • Tailored to Linux users: Geminal is designed specifically for Linux users, ensuring compatibility with your operating system.
  • Supports multiple languages: Geminal supports a wide range of programming languages, making it a versatile tool for programmers of all backgrounds.
  • Easy to use: Geminal's intuitive interface and simple commands make it easy to get started and use effectively.
  • Enhances productivity: Geminal helps you save time and effort by providing instant assistance, allowing you to focus on the task at hand.

📌 Minimum Requirements

⚡ Quick Installation

pip install "https://github.com/nhattdm/Geminal/releases/download/v0.1.0/geminal-0.1.0.tar.gz"

🦾 Supported Model Versions

Model name Note
gemini-pro gemini-pro is an alias for gemini-1.0-pro
models/gemini-pro model code of Gemini 1.0 Pro
gemini-1.0-pro-latest latest version of Gemini 1.0 Pro
gemini-1.0-pro latest stable version of Gemini 1.0 Pro
gemini-1.0-pro-001 stable version of Gemini 1.0 Pro
models/gemini-1.5-pro-latest model code of Gemini 1.5 Pro (preview only)

For more information, please refer to this document.

❓ Usage

Please, make sure that you have set GOOGLE_API_KEY and MODEL_NAME as environment variables.

Usage: geminal [-v] [-h] [PROMPT]

Geminal is a chatbot on Terminal powered by Google Generative AI.

options:
    -h, --help      Show this help message and exit.
    -v, --version   Show version and exit.

prompt:
    Your prompt can be added after `geminal`. Example: geminal who are you?

🛠 How to install Geminal from tar.gz package in source code

git clone https://github.com/nhattdm/Geminal.git

cd geminal

make install

🛠 How to build Geminal from source code

git clone https://github.com/nhattdm/Geminal.git

cd geminal

make build

🐳 How to dockerize Geminal as an image to run with Docker (lowly recommended)

  • Step 1: Please make sure that you have installed Docker on your computer before moving on to the next step.

  • Step 2: Dockerize Geminal as an image.

git clone https://github.com/nhattdm/Geminal.git

cd Geminal

make dockerize
  • Step 3: Run just the created image with Docker.
docker run -it --rm --name geminal geminal

If you're wondering why this is not highly recommended, please refer to the Notes section for more information.

📝 Notes

  • If you don't have your own GOOGLE API KEY, visit Makersuite by Google and create a new one for free.
  • Use Tab or Alt+Enter for a newline (multiline input).
  • The list of actions that interact with the last response from Gemini Pro will not be available if you run the application in a container.
  • In case you're unable to copy the last message or code block from Gemini Pro to your clipboard, install the xclip package if you're using a Linux distribution. For macOS users, seek a similar solution.

⚙️ Developed & Tested on

🤝 Contributing

I don't have plans to continue maintaining this project anymore. Feel free to contribute to this project if you have any further ideas.

📃 License

Distributed under the MIT License. See LICENSE for more information.