跳到主要内容

[旧版代理 👉 新版代理在此] 本地 LiteLLM 代理服务器

一个快速、轻量级的 OpenAI 兼容服务器,可调用 100+ LLM API。

信息

文档已过时。新文档 👉 此处

使用方法

pip install 'litellm[proxy]'
$ litellm --model ollama/codellama 

#INFO: Ollama running on http://0.0.0.0:8000

测试

在新终端中运行

$ litellm --test

替换 OpenAI 基地址

import openai 

openai.api_base = "http://0.0.0.0:8000"

print(openai.ChatCompletion.create(model="test", messages=[{"role":"user", "content":"Hey!"}]))

其他支持的模型:

假设您在本地运行 vllm
$ litellm --model vllm/facebook/opt-125m

教程:与多种 LLM + LibreChat/Chatbot-UI/Auto-Gen/ChatDev/Langroid 等配合使用

替换 OpenAI 基地址

import openai 

openai.api_key = "any-string-here"
openai.api_base = "http://0.0.0.0:8080" # your proxy url

# call openai
response = openai.ChatCompletion.create(model="gpt-3.5-turbo", messages=[{"role": "user", "content": "Hey"}])

print(response)

# call cohere
response = openai.ChatCompletion.create(model="command-nightly", messages=[{"role": "user", "content": "Hey"}])

print(response)

本地代理

以下是如何使用本地代理测试不同 GitHub 仓库中的 codellama/mistral/等模型

pip install litellm
$ ollama pull codellama # OUR Local CodeLlama  

$ litellm --model ollama/codellama --temperature 0.3 --max_tokens 2048

教程:与多种 LLM + Aider/AutoGen/Langroid 等配合使用

$ litellm

#INFO: litellm proxy running on http://0.0.0.0:8000

向您的代理发送请求

import openai 

openai.api_key = "any-string-here"
openai.api_base = "http://0.0.0.0:8080" # your proxy url

# call gpt-3.5-turbo
response = openai.ChatCompletion.create(model="gpt-3.5-turbo", messages=[{"role": "user", "content": "Hey"}])

print(response)

# call ollama/llama2
response = openai.ChatCompletion.create(model="ollama/llama2", messages=[{"role": "user", "content": "Hey"}])

print(response)
注意

贡献 将此服务器与项目配合使用?在此贡献您的教程

高级

日志

$ litellm --logs

这将返回最近的日志(发送到 LLM API 的调用 + 收到的响应)。

所有日志都保存在当前目录中名为 api_logs.json 的文件中。

配置代理

如果您需要

  • 保存 API 密钥
  • 设置 litellm 参数(例如,丢弃未映射的参数,设置回退模型等)
  • 设置模型特定参数(最大 token 数、温度、api 基地址、prompt 模板)

您可以仅为当前会话(通过 cli)设置这些参数,或在重启后仍然保留这些参数(通过配置文件)。

保存 API 密钥

$ litellm --api_key OPENAI_API_KEY=sk-...

LiteLLM 会将其保存到本地配置文件中,并在会话之间持久化。

LiteLLM 代理支持所有 LiteLLM 支持的 API 密钥。要为特定提供商添加密钥,请查看此列表

$ litellm --add_key HUGGINGFACE_API_KEY=my-api-key #[OPTIONAL]

例如:设置 api 基地址、最大 token 数和温度。

仅针对该会话:

litellm --model ollama/llama2 \
--api_base http://localhost:11434 \
--max_tokens 250 \
--temperature 0.5

# OpenAI-compatible server running on http://0.0.0.0:8000

性能

我们使用 wrk 对 FastAPI 服务器进行了 500,000 个 HTTP 连接的 1 分钟负载测试。

这是我们的结果

Thread Stats   Avg      Stdev     Max   +/- Stdev
Latency 156.38ms 25.52ms 361.91ms 84.73%
Req/Sec 13.61 5.13 40.00 57.50%
383625 requests in 1.00m, 391.10MB read
Socket errors: connect 0, read 1632, write 1, timeout 0

支持 / 与创始人交流