Skip to main content

A minimal LLM network chat server/client app.

Project description

chatthy

An asynchronous terminal server/multiple-client setup for conducting and managing chats with LLMs.

network architecture

  • client/server RPC-type architecture
  • message signing
  • ensure chunk ordering

chat management

  • basic chat persistence and management
  • set, switch to saved system prompts (personalities)
  • manage prompts like chats (as files)
  • chat truncation to token length
  • rename chat
  • profiles (profile x personalities -> sets of chats)
  • export chat to local file

context workspace

  • context workspace (load/drop files)
  • client inject from file
  • client inject from other sources, e.g. youtube (trag)
  • templates for standard instruction requests (trag)
  • context workspace - bench/suspend files (hidden by filename)

tool / agentic use

  • (auto) tools (evolve from llama-farm -> trag)
  • user defined tool plugins
  • server use vdb context at LLM will (tool)
  • iterative workflows (refer to llama-farm)
  • tool chains
  • file edit/write
  • file patch/diff
  • allow model to manage workspace

RAG

  • summaries and standard client instructions (trag)
  • server use vdb context on request
  • consider best method of pdf conversion / ingestion, OOB
  • full arxiv paper ingestion (fvdb) - consolidate into one latex file OOB
  • vdb result reranking with context, and winnowing

client interface

  • can switch between Anthropic, OpenAI, tabbyAPI providers and models
  • streaming
  • syntax highlighting
  • decent REPL
  • REPL command mode
  • cut/copy from output
  • vimish keys in output
  • client-side prompt editing
  • client-side chat/message editing (how? temporarily set the input field history?)
  • latex rendering (this is tricky in the context of prompt-toolkit, but see flatlatex).
  • generation cancellation

miscellaneous / extensions

  • design with multimodal models in mind
  • image sending and use
  • use proper config dir (group?)
  • dump default conf if missing

unallocated / out of scope

audio streaming ? workflows (tree of instruction templates) tasks

arXiv paper -> latex / md pdf paper -> latex / md

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

chatthy-0.2.4.tar.gz (59.4 kB view details)

Uploaded Source

Built Distribution

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

chatthy-0.2.4-py3-none-any.whl (48.5 kB view details)

Uploaded Python 3

File details

Details for the file chatthy-0.2.4.tar.gz.

File metadata

  • Download URL: chatthy-0.2.4.tar.gz
  • Upload date:
  • Size: 59.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for chatthy-0.2.4.tar.gz
Algorithm Hash digest
SHA256 2c16c6d52e82bc7223bbb7ccebc696ec39e92b1000715e01bd9899a4a12d2165
MD5 36d7eeafa1fb959e237f5e66a8a89e61
BLAKE2b-256 b81875908083b15c7d9e7943c72311e8085bb6fd7f2e5f6ed9d9d7ecbe5f5955

See more details on using hashes here.

File details

Details for the file chatthy-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: chatthy-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 48.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for chatthy-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e8d8cf58362d86f1e321763e000a131d2ac51f52170887e9ef7a65d239fe195b
MD5 27de7b26386bc31e5b9a8ba83cb286c8
BLAKE2b-256 d17536e50d4b37c2517090faf181d3096986deee4a444904f56716f81f3f8d57

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