
configs/ 폴더에 저장됩니다.Open Server는 텍스트, 이미지, 임베딩을 생성하고 벡터 데이터베이스에 저장하기위한 OpenAI 호환 서버를 재현하려는 시도입니다. 또한 채팅 기능도 포함됩니다.
서버의 요청 및 응답은 다른 제공 업체에 추가 필드가있는 OpenAI의 API와 매우 유사합니다. LLM 부품 (콜백으로 강력하고 강력한 강력한) 및 이미지 생성 및 그 이상의 제공자 SDK에 Langchain을 사용합니다.
필요한 패키지를 설치하려면 :
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... 예제 이미지 구성 ( 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... 예제 프롬프트 구성 ( 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 | ✅ | ✅ | ✅ | ✅ | ||
| 코셔 | ✅ | ✅ | ✅ | |||
| 포옹 페이스 | ✅ | ✅ | ||||
| 함께 -ai | ✅ | ✅ | ✅* | ✅ | ||
| Google-Palm | ✅ | ✅ | ✅ | ✅ | ||
| AI21 | ✅ | ✅ | ✅ | |||
| 불꽃 | ✅ | ✅ | ✅* | ✅ | ||
| llama-cpp-python | ✅ | ✅ | ✅ |
| 공급자 | txt2img | img2img | 고급 | ||
|---|---|---|---|---|---|
| ------------- | ------------- | ------------- | ------------- | ||
| Openai | ✅ | ✅ | |||
| 함께 -ai | ✅ | ||||
| 노비타 | ✅ | ✅ | ✅ | ||
| segmind | ✅ | ✅ |
팜, 포옹, 오픈 나이, 그라디언트, 코어
Chromadb, Lancetb, Milvus, Pinecone, Qdrant, Redis, Weaviate
기여하려면 : 로컬로 리포지기를 복제하십시오 -> 변경 -> 변경 사항과 함께 PR을 제출하십시오.
로컬로 리베르를 수정하는 방법은 다음과 같습니다. 1 단계 : 레포를 복제하십시오.
git clone https://github.com/mj23978/openserver.git
2 단계 : 프로젝트로 이동하여 종속성을 설치하십시오.
cd openserver
pip install -r requirements.txt
3 단계 : 변경 사항과 함께 PR을 제출하십시오!