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.0.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.0-py3-none-any.whl (36.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for gtk_llm_chat-2.0.0.tar.gz
Algorithm Hash digest
SHA256 e7aa2816b7e80be7cc86c244050bca9e77b7047d72977c07791a6499857c7b9d
MD5 01b4affc06e3f9700375a5b8ac9d85bd
BLAKE2b-256 52054524f601e24b52f0bc072169f58b14bcd4790d30b4b95479c704b6071ca3

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for gtk_llm_chat-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9d568bc801109ecf6cd3ef4e99b14b202a9dc8438328950b18ac660288a50999
MD5 582890d30d3b9b65fd29f46a9c047b42
BLAKE2b-256 3d61e0625f80f481c971e116b31ad3e317c076877d53a2f25214a1e6bb84cd62

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