feat: add AI stack with Open WebUI, Crawl4AI, and pgvector
Created complete AI infrastructure stack at ai.pivoine.art: **New Services:** - **Open WebUI** (ai.pivoine.art) - ChatGPT-like interface for AI models - Multi-user chat with authentication - RAG (Retrieval-Augmented Generation) support - Document upload and processing - Claude API integration via Anthropic - **PostgreSQL with pgvector** (dedicated AI database) - Vector similarity search for RAG - Separate from production databases - Stores embeddings and documents - **Crawl4AI** (internal API service) - Web scraping optimized for LLMs - Converts websites to clean Markdown - Called by n8n workflows - No public exposure (internal only) **Configuration:** - Added 18 AI environment variables to arty.yml - Configured email notifications via IONOS SMTP - OpenAI API compatibility for Claude integration - Traefik SSL termination and compression **Backup:** - Added 3 AI volumes to Restic backup - Daily backup at 3 AM - Retention: 7 daily, 4 weekly, 6 monthly, 2 yearly **Integration:** - Shares falcon_network with existing services - Ready for n8n workflow automation - Mattermost notifications support - Watchtower auto-updates enabled Ready for Phase 2: GPU server integration with Ollama, Whisper, and Stable Diffusion when IONOS A10 server is provisioned. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
18
arty.yml
18
arty.yml
@@ -162,6 +162,24 @@ envs:
|
||||
# Sablier
|
||||
SABLIER_COMPOSE_PROJECT_NAME: sablier
|
||||
SABLIER_VERSION: latest
|
||||
# AI Stack
|
||||
AI_TRAEFIK_ENABLED: true
|
||||
AI_COMPOSE_PROJECT_NAME: ai
|
||||
AI_POSTGRES_IMAGE: pgvector/pgvector:pg16
|
||||
AI_WEBUI_IMAGE: ghcr.io/open-webui/open-webui:main
|
||||
AI_CRAWL4AI_IMAGE: unclecode/crawl4ai:latest
|
||||
AI_TRAEFIK_HOST: ai.pivoine.art
|
||||
AI_DB_USER: ai
|
||||
AI_DB_NAME: openwebui
|
||||
AI_WEBUI_NAME: Pivoine AI
|
||||
AI_ENABLE_SIGNUP: true
|
||||
AI_ENABLE_RAG_WEB_SEARCH: true
|
||||
AI_ENABLE_RAG_SSL_VERIFY: true
|
||||
AI_RAG_EMBEDDING_ENGINE: openai
|
||||
AI_RAG_EMBEDDING_MODEL: text-embedding-3-small
|
||||
AI_VECTOR_DB: pgvector
|
||||
AI_CRAWL4AI_PORT: 11235
|
||||
AI_OPENAI_API_BASE_URLS: https://api.anthropic.com/v1
|
||||
# Watchtower
|
||||
WATCHTOWER_POLL_INTERVAL: 300
|
||||
WATCHTOWER_LABEL_ENABLE: true
|
||||
|
||||
Reference in New Issue
Block a user