feat: implement TTS, Document processing, and Memory Service /facts API

- TTS: xtts-v2 integration with voice cloning support
- Document: docling integration for PDF/DOCX/PPTX processing
- Memory Service: added /facts/upsert, /facts/{key}, /facts endpoints
- Added required dependencies (TTS, docling)
This commit is contained in:
Apple
2026-01-17 08:16:37 -08:00
parent a9fcadc6e2
commit 5290287058
121 changed files with 17071 additions and 436 deletions

197
DISK-CLEANUP-GUIDE.md Normal file
View File

@@ -0,0 +1,197 @@
# 🧹 Гід по очищенню диску на MacBook
**Проблема:** Диск заповнений на 92% (залишилось 1.1GB з 1.8TB)
---
## 📊 Аналіз використання диску
### Основні джерела зайнятого місця:
1. **Docker Desktop** - найбільший споживач
- `~/Library/Containers/com.docker.docker/Data/vm/Docker.raw` - віртуальний диск
- `~/Library/Containers/com.docker.docker/Data/log` - логи
- Docker образи та контейнери
2. **Проєкт microdao-daarion**
- `.git` директорія (історія комітів)
- `logs/` директорія (логи сервісів)
- Docker образи
3. **Системні кеші**
- `~/Library/Caches`
---
## 🧹 Команди для очищення
### 1. Очищення Docker
```bash
# Перевірити використання Docker
docker system df
# Видалити всі зупинені контейнери
docker container prune -f
# Видалити всі невикористовувані образи
docker image prune -a -f
# Видалити всі невикористовувані volumes
docker volume prune -f
# Видалити всі невикористовувані networks
docker network prune -f
# Повне очищення (усе разом)
docker system prune -a --volumes -f
```
### 2. Очищення логів Docker Desktop
```bash
# Видалити старі логи Docker Desktop
rm -rf ~/Library/Containers/com.docker.docker/Data/log/*.log
rm -rf ~/Library/Containers/com.docker.docker/Data/log/vm/*.log
# Або обмежити розмір логів
# (потрібно налаштувати в Docker Desktop Settings)
```
### 3. Очищення логів проєкту
```bash
cd ~/github-projects/microdao-daarion
# Видалити старі логи (залишити останні 7 днів)
find logs -name "*.log" -mtime +7 -delete
# Або видалити всі логи
rm -rf logs/*.log
```
### 4. Очищення Git історії (якщо потрібно)
```bash
cd ~/github-projects/microdao-daarion
# Видалити старі гілки
git branch -d old-branch-name
# Очистити reflog (історія змін)
git reflog expire --expire=now --all
git gc --prune=now --aggressive
```
### 5. Очищення системних кешів
```bash
# Очистити кеш Homebrew
brew cleanup -s
# Очистити кеш pip (якщо використовується)
pip cache purge
# Очистити кеш npm (якщо використовується)
npm cache clean --force
```
### 6. Зменшення розміру Docker.raw
```bash
# 1. Зупинити Docker Desktop
# 2. Відкрити Docker Desktop Settings
# 3. Resources → Advanced → Disk image size
# 4. Зменшити розмір (наприклад, з 256GB до 128GB)
# 5. Застосувати зміни
```
---
## 🔍 Діагностика
### Перевірка розмірів директорій
```bash
# Docker
du -sh ~/Library/Containers/com.docker.docker
# Проєкт
du -sh ~/github-projects/microdao-daarion
# Кеші
du -sh ~/Library/Caches
# Великі файли (більше 1GB)
find ~ -type f -size +1G 2>/dev/null | head -20
```
### Перевірка Docker
```bash
# Розмір образів
docker images --format "table {{.Repository}}\t{{.Size}}"
# Розмір контейнерів
docker ps -s
# Розмір volumes
docker volume ls
```
---
## ⚠️ Важливо
1. **Перед очищенням Docker:**
- Переконайтеся що всі важливі дані збережені
- Зробіть backup важливих volumes
2. **Перед очищенням логів:**
- Перевірте чи не потрібні старі логи для аналізу
- Можна архівувати старі логи перед видаленням
3. **Перед очищенням Git:**
- Переконайтеся що всі зміни закомічені
- Push всі важливі гілки на remote
---
## 📝 Рекомендації
### Для запобігання проблемам:
1. **Налаштувати обмеження Docker:**
- Disk image size: 128GB (замість необмеженого)
- Auto-prune: увімкнути
2. **Налаштувати ротацію логів:**
- Обмежити розмір логів
- Автоматично видаляти старі логи
3. **Регулярне очищення:**
- Раз на тиждень: `docker system prune -f`
- Раз на місяць: повне очищення
---
## 🚀 Швидке очищення (безпечне)
```bash
# 1. Очистити Docker (без видалення використовуваних ресурсів)
docker system prune -f
# 2. Видалити старі логи проєкту (старіше 7 днів)
find ~/github-projects/microdao-daarion/logs -name "*.log" -mtime +7 -delete
# 3. Очистити кеші
brew cleanup -s
# 4. Перевірити результат
df -h /
```
---
**Оновлено:** 2026-01-12
**Статус:** Гід готовий до використання