OpenServer
1.0.0

configs/文件夹中。Open Server是我尝试重新创建OpenAI兼容服务器,以生成文本,图像,嵌入并将其存储在矢量数据库中。它还包括聊天功能。
服务器的请求和响应与OpenAI的API非常相似,而不同提供商则需要其他字段。它将Langchain用于LLM零件(可靠且功能强大,带回调)和提供商SDK进行图像生成以及更多。
要安装所需的软件包:
pip install -r requirements.txt
运行服务器:
python -m openserver.main
注意:对于GPU支持,您需要根据您的GPU类型(CUDA&ROCM)手动安装Pytorch和Llama-CPP-Python 。
本节列出了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...示例图像config( 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...示例矢量数据库配置( 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 | ✅ | ✅ | ✅ | ✅ | ||
| 共同 | ✅ | ✅ | ✅ | |||
| 拥抱面 | ✅ | ✅ | ||||
| 一起 | ✅ | ✅ | ✅* | ✅ | ||
| Google-Palm | ✅ | ✅ | ✅ | ✅ | ||
| AI21 | ✅ | ✅ | ✅ | |||
| 烟花 | ✅ | ✅ | ✅* | ✅ | ||
| Llama-CPP-Python | ✅ | ✅ | ✅ |
| 提供者 | txt2img | img2img | 高档 | ||
|---|---|---|---|---|---|
| ---------------------------- | ---------------------------- | ---------------------------- | ---------------------------- | ||
| Openai | ✅ | ✅ | |||
| 一起 | ✅ | ||||
| 诺维塔 | ✅ | ✅ | ✅ | ||
| Segmind | ✅ | ✅ |
棕榈,拥抱面,Openai,渐变,共同点
Chromadb,Lancedb,Milvus,Pinecone,Qdrant,Redis,编织
贡献:在本地克隆回购 - >进行更改 - >提交带有更改的PR。
这是在本地修改存储库的方法:第1步:克隆回购
git clone https://github.com/mj23978/openserver.git
步骤2:导航到项目,并安装依赖项:
cd openserver
pip install -r requirements.txt
步骤3:提交有关您的更改的公关!