Pywayne Llm Chat Ollama Gradio

Other

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.

Install

openclaw skills install chat-ollama-gradio

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 OllamaChatGradio

# Create and launch chat interface
app = OllamaChatGradio(
    base_url="http://localhost:11434/v1",
    server_port=7870
)
app.launch()

Configuration

ParameterDefaultDescription
base_url"http://localhost:11434/v1"Ollama API base URL
server_name"0.0.0.0"Server host name
server_port7870Server 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:

  • Excludes models with 'embed' in the name
  • Falls back to qwen2.5:0.5b if no models found

Session 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

MethodDescription
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

ComponentDescription
chatbotMain chat display area
msgMessage input textbox
model_dropdownModel selection dropdown
chat_id_textCurrent session ID (read-only)
new_chat_btnButton to create new session
chat_history_listRadio list for session switching

Requirements

  • gradio - Web UI framework
  • pywayne.llm.chat_bot - ChatManager and LLMConfig
  • ollama CLI - Must be installed and accessible

Notes

  • Uses ChatManager for multi-session support
  • Streaming responses update UI in real-time
  • Session history persists in memory (not persistent)
  • Requires Ollama to be running before launching