Перейти до вмісту

Рішення · Чат із багатьма моделями

VPS для LibreChat

LibreChat: це чат-інтерфейс з відкритим кодом для багатьох моделей одночасно: OpenAI, Anthropic, Google та локальних моделей через OpenAI-сумісну кінцеву точку, з агентами, пошуком по файлах і обліковими записами для всієї команди. Його документація не публікує жодних цифр щодо RAM чи ЦП, а офіційний файл Docker Compose запускає шість контейнерів, тож ми підбираємо розмір, виходячи з цього. BD-8 за $12.90 на місяць: найдешевша машина зі справжнім запасом; C2-4-80 за $37.90: менша конфігурація для одного користувача або невеликої групи.

Що потрібно

Програмне забезпечення з документації, розміри з позначенням джерела

Програмне забезпечення та налаштування безпеки взято з власної документації проєкту. Якщо проєкт не публікує вимог до обладнання, біля розмірів зазначено, чиї вони.

З документації LibreChat та його файлу compose

  • Git і Docker, на Linux. Посібник Docker на librechat.ai більше нічого не перелічує і не вказує вимог до RAM, ЦП чи диска.
  • Встановлення: клонуйте репозиторій, потім cp .env.example .env && docker compose up -d. Застосунок відповідає на порту 3080; другий контейнер, панель адміністратора, відповідає на порту 3000.
  • Офіційний файл compose запускає шість контейнерів: застосунок LibreChat, його панель адміністратора, MongoDB для розмов і облікових записів, Meilisearch для пошуку по розмовах, базу даних pgvector і RAG API для пошуку по файлах.
  • Моделі: це ключі, а не обладнання. Ключі OpenAI, Anthropic і Google вказуються в .env, або кожен користувач вводить власний в інтерфейсі. Локальна модель: це окрема кінцева точка Ollama чи інша OpenAI-сумісна, яку ви додаєте в librechat.yaml, тож цій машині GPU не потрібен.

Розміри (наші, за шістьма контейнерами, які запускає файл compose)

Вибір розміру за завданням
НавантаженняvCPURAM
Один користувач або невелика група, кілька чатів, без інтенсивного пошуку по файлахНаші. Шість контейнерів навіть у простої займають власну пам’ять; це найменше, на чому ми б їх запускали.24 GB
Команда, пошук по файлах увімкнено, пошуковий індекс зростаєНаші. MongoDB, Meilisearch і векторна база даних потребують запасу, а створення ембеддингів для завантажень навантажує ЦП.48 GB
Багато користувачів, великі набори документів, розмови зберігаються рокамиНаші. Сховище розмов, пошуковий індекс і вектори зростають із використанням.816 GB

Тарифи, що підходять

Машин: 5, ціни актуальні

Спочатку найдешевша відповідна машина. Ціни поточні, за місяць, з каталогу.

  • BD-8$12.90/міс

    4 vCPU · 8 GB · диск 100 GB · 32 TB

    Найдешевший із запасом для всього стеку. Комфортно для команди: шість контейнерів, завантаження та пошуковий індекс, із запасом пам’яті.

  • BD-12$17.90/міс

    6 vCPU · 12 GB · диск 200 GB · 32 TB

    Більше диска для завантажень і векторів. Для справжньої бібліотеки документів для пошуку по файлах і років збережених розмов.

  • BD-24$31.90/міс

    8 vCPU · 24 GB · диск 300 GB · 32 TB

    Велика команда або кілька активних користувачів. Багато пам’яті для зростання MongoDB, Meilisearch і векторної бази даних.

  • C2-4-80$37.90/міс

    2 vCPU · 4 GB · диск 80 GB · 3 TB

    Менша конфігурація, для одного чи кількох користувачів. Тягне стек; не запускайте на ній ще й локальну модель чи збірки. Обирайте її заради міста, а не розміру.

  • C4-8-160$75.90/міс

    4 vCPU · 8 GB · диск 160 GB · 3 TB

    Комфортний розмір, якщо міста найдешевшого рядка вам не підходять. Та сама конфігурація, що й у найдешевшому рядку, для команди, якій потрібне інше місто.

Готового шаблону запуску для LibreChat поки немає: встановлення складається з наведених нижче кроків, які ви вводите самі. Це команди з власної документації LibreChat, а також секрети, яких вимагає його файл compose.

Встановлення

Чотири кроки з документації LibreChat

