SIGN IN SIGN UP
BerriAI / litellm UNCLAIMED

Python SDK, Proxy Server (AI Gateway) to call 100+ LLM APIs in OpenAI (or native) format, with cost tracking, guardrails, loadbalancing and logging. [Bedrock, Azure, OpenAI, VertexAI, Cohere, Anthropic, Sagemaker, HuggingFace, VLLM, NVIDIA NIM]

0 0 1 Python
[tool.poetry]
name = "litellm"
2024-08-23 18:30:29 -07:00
version = "1.44.5"
description = "Library to easily interface with LLM API providers"
authors = ["BerriAI"]
license = "MIT"
readme = "README.md"
2024-05-30 14:36:04 -04:00
packages = [
{ include = "litellm" },
{ include = "litellm/py.typed"},
]
[tool.poetry.urls]
homepage = "https://litellm.ai"
repository = "https://github.com/BerriAI/litellm"
documentation = "https://docs.litellm.ai"
[tool.poetry.dependencies]
2024-02-12 19:49:11 +02:00
python = ">=3.8.1,<4.0, !=3.9.7"
openai = ">=1.40.0"
python-dotenv = ">=0.2.0"
tiktoken = ">=0.7.0"
2023-09-25 07:33:23 -07:00
importlib-metadata = ">=6.8.0"
2023-09-25 09:15:50 -07:00
tokenizers = "*"
2023-09-26 13:30:35 -07:00
click = "*"
2023-10-03 21:05:20 -07:00
jinja2 = "^3.1.2"
aiohttp = "*"
requests = "^2.31.0"
pydantic = "^2.0.0"
jsonschema = "^4.22.0"
2023-09-26 13:30:35 -07:00
2023-12-28 12:59:27 +05:30
uvicorn = {version = "^0.22.0", optional = true}
2024-05-05 13:25:59 +03:00
gunicorn = {version = "^22.0.0", optional = true}
Update FastAPI to update starlette to fix warnings The httpx package emits some warnings when we run the tests in `test_proxy_server.py`: ```shell $ env -i PATH=$PATH poetry run pytest litellm/tests/test_proxy_server.py ... litellm/tests/test_proxy_server.py::test_bedrock_embedding litellm/tests/test_proxy_server.py::test_chat_completion litellm/tests/test_proxy_server.py::test_chat_completion_azure litellm/tests/test_proxy_server.py::test_chat_completion_optional_params litellm/tests/test_proxy_server.py::test_embedding litellm/tests/test_proxy_server.py::test_engines_model_chat_completions litellm/tests/test_proxy_server.py::test_health litellm/tests/test_proxy_server.py::test_img_gen litellm/tests/test_proxy_server.py::test_openai_deployments_model_chat_completions_azure .../site-packages/httpx/_client.py:680: DeprecationWarning: The 'app' shortcut is now deprecated. Use the explicit style 'transport=WSGITransport(app=...)' instead. warnings.warn(message, DeprecationWarning) ... ``` Fixing this requires updating starlette, but the version of FastAPI in use prevents that. So I updated FastAPI to update starlette to fix the httpx warnings. When run in combination with the changes in GH-3600, the tests pass and only emit 1 warning! ```shell $ env -i PATH=$PATH poetry run pytest litellm/tests/test_proxy_server.py ====================================== test session starts ====================================== platform darwin -- Python 3.12.3, pytest-7.4.4, pluggy-1.5.0 rootdir: /Users/abramowi/Code/OpenSource/litellm plugins: anyio-4.3.0, mock-3.14.0 collected 12 items litellm/tests/test_proxy_server.py s..........s [100%] ======================================= warnings summary ======================================== litellm/utils.py:43 /Users/abramowi/Code/OpenSource/litellm/litellm/utils.py:43: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html import pkg_resources # type: ignore -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== 10 passed, 2 skipped, 1 warning in 8.81s ============================ ```
2024-05-12 12:17:21 -07:00
fastapi = {version = "^0.111.0", optional = true}
2023-11-30 16:23:34 -07:00
backoff = {version = "*", optional = true}
pyyaml = {version = "^6.0.1", optional = true}
2023-11-30 16:23:34 -07:00
rq = {version = "*", optional = true}
2023-12-28 12:59:27 +05:30
orjson = {version = "^3.9.7", optional = true}
apscheduler = {version = "^3.10.4", optional = true}
fastapi-sso = { version = "^0.10.0", optional = true }
PyJWT = { version = "^2.8.0", optional = true }
python-multipart = { version = "^0.0.9", optional = true}
cryptography = {version = "^42.0.5", optional = true}
2024-03-23 17:32:57 +02:00
prisma = {version = "0.11.0", optional = true}
azure-identity = {version = "^1.15.0", optional = true}
azure-keyvault-secrets = {version = "^4.8.0", optional = true}
google-cloud-kms = {version = "^2.21.3", optional = true}
resend = {version = "^0.8.0", optional = true}
2024-07-06 15:30:27 -07:00
pynacl = {version = "^1.5.0", optional = true}
2023-11-30 16:23:34 -07:00
[tool.poetry.extras]
proxy = [
2024-01-10 17:47:24 +05:30
"gunicorn",
2023-11-30 16:23:34 -07:00
"uvicorn",
"fastapi",
"backoff",
"pyyaml",
2023-11-30 19:50:47 -08:00
"rq",
"orjson",
"apscheduler",
"fastapi-sso",
"PyJWT",
"python-multipart",
"cryptography"
2024-01-01 09:23:34 +05:30
]
2023-12-01 19:36:06 -08:00
extra_proxy = [
"prisma",
"azure-identity",
"azure-keyvault-secrets",
"google-cloud-kms",
"resend",
"pynacl"
2023-12-01 19:36:06 -08:00
]
[tool.isort]
profile = "black"
2023-09-26 13:30:35 -07:00
[tool.poetry.scripts]
litellm = 'litellm:run_server'
2023-12-22 08:14:54 +01:00
[tool.poetry.group.dev.dependencies]
flake8 = "^6.1.0"
2023-12-22 08:38:19 +01:00
black = "^23.12.0"
2024-06-11 14:43:32 -07:00
mypy = "^1.0"
2023-12-22 09:25:57 +01:00
pytest = "^7.4.3"
pytest-mock = "^3.12.0"
2023-12-22 08:14:54 +01:00
[build-system]
requires = ["poetry-core", "wheel"]
build-backend = "poetry.core.masonry.api"
2023-10-05 22:15:23 -07:00
[tool.commitizen]
2024-08-23 18:30:29 -07:00
version = "1.44.5"
version_files = [
"pyproject.toml:^version"
]
2023-10-05 22:15:23 -07:00
[tool.mypy]
plugins = "pydantic.mypy"