Text Generation
Transformers
Safetensors
PyTorch
English
llama
function-calling
LLM Agent
tool-use
qwen
LLaMA-factory
conversational
text-generation-inference
Instructions to use Salesforce/Llama-xLAM-2-8b-fc-r with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Salesforce/Llama-xLAM-2-8b-fc-r with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="Salesforce/Llama-xLAM-2-8b-fc-r") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("Salesforce/Llama-xLAM-2-8b-fc-r") model = AutoModelForCausalLM.from_pretrained("Salesforce/Llama-xLAM-2-8b-fc-r") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Inference
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use Salesforce/Llama-xLAM-2-8b-fc-r with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "Salesforce/Llama-xLAM-2-8b-fc-r" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Salesforce/Llama-xLAM-2-8b-fc-r", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/Salesforce/Llama-xLAM-2-8b-fc-r
- SGLang
How to use Salesforce/Llama-xLAM-2-8b-fc-r with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "Salesforce/Llama-xLAM-2-8b-fc-r" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Salesforce/Llama-xLAM-2-8b-fc-r", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "Salesforce/Llama-xLAM-2-8b-fc-r" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Salesforce/Llama-xLAM-2-8b-fc-r", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use Salesforce/Llama-xLAM-2-8b-fc-r with Docker Model Runner:
docker model run hf.co/Salesforce/Llama-xLAM-2-8b-fc-r
Tool + streaming
#4
by thies - opened
I try to get streamed response but I get this error:
File "/secondary/thies/Llama-xLAM-2-8b-fc-r/xlam_tool_call_parser.py", line 146, in extract_tool_calls_streaming
function_name = current_tool_call.get("name")
Client:
import openai
import json
# Configure the client to use your local vLLM endpoint
client = openai.OpenAI(
base_url="http://localhost:8000/v1", # Default vLLM server URL
api_key="empty" # Can be any string
)
# Define a tool/function
tools = [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get the current weather for a location",
"parameters": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "The city and state, e.g. San Francisco, CA"
},
"unit": {
"type": "string",
"enum": ["celsius", "fahrenheit"],
"description": "The unit of temperature to return"
}
},
"required": ["location"]
}
}
}
]
# Create a chat completion
response = client.chat.completions.create(
model="/secondary/thies/Llama-xLAM-2-8b-fc-r/", # Model name doesn't matter, vLLM uses the served model
messages=[
{"role": "system", "content": "You are a helpful assistant that can use tools."},
{"role": "user", "content": "What's the weather like in San Francisco?"}
],
tools=tools,
tool_choice="auto",
stream=True
)
# Print the response
print("Assistant's response:")
print(list(response))
Is there a way to get this working?
@thies Yes, please use the newest vllm version. The new vllm version has supported a revised tool parser. https://docs.vllm.ai/en/stable/features/tool_calling.html#xlam-models-xlam
Same error also using vLLM 0.11.0