Skip to main content

A GTK graphical interface for chatting with large language models (LLMs)

Project description

GTK LLM Chat

A GTK graphical interface for chatting with large language models (LLMs).

screenshot

Features

  • Simple and easy-to-use graphical interface built with GTK
  • Support for multiple conversations in independent windows
  • Integration with python-llm for chatting with various LLM models
  • Modern interface using libadwaita
  • Support for real-time streaming responses
  • Message history with automatic scrolling
  • Keyboard shortcuts (Enter to send, Shift+Enter for new line)

Installation

pipx install llm               # required by gtk-llm-chat
llm install gtk-chat

System Requirements

  • llm
  • Python 3.8 or higher
  • GTK 4.0
  • libadwaita
  • libayatana-appindicator

On Debian/Ubuntu-based systems:

sudo apt install python3-gi python3-gi-cairo gir1.2-gtk-4.0 libadwaita-1-0 libayatana-appindicator3-1

Usage

Run the application:

llm gtk-applet

or for an individual chat:

llm gtk-chat

With optional arguments:

llm gtk-chat --cid CONVERSATION_ID  # Continue a specific conversation
llm gtk-chat -s "System prompt"  # Set system prompt
llm gtk-chat -m model_name  # Select specific model
llm gtk-chat -c  # Continue last conversation

Development

To set up the development environment:

git clone https://github.com/icarito/gtk-llm-chat.git
cd gtk-llm-chat
python -m venv venv
source venv/bin/activate
pip install -e ".[dev]"

License

GPLv3 License - See LICENSE file for more details.

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

gtk_llm_chat-2.0.2.tar.gz (322.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gtk_llm_chat-2.0.2-py3-none-any.whl (36.0 kB view details)

Uploaded Python 3

File details

Details for the file gtk_llm_chat-2.0.2.tar.gz.

File metadata

  • Download URL: gtk_llm_chat-2.0.2.tar.gz
  • Upload date:
  • Size: 322.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.2

File hashes

Hashes for gtk_llm_chat-2.0.2.tar.gz
Algorithm Hash digest
SHA256 e1c82170db60df212d049e1d57400069bda0e41c99f8fa77d65ded2bb99469a9
MD5 36448de127d12f06fc4a26dbdaaf0c7a
BLAKE2b-256 66f6ebfc36f64fb571a52ade8f87137b1e956230fe4737114861a838c98cb6cc

See more details on using hashes here.

File details

Details for the file gtk_llm_chat-2.0.2-py3-none-any.whl.

File metadata

  • Download URL: gtk_llm_chat-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 36.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.2

File hashes

Hashes for gtk_llm_chat-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 52792b8ab52af010a6b09786362b1c291a1ea9b0f76983a0cd0a52500ef3db7b
MD5 65431a64f4450911decdf84245cedf71
BLAKE2b-256 b9e86574d5fbc92dfd4965d1845eea62d3685018f25cefff494bd1af79a46fab

See more details on using hashes here.

Supported by

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