
configs/ папке.Open Server - моя попытка воссоздать совместимый с OpenAI -сервером для создания текста, изображений, внедрения и хранения его в векторных базах данных. Это также включает в себя функциональность чата.
Запрос и ответы сервера очень похожи на API OpenAI с дополнительными полями, необходимыми для разных поставщиков. Он использует Langchain для части LLM (надежной и мощной с обратными обращениями) и поставщиков SDK для генерации изображений и многое другое.
Чтобы установить необходимые пакеты:
pip install -r requirements.txt
Чтобы запустить сервер:
python -m openserver.main
Примечание . Для поддержки GPU вам необходимо вручную установить Pytorch и Llama-Cpp-Python на основе вашего типа GPU (CUDA & ROCM).
В этом разделе перечислены ключевые функции, реализованные в Open Server:
configs/ папке.Этот файл используется для хранения клавиш API, URL -адресов и другой подобной информации. Он имеет структуру YAML и может использоваться для настройки различных аспектов сервера.
Пример config.yaml :
OPENAI_API_KEY : YOUR_OPEN_API_KEY
PALM_API_KEY : YOUR_PALM_API_KEY
DB_NAME : test
DB_HOST : localhost
DB_USERNAME : admin
DB_PASSWORD : admin
# Add more configuration options as needed...Эти конфигурации хранятся в отдельных файлах для лучшей организации и модульности. Каждый файл конфигурации следует структуре YAML.
Пример llm config ( llm_config.yaml ):
chat_providers :
palm :
name : palm
models :
- " models/text-bison-001 "
available : true
# Add more LLM configs as needed... Пример конфигурации изображения ( image_config.yaml ):
image_models :
novita :
name : novita
models :
- " dynavisionXLAllInOneStylized_release0534bakedvae_129001.safetensors "
available : true
api_key : true
api_key_name : NOVITA_API_KEY
# Add more image configs as needed... Пример приглашения Config ( prompts_config.yaml ):
prompts :
function_call :
name : " function_call "
file : " /prompts/function_call.txt "
# Add more prompt configs as needed... Пример векторной базы данных config ( vectordb_config.yaml ):
embeddings :
cohere :
name : cohere
models :
- " embed-english-light-v2.0 "
- " embed-english-v2.0 "
available : true
api_key : true
vectordbs :
chromadb :
available : true
# Add more vector database configs as needed...Не стесняйтесь изменять и расширять эти конфигурации в соответствии с вашими конкретными потребностями.
| Поставщик | Завершение | Чат | Функция вызова | Потоковая передача | ||
|---|---|---|---|---|---|---|
| ------------- | ------------- | ------------- | ------------- | ------------- | ||
| Openai | ✅ | ✅ | ✅ | ✅ | ||
| кожух | ✅ | ✅ | ✅ | |||
| объятие | ✅ | ✅ | ||||
| Вместе-AI | ✅ | ✅ | ✅* | ✅ | ||
| Google-Palm | ✅ | ✅ | ✅ | ✅ | ||
| AI21 | ✅ | ✅ | ✅ | |||
| фейерверк | ✅ | ✅ | ✅* | ✅ | ||
| Llama-Cpp-Python | ✅ | ✅ | ✅ |
| Поставщик | Txt2img | Img2img | Высококлассный | ||
|---|---|---|---|---|---|
| ------------- | ------------- | ------------- | ------------- | ||
| Openai | ✅ | ✅ | |||
| Вместе-AI | ✅ | ||||
| Новита | ✅ | ✅ | ✅ | ||
| Сегминд | ✅ | ✅ |
ладонь, huggingface, openai, градиент, кожух
Chromadb, Lancedb, Milvus, Pinecone, Qdrant, Redis, Weaviate
Чтобы внести свой вклад: клонировать репо локально -> сделать изменения -> отправить пиар с изменением.
Вот как изменить репо локально: Шаг 1: клонировать репо
git clone https://github.com/mj23978/openserver.git
Шаг 2: Перейдите в проект и установите зависимости:
cd openserver
pip install -r requirements.txt
Шаг 3: Отправьте пиар с вашими изменениями!