csghub-server: управление моделями и данными через REST API
csghub-server — это серверная часть CSGHub, предназначенная для управления моделями и датасетами, а также выполнения задач, связанных с инференсом, дообучением и приложениями.
Проект решает задачу организации работы с большими моделями и ресурсами через REST API, что позволяет не только управлять пользователями и организациями, но и осуществлять поиск и модерацию контента. csghub-server выделяется удобством автоматического тегирования и возможностью онлайн-превью данных. Это решение может быть полезно исследователям, разработчикам и командам, работающим с LLM, желающим упорядочить свои активы и оптимизировать рабочий процесс.
Проект написан на Python и требует установку Docker. Для запуска требуется минимум 4 ядра ЦПУ и 8 ГБ памяти. Обратите внимание, что для работы необходим токен API длиной не менее 128 символов, а тестировалась система в среде Ubuntu 22. Если нужна полноценная организация ваших моделей и данных, csghub-server — неплохой выбор.
Проект `CSGHub Server` является частью платформы управления большими моделями с открытым исходным кодом и нацелен на эффективное управление моделями, наборами данных и другими активами, связанными с LLM (Large Language Model), через REST API.
Ключевые возможности
- Создание и управление пользователями и организациями.
- Автоматическая маркировка моделей и наборов данных.
- Поиск пользователей, организаций, моделей и данных.
- Онлайн-просмотр файлов наборов данных, таких как файлы в формате `.parquet`.
- Модерация контента для текста и изображений.
- Загрузка отдельных файлов, включая файлы LFS (Large File Storage).
- Отслеживание активности моделей и наборов данных, включая объем загрузок и лайков.
Быстрый старт
Для запуска сервиса `CSGHub Server` необходимо установить Docker. Проект протестирован в среде Ubuntu 22. Для быстрой настройки сервиса с использованием docker-compose можно выполнить следующие команды:
# API-токен должен содержать не менее 128 символов, и HTTP-запросы к csghub-server требуют отправки токена как Bearer для аутентификации.
export STARHUB_SERVER_API_TOKEN=
mkdir -m 777 gitea minio_data
curl -L https://raw.githubusercontent.com/OpenCSGs/csghub-server/main/docker-compose.yml -o docker-compose.yml
docker-compose -f docker-compose.yml up -d
Запуск CSGHub Server локально
CSGHub поддерживает формат TOML для конфигурационных файлов. При запуске любого сервиса из командной строки можно указать конфигурационный файл с помощью опции `--config`:
go run cmd/csghub-server/main.go start server --config local.toml
go run cmd/csghub-server/main.go deploy runner --config local.toml
В проекте предоставлен пример конфигурационного файла, который можно переименовать, изменить по мере необходимости и использовать. Все доступные настройки определены в соответствующем файле на Go.
Техническая архитектура
Система сочетает в себе расширяемость и возможности настройки:
- Поддержка различных git-серверов, таких как Gitea и GitLab.
- Гибкая настройка системы хранения LFS — возможно использование локального хранилища или совместимых сторонних облачных сервисов.
- Возможность включения модерации контента по запросу с использованием сторонних сервисов.
Ограничения
Проект находится в стадии активной разработки, некоторые функции, такие как конвертация форматов моделей, еще не реализованы. Настройки могут требовать дополнительной конфигурации в зависимости от используемого окружения и специфики проекта.
Открыть на GitHub: OpenCSGs/csghub-server →
RepoRadar