Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add example for Llama3 vllm server #404

Merged
merged 2 commits into from
Nov 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Annotator Served by vLLM

This config demonstrates how to utilize an annotator served by vLLM. This brings some advantages:
- Allow users to use "weighted"-style annotator, similar to `weighted_alpaca_eval_gpt4_turbo`;
- One vLLM server can support multiple nodes in a cluster environment;
- Easy setup using vLLM's OpenAI-compatible APIs.

## Setup
1. Start the vLLM Server:

```bash
vllm serve /home/shared/Meta-Llama-3-70B-Instruct --dtype auto --api-key token-abc123
```

2. Create the client config `local_configs.yaml` in `client_configs` folder:

```bash
default:
- api_key: "token-abc123"
base_url: "http://localhost:8000/v1"
```

3. Run evaluation:

```bash
export OPENAI_CLIENT_CONFIG_PATH=<path to local_configs.yaml>
alpaca_eval evaluate --model_outputs 'example/outputs.json' --annotators_config weighted_alpaca_eval_vllm_llama3_70b
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
weighted_alpaca_eval_vllm_llama3_70b:
prompt_template: "alpaca_eval_clf_gpt4_turbo/alpaca_eval_clf.txt"
fn_completions: "openai_completions"
completions_kwargs:
model_name: "/home/shared/Meta-Llama-3-70B-Instruct" # TODO: replace with path to the model
max_tokens: 1
temperature: 1 # temperature should be applied for sampling, so that should make no effect.
logprobs: true
top_logprobs: 5
requires_chatml: true
fn_completion_parser: "logprob_parser"
completion_parser_kwargs:
numerator_token: "m"
denominator_tokens: ["m", "M"]
is_binarize: false
completion_key: "completions_all"
batch_size: 1
Loading