Добавлен файл
This commit is contained in:
@@ -0,0 +1,68 @@
|
|||||||
|
# Экспорт чатов из Open WebUI
|
||||||
|
|
||||||
|
## Способ 1: Экспорт через интерфейс (если доступно)
|
||||||
|
1. Откройте Open WebUI
|
||||||
|
2. Перейдите в чат
|
||||||
|
3. Найдите опцию "Экспорт" или "Export" (если доступна)
|
||||||
|
4. Сохраните чат в формате Markdown или JSON
|
||||||
|
5. Поместите файл в текущую папку `chats/`
|
||||||
|
|
||||||
|
## Способ 2: Экспорт через базу данных SQLite
|
||||||
|
|
||||||
|
Open WebUI хранит чаты в SQLite базе данных внутри контейнера.
|
||||||
|
|
||||||
|
### Шаг 1: Найдите путь к базе данных
|
||||||
|
В контейнере Open WebUI база обычно находится по пути:
|
||||||
|
- `/app/backend/data/webui.db`
|
||||||
|
- или `/data/webui.db`
|
||||||
|
|
||||||
|
### Шаг 2: Скопируйте базу данных из контейнера
|
||||||
|
```bash
|
||||||
|
docker cp ix-open-webui-open-webui-1:/app/backend/data/webui.db ./webui.db
|
||||||
|
```
|
||||||
|
|
||||||
|
### Шаг 3: Экспортируйте чаты
|
||||||
|
Используйте SQLite-клиент для экспорта таблиц `chat` и `message`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sqlite3 webui.db
|
||||||
|
```
|
||||||
|
```sql
|
||||||
|
.mode markdown
|
||||||
|
.output chats_export.md
|
||||||
|
SELECT * FROM chat;
|
||||||
|
.quit
|
||||||
|
```
|
||||||
|
|
||||||
|
Или используйте Python-скрипт:
|
||||||
|
|
||||||
|
```python
|
||||||
|
import sqlite3
|
||||||
|
import json
|
||||||
|
|
||||||
|
conn = sqlite3.connect('webui.db')
|
||||||
|
cursor = conn.cursor()
|
||||||
|
|
||||||
|
# Получить список чатов
|
||||||
|
cursor.execute("SELECT id, name, created_at FROM chat")
|
||||||
|
chats = cursor.fetchall()
|
||||||
|
|
||||||
|
for chat_id, chat_name, created_at in chats:
|
||||||
|
print(f"## Чат: {chat_name} (ID: {chat_id})")
|
||||||
|
|
||||||
|
# Получить сообщения чата
|
||||||
|
cursor.execute("SELECT role, content, created_at FROM message WHERE chat_id = ? ORDER BY created_at", (chat_id,))
|
||||||
|
messages = cursor.fetchall()
|
||||||
|
|
||||||
|
for role, content, msg_time in messages:
|
||||||
|
print(f"**{role}** ({msg_time}): {content}")
|
||||||
|
print("\n---\n")
|
||||||
|
|
||||||
|
conn.close()
|
||||||
|
```
|
||||||
|
|
||||||
|
## Способ 3: Использование API Open WebUI (если включён)
|
||||||
|
Open WebUI имеет REST API для работы с чатами. Обратитесь к документации Open WebUI для получения токена авторизации.
|
||||||
|
|
||||||
|
## После экспорта
|
||||||
|
Поместите экспортированные чаты в папку `chats/` репозитория и загрузите их в базу знаний Open WebUI через интерфейс администратора.
|
||||||
Reference in New Issue
Block a user