Pywayne Llm Chat Ollama Gradio
by @wangyendt
Gradio-based chat interface for Ollama with multi-session management. Use when working with pywayne.llm.chat_ollama_gradio module to create a web-based chat...
clawhub install chat-ollama-gradioπ About This Skill
name: pywayne-llm-chat-ollama-gradio description: Gradio-based chat interface for Ollama with multi-session management. Use when working with pywayne.llm.chat_ollama_gradio module to create a web-based chat UI that connects to Ollama models, supports multiple chat sessions, model selection, and streaming responses. Integrates with ChatManager for session management.
Pywayne Chat Ollama Gradio
This module provides a Gradio-based web chat interface for Ollama models with multi-session support.
Quick Start
from pywayne.llm.chat_ollama_gradio import OllamaChatGradioCreate and launch chat interface
app = OllamaChatGradio(
base_url="http://localhost:11434/v1",
server_port=7870
)
app.launch()
Configuration
| Parameter | Default | Description |
|-----------|---------|-------------|
| base_url | "http://localhost:11434/v1" | Ollama API base URL |
| server_name | "0.0.0.0" | Server host name |
| server_port | 7870 | Server port |
| root_path | "" | Root path for reverse proxy |
| api_key | "ollama" | API key (for Ollama compatibility) |
Model Discovery
Automatically discovers available Ollama models by running ollama list:
qwen2.5:0.5b if no models foundSession Management
Creating New Sessions
# UI method: Click "ζ°ε»ΊδΌθ―" button
new_chat_id, new_history, new_choices = app.create_new_chat()
Switching Sessions
# UI method: Select from "εε²δΌθ―" radio list
history = app.switch_chat(selected_chat_id)
API Reference
OllamaChatGradio
| Method | Description |
|---------|-------------|
| get_ollama_models() | Get list of available Ollama models |
| init_chat_manager() | Initialize ChatManager instance |
| create_new_chat() | Create new chat session, returns (chat_id, history, radio_update) |
| switch_chat(chat_id) | Switch to specified chat session |
| format_history(history) | Format history for display |
| chat(message, history, model_name) | Process chat message with streaming |
| create_demo() | Create Gradio interface |
| launch() | Launch Gradio server |
UI Components
| Component | Description |
|-----------|-------------|
| chatbot | Main chat display area |
| msg | Message input textbox |
| model_dropdown | Model selection dropdown |
| chat_id_text | Current session ID (read-only) |
| new_chat_btn | Button to create new session |
| chat_history_list | Radio list for session switching |
Requirements
gradio - Web UI frameworkpywayne.llm.chat_bot - ChatManager and LLMConfigollama CLI - Must be installed and accessibleNotes
π‘ Examples
from pywayne.llm.chat_ollama_gradio import OllamaChatGradioCreate and launch chat interface
app = OllamaChatGradio(
base_url="http://localhost:11434/v1",
server_port=7870
)
app.launch()
βοΈ Configuration
| Parameter | Default | Description |
|-----------|---------|-------------|
| base_url | "http://localhost:11434/v1" | Ollama API base URL |
| server_name | "0.0.0.0" | Server host name |
| server_port | 7870 | Server port |
| root_path | "" | Root path for reverse proxy |
| api_key | "ollama" | API key (for Ollama compatibility) |