??Chinês | Inglês
ChatPilot : Chat Agent WebUI, implementa diálogo AgentChat, suporta pesquisa do Google, diálogo de URL de arquivo (RAG), função de intérprete de código, reproduz Kimi Chat (arquivo, arrastar; URL, enviar), suporta API OpenAI/Azure.
Demonstração oficial: https://chat.mulanai.com
export OPENAI_API_KEY=sk-xxx
export OPENAI_BASE_URL=https://xxx/v1
docker run -it
-e OPENAI_API_KEY= $WORKSPACE_BASE
-e OPENAI_BASE_URL= $OPENAI_BASE_URL
-e RAG_EMBEDDING_MODEL= " text-embedding-ada-002 "
-p 8080:8080 --name chatpilot- $( date +%Y%m%d%H%M%S ) shibing624/chatpilot:0.0.1
Você encontrará o ChatPilot rodando em http://0.0.0.0:8080 Aproveite!
git clone https://github.com/shibing624/ChatPilot.git
cd ChatPilot
pip install -r requirements.txt
# Copying required .env file, and fill in the LLM api key
cp .env.example .env
bash start.sh
Pronto, agora seu aplicativo está rodando: http://0.0.0.0:8080 Aproveite!
Duas maneiras de construir o front-end:
git clone https://github.com/shibing624/ChatPilot.git
cd ChatPilot/
# Building Frontend Using Node.js >= 20.10
cd web
npm install
npm run build
Saída: O diretório web
do projeto gera a pasta build
, que contém o arquivo de saída da compilação front-end.
export OPENAI_API_KEY=xxx
export OPENAI_BASE_URL=https://api.openai.com/v1
export MODEL_TYPE= " openai "
export AZURE_OPENAI_API_KEY=
export AZURE_OPENAI_API_VERSION=
export AZURE_OPENAI_ENDPOINT=
export MODEL_TYPE= " azure "
Inicie o serviço ollama com ollama serve
e configure OLLAMA_API_URL
: export OLLAMA_API_URL=http://localhost:11413
litellm
: pip install litellm -U
O arquivo de configuração padrão do litellm do chatpilot
está em ~/.cache/chatpilot/data/litellm/config.yaml
Modifique seu conteúdo da seguinte forma:
model_list :
# - model_name: moonshot-v1-auto # show model name in the UI
# litellm_params: # all params accepted by litellm.completion() - https://docs.litellm.ai/docs/completion/input
# model: openai/moonshot-v1-auto # MODEL NAME sent to `litellm.completion()` #
# api_base: https://api.moonshot.cn/v1
# api_key: sk-xx
# rpm: 500 # [OPTIONAL] Rate limit for this deployment: in requests per minute (rpm)
- model_name : deepseek-ai/DeepSeek-Coder # show model name in the UI
litellm_params : # all params accepted by litellm.completion() - https://docs.litellm.ai/docs/completion/input
model : openai/deepseek-coder # MODEL NAME sent to `litellm.completion()` #
api_base : https://api.deepseek.com/v1
api_key : sk-xx
rpm : 500
- model_name : openai/o1-mini # show model name in the UI
litellm_params : # all params accepted by litellm.completion() - https://docs.litellm.ai/docs/completion/input
model : o1-mini # MODEL NAME sent to `litellm.completion()` #
api_base : https://api.61798.cn/v1
api_key : sk-xxx
rpm : 500
litellm_settings : # module level litellm settings - https://github.com/BerriAI/litellm/blob/main/litellm/__init__.py
drop_params : True
set_verbose : False
Se você usa o ChatPilot em sua pesquisa, cite-o no seguinte formato:
APA:
Xu, M. ChatPilot: LLM agent toolkit (Version 0.0.2) [Computer software]. https://github.com/shibing624/ChatPilot
BibTeX:
@misc{ChatPilot,
author = {Ming Xu},
title = {ChatPilot: llm agent},
year = {2024},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = { url {https://github.com/shibing624/ChatPilot}},
}
O contrato de licenciamento é The Apache License 2.0, que é gratuito para uso comercial. Anexe o link para o ChatPilot e o contrato de licença na descrição do produto.
O código do projeto ainda é muito rudimentar. Se você tiver alguma melhoria no código, sinta-se à vontade para enviá-lo de volta a este projeto. Antes de enviar, preste atenção aos dois pontos a seguir:
tests
python -m pytest -v
para executar todos os testes de unidade para garantir que todos os testes de unidade sejam aprovadosVocê pode então enviar um PR.