Przejdź do treści
Biblioteka skilli
AI i agenci · Budowanie i kod

pywayne-llm-chat-window

/pywayne-llm-chat-window

Tworzy desktopowe okno czatu z LLM w PyQt5 ze strumieniowaniem odpowiedzi, przyciskiem zatrzymania, konfiguracją okna i zarządzaniem komunikatem systemowym.

Repozytorium
wayne-skills ↗
Licencja
MIT
Ostatnia zmiana repozytorium
23.10.2026

Ocena i bezpieczeństwo

95/ 100Klasa: dobry
Format20 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
1
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
3
Przestarzałość

Brak sygnałów. Repozytorium zmienione 23.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Tworzy desktopowe okno czatu z LLM w PyQt5 ze strumieniowaniem odpowiedzi, przyciskiem zatrzymania, konfiguracją okna i zarządzaniem komunikatem systemowym.

Oryginalny opis (EN)

PyQt5-based GUI chat window for LLM conversations with streaming responses and stop functionality. Use when working with pywayne.llm.chat_window module to create desktop chat applications with customizable window configuration, system message management, and real-time streaming display.

Jak działa

  1. Quick Start
  2. Configuration
  3. System Messages
  4. Quick Launch with System Messages
  5. Features
  6. Requirements
  7. API Reference
Sekcje z nagłówków SKILL.md, w oryginale · 117 linii, 405 słów
Podgląd SKILL.md
---
name: pywayne-llm-chat-window
description: PyQt5-based GUI chat window for LLM conversations with streaming responses and stop functionality. Use when working with pywayne.llm.chat_window module to create desktop chat applications with customizable window configuration, system message management, and real-time streaming display.
---

# Pywayne Chat Window

This module provides a PyQt5-based desktop GUI chat window for LLM conversations.

## Quick Start

```python
from pywayne.llm.chat_window import ChatWindow

# Basic usage - quick launch
ChatWindow.launch(
    base_url="https://api.deepseek.com/v1",
    api_key="your_api_key",
    model="deepseek-chat"
)
```

## Configuration

Using `ChatConfig` dataclass for full customization:

```python
from pywayne.llm.chat_window import ChatWindow, ChatConfig

config = ChatConfig(
    base_url="https://api.deepseek.com/v1",
    api_key="your_api_key",
    model="deepseek-chat",
    temperature=0.8,
    window_title="AI Assistant",
    window_width=800,
    window_height=600
)

chat = ChatWindow(config)
chat.run()
```

### ChatConfig Parameters

| Parameter | Default | Description |
|-----------|---------|-------------|
| `base_url` | required | API base URL |
| `api_key` | required | API key |
| `model` | `"deepseek-chat"` | Model name |
| `temperature` | `0.7` | Temperature (0-2) |
| `max_tokens` | `2048` | Max output tokens |
| `top_p` | `1.0` | Nucleus sampling |
| `frequency_penalty` | `0.0` | Frequency penalty (-2 to 2) |
| `presence_penalty` | `0.0` | Presence penalty (-2 to 2) |
| `system_prompt` | `"你是一个严谨的助手"` | System prompt |
| `window_title` | `"AI Chat"` | Window title |
| `window_width` | `600` | Window width |
| `window_height` | `800` | Window height |
| `window_x` | `300` | Window X position |
| `window_y` | `300` | Window Y position |

## System Messages

Set custom system prompts:

```python
# Replace all system messages
chat.set_system_messages([
    {"role": "system", "content": "You are a Python expert"},
    {"role": "system", "content": "Provide code examples"}
])

# Add single system message
chat.add_system_message("You are now a creative writer")
```

## Quick Launch with System Messages

```python
ChatWindow.launch(
    base_url="https://api.deepseek.com/v1",
    api_key="your_api_key",
    model="deepseek-coder",
    system_messages=[
        {"role": "system", "content": "You are a Python expert"},
        {"role": "system", "content": "Keep answers concise with code"}
    ],
    window_title="Python Assistant"
)
```

## Features

- **Streaming responses**: Real-time token-by-token display
- **Stop generation**: Button toggles between "发送" (Send) and "停止" (Stop)
- **Message history**: Maintains conversation context
- **Enter to send**: Press Enter in input field to send message
- **System messages**: Support for multiple system prompts

## Requirements

- `PyQt5` - GUI framework
- `openai` - OpenAI-compatible API client

## API Reference

### ChatWindow

| Method | Description |
|---------|-------------|
| `__init__(config)` | Initialize with ChatConfig |
| `set_system_messages(messages)` | Replace all system messages |
| `add_system_message(content)` | Add single system message |
| `run()` | Show window and start event loop |
| `launch(base_url, api_key, ...)` | Class method to quickly launch chat window |

### ChatConfig

Dataclass for window and LLM configuration. All parameters optional except `base_url` and `api_key`.

Wersje

W bazie nie ma innych skilli o nazwie pywayne-llm-chat-window.

Migawka bazy z 28.10.2026 · wersja paczki 24aa018073dc (skrót SHA-256 całej paczki)

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 90pywayne-llm-chat-bot
    Obsługuje interfejs czatu LLM z API zgodnymi z OpenAI, streamingiem i zarządzaniem sesjami w module pywayne.llm.chat_bot, w tym historią rozmów i ChatManager.
  • 95pywayne-llm-chat-ollama-gradio
    Tworzy webowy interfejs czatu Gradio dla modeli Ollama z wieloma sesjami, wyborem modelu i strumieniowaniem odpowiedzi, z integracją ChatManager.
  • 100streaming-llm-responses
    Wdraża w czacie AI strumieniowe interfejsy na żywo: zdarzenia początku i końca odpowiedzi, wskaźniki postępu, efekty i synchronizację wątków.
  • 84liter-llm-streaming-responses
    Strumieniuje tokeny LLM w liter-llm przez SSE lub iteratory asynchroniczne i obsługuje puste fragmenty.
  • 84make-wpf-chat-orchestrator
    Generuje orkiestrator czatu strumieniowego w WPF z narzędziami MCP, dzieląc odpowiedzi LLM na zdarzenia tekstu i narzędzi.
  • 90context-window-management
    Opisuje strategie zarządzania oknem kontekstu LLM: streszczanie, przycinanie, routing i unikanie degradacji kontekstu.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.