OpenCSGs / csghub-server

csghub-server is the backend server for CSGHub which helps user to manage datasets, modes, and also run Model Inference, Finetune and Application Spaces.
https://opencsg.com/models
Apache License 2.0
556 stars 98 forks source link
ai datasets golang huggingface llm models platform

English简体中文日本語

CSGHub Server is a part of the open source and reliable large model assets management platform - CSGHub. It focuses on management of models、datasets and other LLM assets through REST API。

Key Features:

Demo

In order to help users to quickly understand the features and usage of CSGHub, we have recorded a demo video. You can watch this video to get a quick understanding of the main features and operation procedures of this program.

Please visit the OpenCSG website to experience the powerful management features.

Quick Start

System resource requirements: 4c CPU/8GB memory

Please install Docker yourself. This project has been tested in Ubuntu22 environment.

You can quickly deploy the localized CSGHub Server service through docker-compose:

# The API token should be at least 128 characters long, and HTTP requests to csghub-server require the API token to be sent as a Bearer token for authentication.
export STARHUB_SERVER_API_TOKEN=<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

Start CSGHub Server Services Locally

CSGHub supports TOML format for config files. When starting any service from the command line, you can specify the config file with the --config option:

go run cmd/csghub-server/main.go start server --config local.toml
go run cmd/csghub-server/main.go deploy runner --config local.toml
...

We provide an example config file, you can rename it, modify as needed and use. All available configurations are defined in this Go file. The TOML configuration uses snake_case naming convention, and names automatically map to corresponding struct field names.

Technical Architecture

csghub-server architecture

Extensible and customizable

Roadmap

License

We use the Apache 2.0 license, the content of which is detailed in the LICENSE file.

Contributing

If you wish to contribute, please follow the Contribution Guidelines. We are very excited about your contributions!

Acknowledgments

This project is based on open source projects such as Gin, DuckDB, minio, and Gitea. We would like to express our sincere gratitude to them for their open source contributions!

CONTACT WITH US

If you meet any problem during usage, you can contact with us by any following way:

  1. initiate an issue in github
  2. join our WeChat group by scaning wechat helper qrcode
  3. join our offical discord channel: OpenCSG Discord Channel
  4. join our slack workspace:OpenCSG Slack Channel