O Wandbot é um bot de resposta à pergunta projetado especificamente para documentação de pesos e preconceitos.
Esta versão apresenta várias atualizações e melhorias interessantes:
Essas atualizações fazem parte de nosso compromisso contínuo de melhorar o desempenho e a usabilidade.
Inglês
| Versão do Wandbot | Comentário | precisão da resposta |
|---|---|---|
| 1.0.0 | Nosso wandbot de linha de base | 53,8 % |
| 1.1.0 | melhoria em relação à linha de base; em produção por mais tempo | 72,5 % |
| 1.2.0 | Nosso novo Wandbot aprimorado | 81,6 % |
japonês
| Versão do Wandbot | Comentário | precisão da resposta |
|---|---|---|
| 1.2.0 | Nosso novo Wandbot aprimorado | 56,3 % |
| 1.2.1 | Adicione o processo de tradução | 71,9 % |
O projeto é construído com a versão python >=3.10.0,<3.11 e utiliza poesia para gerenciar dependências. Siga as etapas abaixo para instalar as dependências necessárias:
git clone [email protected]:wandb/wandbot.git
pip install poetry
cd wandbot
poetry install --all-extras
# Depending on which platform you want to run on run the following command:
# poetry install --extras discord # for discord
# poetry install --extras slack # for slack
# poetry install --extras api # for api O módulo de ingestão de dados extrai o código e a marcação dos repositórios de pesos e preconceitos e os exemplos os ingerem em vetores para o pipeline de geração aumentada de recuperação. Para ingerir os dados executados o seguinte comando da raiz do repositório
poetry run python -m src.wandbot.ingestion Você notará que os dados são ingeridos no diretório data/cache e armazenados em três diretórios diferentes raw_data , vectorstore com arquivos individuais para cada etapa do processo de ingestão. Esses conjuntos de dados também são armazenados como artefatos wandb no projeto definido no ambiente variável WANDB_PROJECT e podem ser acessados no painel Wandb.
Antes de executar as perguntas e respostas, verifique se as seguintes variáveis de ambiente estão definidas:
OPENAI_API_KEY
COHERE_API_KEY
SLACK_EN_APP_TOKEN
SLACK_EN_BOT_TOKEN
SLACK_EN_SIGNING_SECRET
SLACK_JA_APP_TOKEN
SLACK_JA_BOT_TOKEN
SLACK_JA_SIGNING_SECRET
WANDB_API_KEY
DISCORD_BOT_TOKEN
COHERE_API_KEY
WANDBOT_API_URL= " http://localhost:8000 "
WANDB_TRACING_ENABLED= " true "
WANDB_PROJECT= " wandbot-dev "
WANDB_ENTITY= " wandbot "Depois que essas variáveis de ambiente estiverem definidas, você pode iniciar o aplicativo de perguntas e respostas usando os seguintes comandos:
(poetry run uvicorn wandbot.api.app:app --host= " 0.0.0.0 " --port=8000 > api.log 2>&1 ) &
(poetry run python -m wandbot.apps.slack -l en > slack_en_app.log 2>&1 ) &
(poetry run python -m wandbot.apps.slack -l ja > slack_ja_app.log 2>&1 ) &
(poetry run python -m wandbot.apps.discord > discord_app.log 2>&1 )Pode ser necessário chamar o endpoint para acionar a inicialização final do aplicativo Wandbot:
curl http://localhost:8000/Para obter instruções mais detalhadas sobre a instalação e a execução do bot, consulte o arquivo run.sh localizado na raiz do repositório.
A execução desses comandos iniciará os aplicativos API, Slackbot e Discord Bot, permitindo que você interaja com o bot e faça perguntas relacionadas à documentação de pesos e preconceitos.
Certifique -se de definir os ambientes em seu terminal.
set -o allexport; source .env; set +o allexport
Lance o wandbot com 8 trabalhadores. Isso acelera a avaliação
WANDBOT_EVALUATION=1 gunicorn wandbot.api.app:app --bind 0.0.0.0:8000 --timeout=200 --workers=8 --worker-class uvicorn.workers.UvicornWorker
Configurado para avaliação
wandbot/src/wandbot/avaliação/config.py
evaluation_strategy_name : nome do atributo no painel de avaliação de tecelagemeval_dataset :eval_judge_model : Modelo usado para o juizwandb_entity : Wandb Nome da entidade para registrowandb_project : Wandb Nome do projeto para registroLançar a avaliação de tecelagem W&B
python src/wandbot/evaluation/weave_eval/main.py
Você pode monitorar o uso do bot no seguinte projeto: https://wandb.ai/wandbot/wandbot_public