Docker, стек compose, перший обліковий запис, потім ваші моделі. Зареєструйте власний обліковий запис одразу, щойно стек запуститься: перший створений обліковий запис стає адміністратором.

  1. Docker. curl -fsSL https://get.docker.com | sh Потім перевірте, що docker compose version відповідає.
  2. Клонуйте та налаштуйте. git clone https://github.com/LibreChat-AI/LibreChat.git cd LibreChat && cp .env.example .env У .env задайте MEILI_MASTER_KEY (щонайменше 16 символів) і ADMIN_PANEL_SESSION_SECRET, без якого панель адміністратора не запуститься. Якщо контейнери повідомляють про помилки доступу, задайте UID і GID користувача, що запускає compose.
  3. Запустіть і зареєструйтеся першим. docker compose up -d docker compose ps має показати всі шість запущених контейнерів. Відкрийте http://your-ip:3080 і натисніть «Реєстрація»: користувача за замовчуванням немає. Доки перед застосунком немає HTTPS, тримайте 3080 і 3000 за брандмауером і звертайтеся до застосунку через SSH: ssh -N -L 3080:127.0.0.1:3080 root@your-server
  4. Додайте моделі, потім домен. Впишіть OPENAI_API_KEY, ANTHROPIC_API_KEY і GOOGLE_KEY у .env або залиште їх як user_provided, щоб кожен користувач вводив власний ключ. Для локальної моделі додайте endpoint Ollama у librechat.yaml; зсередини контейнера адреса host.docker.internal, а не localhost. Для HTTPS спрямуйте A-запис на сервер, поставте перед ним зворотний проксі й задайте DOMAIN_CLIENT і DOMAIN_SERVER у .env як публічну адресу. Коли ваші люди зареєструються, встановіть ALLOW_REGISTRATION у false.

Чесно кажучи

Що ми купили б насправді

LibreChat не вказує мінімуму, а запускає шість контейнерів. Беріть машину з 8 GB.

Для LibreChat і команди

BD-8 · $12.90/міс

4 vCPU, 8 GB і 100 GB за $12.90: увесь офіційний стек із запасом пам’яті для зростання MongoDB, Meilisearch і векторної бази даних, диском для завантажень і ЦП для створення ембеддингів документів без зависання чату. Моделі працюють в іншому місці, за ключем API, тож цій машині GPU ніколи не потрібен. Якщо вам потрібне місто, якого немає в найдешевшому рядку, C4-8-160 за $75.90: та сама конфігурація в інших містах.

Запитання

Що запитують перед покупкою.

Які системні вимоги LibreChat?
Його документація їх не публікує. Посібник Docker називає Git і Docker передумовами й нічого не каже про RAM, ЦП чи диск. Ми можемо прочитати офіційний файл compose, який запускає шість контейнерів: застосунок LibreChat, панель адміністратора, MongoDB, Meilisearch, базу даних pgvector і RAG API. Розміри на цій сторінці наші, виведені з цього стека, і таблиця це зазначає. Машина з 8 GB: це рівень, на якому команді вже не тісно.
Чи потрібен LibreChat GPU?
Ні. LibreChat: це інтерфейс, він викликає ту модель, яку ви налаштуєте, через ключ API для OpenAI, Anthropic, Google та інших або через власну кінцеву точку, як-от Ollama. Якщо ви також хочете розмістити модель самостійно, це окрема машина й окреме питання: сторінка Ollama підбирає розмір для інференсу на ЦП залежно від моделі, а інтерактивна швидкість доступна в лінійці GPU.
Які порти він використовує?
Файл compose публікує застосунок на порту PORT з .env, за замовчуванням 3080, а панель адміністратора на 3000. MongoDB, Meilisearch, векторна база даних і RAG API не публікуються й залишаються в мережі compose. Застосунок працює через звичайний HTTP, тож закрийте 3080 і 3000 брандмауером, доки зворотний проксі не надасть вам HTTPS, і першим зареєструйте власний обліковий запис: перший створений стає адміністратором.
Які ключі API мені потрібні?
Жодного для запуску стека і по одному для кожного провайдера, якого ви хочете використовувати. OPENAI_API_KEY, ANTHROPIC_API_KEY і GOOGLE_KEY у .env.example за замовчуванням мають значення user_provided, тобто кожен користувач вводить власний ключ в інтерфейсі; натомість впишіть туди справжній ключ, щоб він був спільним для всіх. Пошук по файлах працює окремо: RAG API за замовчуванням використовує ембеддинги OpenAI, і RAG_OPENAI_API_KEY для нього перекриває OPENAI_API_KEY, тож пошуку по файлах потрібен ключ для ембеддингів, якщо ви не зміните провайдера.
Як використовувати з ним локальні моделі?
Додайте власну кінцеву точку в librechat.yaml, що вказує на OpenAI-сумісний сервер, наприклад Ollama, за його адресою /v1/ на порту 11434. Власний посібник LibreChat радить використовувати host.docker.internal замість localhost, коли LibreChat працює в контейнері, і зазначає, що Ollama ігнорує ключ API, але поле не може бути порожнім. Запускайте модель на окремій машині, якщо вона не зовсім мала: машини на цій сторінці підібрані під інтерфейс.
LibreChat, Open WebUI чи Dify?
LibreChat і Open WebUI: обидва є чат-інтерфейсами для багатьох моделей, причому LibreChat робить ставку на багатокористувацькі облікові записи, агентів та інструменти MCP у різних хмарних провайдерів. Dify: це платформа LLM-застосунків, тобто промпти, робочі процеси та RAG-застосунки, які ви створюєте й публікуєте, а не чат-інтерфейс для команди. Усі вони працюють на тих самих машинах, і для кожного в нас є окрема сторінка.
Як його оновити?
З документації: docker compose down, видаліть старі образи, git pull, docker compose pull, потім docker compose up. Спершу зробіть резервну копію каталогу data-node (MongoDB), каталогу даних Meilisearch і вашого .env: це розмови, пошуковий індекс і ключі.