docs(lm_studio.md): add doc on lm studio support

This commit is contained in:
Krrish Dholakia 2024-11-02 02:12:35 +05:30
parent 22b8f93f53
commit 246052fe23
2 changed files with 131 additions and 0 deletions

View file

@ -0,0 +1,130 @@
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# LM Studio
https://lmstudio.ai/docs/basics/server
:::tip
**We support ALL LM Studio models, just set `model=lm_studio/<any-model-on-lmstudio>` as a prefix when sending litellm requests**
:::
## API Key
```python
# env variable
os.environ['LM_STUDIO_API_BASE']
os.environ['LM_STUDIO_API_KEY'] # optional, default is empty
```
## Sample Usage
```python
from litellm import completion
import os
os.environ['LM_STUDIO_API_BASE'] = ""
response = completion(
model="lm_studio/llama-3-8b-instruct",
messages=[
{
"role": "user",
"content": "What's the weather like in Boston today in Fahrenheit?",
}
]
)
print(response)
```
## Sample Usage - Streaming
```python
from litellm import completion
import os
os.environ['XAI_API_KEY'] = ""
response = completion(
model="lm_studio/llama-3-8b-instruct",
messages=[
{
"role": "user",
"content": "What's the weather like in Boston today in Fahrenheit?",
}
],
stream=True,
)
for chunk in response:
print(chunk)
```
## Usage with LiteLLM Proxy Server
Here's how to call a XAI model with the LiteLLM Proxy Server
1. Modify the config.yaml
```yaml
model_list:
- model_name: my-model
litellm_params:
model: lm_studio/<your-model-name> # add lm_studio/ prefix to route as LM Studio provider
api_key: api-key # api key to send your model
```
2. Start the proxy
```bash
$ litellm --config /path/to/config.yaml
```
3. Send Request to LiteLLM Proxy Server
<Tabs>
<TabItem value="openai" label="OpenAI Python v1.0.0+">
```python
import openai
client = openai.OpenAI(
api_key="sk-1234", # pass litellm proxy key, if you're using virtual keys
base_url="http://0.0.0.0:4000" # litellm-proxy-base url
)
response = client.chat.completions.create(
model="my-model",
messages = [
{
"role": "user",
"content": "what llm are you"
}
],
)
print(response)
```
</TabItem>
<TabItem value="curl" label="curl">
```shell
curl --location 'http://0.0.0.0:4000/chat/completions' \
--header 'Authorization: Bearer sk-1234' \
--header 'Content-Type: application/json' \
--data '{
"model": "my-model",
"messages": [
{
"role": "user",
"content": "what llm are you"
}
],
}'
```
</TabItem>
</Tabs>

View file

@ -156,6 +156,7 @@ const sidebars = {
"providers/predibase",
"providers/nvidia_nim",
"providers/xai",
"providers/lm_studio",
"providers/cerebras",
"providers/volcano",
"providers/triton-inference-server",