Instructions to use llmware/slim-intent with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use llmware/slim-intent with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="llmware/slim-intent")# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("llmware/slim-intent") model = AutoModelForCausalLM.from_pretrained("llmware/slim-intent", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use llmware/slim-intent with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "llmware/slim-intent" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "llmware/slim-intent", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/llmware/slim-intent
- SGLang
How to use llmware/slim-intent 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 "llmware/slim-intent" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "llmware/slim-intent", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'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 "llmware/slim-intent" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "llmware/slim-intent", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use llmware/slim-intent with Docker Model Runner:
docker model run hf.co/llmware/slim-intent
| license: apache-2.0 | |
| inference: false | |
| # SLIM-INTENT | |
| <!-- Provide a quick summary of what the model is/does. --> | |
| **slim-intent** is part of the SLIM ("**S**tructured **L**anguage **I**nstruction **M**odel") model series, consisting of small, specialized decoder-based models, fine-tuned for function-calling. | |
| slim-intent has been fine-tuned for **intent analysis** function calls, generating output consisting of a python dictionary corresponding to specified keys, e.g.: | |
| `{"intent": ["complaint"]}` | |
| SLIM models are designed to generate structured output that can be used programmatically as part of a multi-step, multi-model LLM-based automation workflow. | |
| Each slim model has a 'quantized tool' version, e.g., [**'slim-intent-tool'**](https://huggingface.co/llmware/slim-intent-tool). | |
| ## Prompt format: | |
| `function = "classify"` | |
| `params = "intent"` | |
| `prompt = "<human> " + {text} + "\n" + ` | |
| `"<{function}> " + {params} + "</{function}>" + "\n<bot>:"` | |
| <details> | |
| <summary>Transformers Script </summary> | |
| model = AutoModelForCausalLM.from_pretrained("llmware/slim-intent") | |
| tokenizer = AutoTokenizer.from_pretrained("llmware/slim-intent") | |
| function = "classify" | |
| params = "intent" | |
| text = "I am really impressed with the quality of the product and the service that I have received so far." | |
| prompt = "<human>: " + text + "\n" + f"<{function}> {params} </{function}>\n<bot>:" | |
| inputs = tokenizer(prompt, return_tensors="pt") | |
| start_of_input = len(inputs.input_ids[0]) | |
| outputs = model.generate( | |
| inputs.input_ids.to('cpu'), | |
| eos_token_id=tokenizer.eos_token_id, | |
| pad_token_id=tokenizer.eos_token_id, | |
| do_sample=True, | |
| temperature=0.3, | |
| max_new_tokens=100 | |
| ) | |
| output_only = tokenizer.decode(outputs[0][start_of_input:], skip_special_tokens=True) | |
| print("output only: ", output_only) | |
| # here's the fun part | |
| try: | |
| output_only = ast.literal_eval(llm_string_output) | |
| print("success - converted to python dictionary automatically") | |
| except: | |
| print("fail - could not convert to python dictionary automatically - ", llm_string_output) | |
| </details> | |
| <details> | |
| <summary>Using as Function Call in LLMWare</summary> | |
| from llmware.models import ModelCatalog | |
| slim_model = ModelCatalog().load_model("llmware/slim-intent") | |
| response = slim_model.function_call(text,params=["intent"], function="classify") | |
| print("llmware - llm_response: ", response) | |
| </details> | |
| ## Model Card Contact | |
| Darren Oberst & llmware team | |
| [Join us on Discord](https://discord.gg/MhZn5Nc39h) | |